public class SynonymGraphFilterFactory extends TokenFilterFactory implements ResourceLoaderAware
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 otherwiseboolean expand
- true if conflation groups should be expanded, false if they are one-directionalAnalyzer
analyzer
- an analyzer used for each raw synonymSolrSynonymParser: default format
Modifier and Type | Field and Description |
---|---|
static String |
NAME
SPI name
|
LUCENE_MATCH_VERSION_PARAM, luceneMatchVersion
Constructor and Description |
---|
SynonymGraphFilterFactory(Map<String,String> args) |
Modifier and Type | Method and Description |
---|---|
TokenStream |
create(TokenStream input)
Transform the specified input TokenStream
|
void |
inform(ResourceLoader loader)
Initializes this component with the provided ResourceLoader
(used for loading classes, files, etc).
|
protected SynonymMap |
loadSynonyms(ResourceLoader loader,
String cname,
boolean dedup,
Analyzer analyzer)
Load synonyms with the given
SynonymMap.Parser class. |
availableTokenFilters, findSPIName, forName, lookupClass, normalize, reloadTokenFilters
get, get, get, get, get, getBoolean, getChar, getClassArg, getFloat, getInt, getLines, getLuceneMatchVersion, getOriginalArgs, getPattern, getSet, getSnowballWordSet, getWordSet, isExplicitLuceneMatchVersion, require, require, require, requireBoolean, requireChar, requireFloat, requireInt, setExplicitLuceneMatchVersion, splitAt, splitFileNames
public static final String NAME
public TokenStream create(TokenStream input)
TokenFilterFactory
create
in class TokenFilterFactory
public void inform(ResourceLoader loader) throws IOException
ResourceLoaderAware
inform
in interface ResourceLoaderAware
IOException
protected SynonymMap loadSynonyms(ResourceLoader loader, String cname, boolean dedup, Analyzer analyzer) throws IOException, ParseException
SynonymMap.Parser
class.IOException
ParseException
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.