# Package org.apache.lucene.sandbox.facet

package org.apache.lucene.sandbox.facet
Sandbox faceting - Collectors that compute facets. Facet Ordinals/Ids: Each doc may have different facets and therefore, different facet ordinals. For example a book can have Author, Publish Date, Page Count etc. as facets. The specific value for each of these Facets for a book can be mapped to an ordinal. Facet ordinals may be common across different book documents. FacetCutter: Can interpret Facets of a specific type for a doc type and output all the Facet Ordinals for the type for the doc. Facet Recorders: record data per ordinal. Some recorders may compute aggregations and record per ordinal data aggregated across an index.

See SandboxFacetsExample for examples.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Related Packages
Package
Description
org.apache.lucene.sandbox.facet.cutters
Sandbox faceting: facet cutters, see `FacetCutter` for details.
org.apache.lucene.sandbox.facet.iterators
Sandbox faceting: facet ordinals.
org.apache.lucene.sandbox.facet.labels
Sandbox faceting: facet labels, see `OrdToLabel` for details.
org.apache.lucene.sandbox.facet.recorders
Sandbox faceting: classes that can record per ordinal data E.g.
Classes
Class
Description
ComparableUtils
Collection of static methods to provide most common comparables for sandbox faceting.
ComparableUtils.ByAggregatedValueComparable
Used for `ComparableUtils.byAggregatedValue(org.apache.lucene.sandbox.facet.recorders.CountFacetRecorder, org.apache.lucene.sandbox.facet.recorders.LongAggregationsFacetRecorder, int)` result.
ComparableUtils.ByCountAndLongValueComparable
Used for `ComparableUtils.byCount(CountFacetRecorder, LongValueFacetCutter)` result.
ComparableUtils.ByCountComparable
Used for `ComparableUtils.byCount(org.apache.lucene.sandbox.facet.recorders.CountFacetRecorder)` result.
ComparableUtils.ByLongValueComparable
Used for `ComparableUtils.byLongValue(org.apache.lucene.sandbox.facet.cutters.LongValueFacetCutter)` result.
ComparableUtils.ByOrdinalComparable
Used for `ComparableUtils.byOrdinal()` result.
FacetFieldCollector
`Collector` that brings together `FacetCutter` and `FacetRecorder` to compute facets during collection phase.
FacetFieldCollectorManager<V extends FacetRecorder>
Collector manager for `FacetFieldCollector`.