--- /dev/null
+<html>
+<head>
+<title>Enhanced category features</title>
+</head>
+<body>
+<h1>Enhanced category features</h1>
+
+Mechanisms for addition of enhanced category features.
+<p>A {@link org.apache.lucene.facet.enhancements.CategoryEnhancement CategoryEnhancement}
+(which can correspond to a
+{@link org.apache.lucene.facet.index.attributes.CategoryProperty CategoryProperty})
+can contribute to the index in two possible ways:
+<ol>
+ <li>To each category with data relevant to the enhancement,
+ add this data to the category's token payload, through
+ {@link org.apache.lucene.facet.enhancements.CategoryEnhancement#getCategoryTokenBytes(CategoryAttribute) CategoryEnhancement.getCategoryTokenBytes()}.
+ This data will be read during search using
+ {@link org.apache.lucene.facet.enhancements.CategoryEnhancement#extractCategoryTokenData(byte[], int, int) CategoryEnhancement.extractCategoryTokenData()}.
+ </li>
+ <li>To each document which contains categories with data relevant to the enhancement, add a
+ {@link org.apache.lucene.facet.index.streaming.CategoryListTokenizer CategoryListTokenizer} through
+ {@link org.apache.lucene.facet.enhancements.CategoryEnhancement#getCategoryListTokenizer CategoryEnhancement.getCategoryListTokenizer()} .
+ The
+ {@link org.apache.lucene.facet.index.streaming.CategoryListTokenizer CategoryListTokenizer}
+ should add a single token which includes all the enhancement relevant data from the categories.
+ The category list token's text is defined by
+ {@link org.apache.lucene.facet.enhancements.CategoryEnhancement#getCategoryListTermText() CategoryEnhancement.getCategoryListTermText()}.
+ </li>
+</ol>
+
+</body>
+</html>