Package org.apache.lucene.analysis.path
Class PathHierarchyTokenizerFactory
- java.lang.Object
-
- org.apache.lucene.analysis.util.AbstractAnalysisFactory
-
- org.apache.lucene.analysis.util.TokenizerFactory
-
- org.apache.lucene.analysis.path.PathHierarchyTokenizerFactory
-
public class PathHierarchyTokenizerFactory extends TokenizerFactory
Factory forPathHierarchyTokenizer
.This factory is typically configured for use only in the
index
Analyzer (or only in thequery
Analyzer, but never both).For example, in the configuration below a query for
Books/NonFic
will match documents indexed with values likeBooks/NonFic
,Books/NonFic/Law
,Books/NonFic/Science/Physics
, etc. But it will not match documents indexed with values likeBooks
, orBooks/Fic
...<fieldType name="descendent_path" class="solr.TextField"> <analyzer type="index"> <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" /> </analyzer> <analyzer type="query"> <tokenizer class="solr.KeywordTokenizerFactory" /> </analyzer> </fieldType>
In this example however we see the oposite configuration, so that a query for
Books/NonFic/Science/Physics
would match documents containingBooks/NonFic
,Books/NonFic/Science
, orBooks/NonFic/Science/Physics
, but notBooks/NonFic/Science/Physics/Theory
orBooks/NonFic/Law
.<fieldType name="descendent_path" class="solr.TextField"> <analyzer type="index"> <tokenizer class="solr.KeywordTokenizerFactory" /> </analyzer> <analyzer type="query"> <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" /> </analyzer> </fieldType>
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.analysis.util.AbstractAnalysisFactory
LUCENE_MATCH_VERSION_PARAM
-
-
Constructor Summary
Constructors Constructor Description PathHierarchyTokenizerFactory(java.util.Map<java.lang.String,java.lang.String> args)
Creates a new PathHierarchyTokenizerFactory
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Tokenizer
create(AttributeSource.AttributeFactory factory, java.io.Reader input)
Creates a TokenStream of the specified input using the given AttributeFactory-
Methods inherited from class org.apache.lucene.analysis.util.TokenizerFactory
availableTokenizers, create, forName, lookupClass, reloadTokenizers
-
Methods inherited from class org.apache.lucene.analysis.util.AbstractAnalysisFactory
get, get, get, get, get, getChar, getClassArg, getLuceneMatchVersion, getOriginalArgs, getSet, isExplicitLuceneMatchVersion, require, require, require, requireChar, setExplicitLuceneMatchVersion
-
-
-
-
Method Detail
-
create
public Tokenizer create(AttributeSource.AttributeFactory factory, java.io.Reader input)
Description copied from class:TokenizerFactory
Creates a TokenStream of the specified input using the given AttributeFactory- Specified by:
create
in classTokenizerFactory
-
-