org.apache.lucene.analysis.synonym

Class SynonymGraphFilterFactory

  • All Implemented Interfaces:
    ResourceLoaderAware


    public class SynonymGraphFilterFactory
    extends TokenFilterFactory
    implements ResourceLoaderAware
    Factory for SynonymGraphFilter.
     <fieldType name="text_synonym" class="solr.TextField" positionIncrementGap="100">
       <analyzer>
         <tokenizer class="solr.WhitespaceTokenizerFactory"/>
         <filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt" 
                 format="solr" ignoreCase="false" expand="true" 
                 tokenizerFactory="solr.WhitespaceTokenizerFactory"
                 [optional tokenizer factory parameters]/>
       </analyzer>
     </fieldType>

    An optional param name prefix of "tokenizerFactory." may be used for any init params that the SynonymGraphFilterFactory needs to pass to the specified TokenizerFactory. If the TokenizerFactory expects an init parameters with the same name as an init param used by the SynonymGraphFilterFactory, the prefix is mandatory.

    The optional format parameter controls how the synonyms will be parsed: It supports the short names of solr for SolrSynonymParser and wordnet for and WordnetSynonymParser, or your own SynonymMap.Parser class name. The default is solr. A custom SynonymMap.Parser is expected to have a constructor taking:

    • boolean dedup - true if duplicates should be ignored, false otherwise
    • boolean expand - true if conflation groups should be expanded, false if they are one-directional
    • Analyzer analyzer - an analyzer used for each raw synonym
    See Also:
    SolrSynonymParser: default format