Package org.apache.solr.spelling
Class WordBreakSolrSpellChecker
- java.lang.Object
-
- org.apache.solr.spelling.SolrSpellChecker
-
- org.apache.solr.spelling.WordBreakSolrSpellChecker
-
public class WordBreakSolrSpellChecker extends SolrSpellChecker
A spellchecker that breaks and combines words.This will not combine adjacent tokens that do not have the same required status (prohibited, required, optional). However, this feature depends on incoming term flags being properly set. (
QueryConverter.PROHIBITED_TERM_FLAG,QueryConverter.REQUIRED_TERM_FLAG,QueryConverter.TERM_IN_BOOLEAN_QUERY_FLAG, andQueryConverter.TERM_PRECEDES_NEW_BOOLEAN_OPERATOR_FLAG) This feature breaks completely if the upstream analyzer or query converter sets flags with the same values but different meanings. The default query converter (if not using "spellcheck.q") isSpellingQueryConverter, which properly sets these flags.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classWordBreakSolrSpellChecker.BreakSuggestionTieBreakerSpecify a value on the "breakSuggestionTieBreaker" parameter.
-
Field Summary
Fields Modifier and Type Field Description static StringPARAM_BREAK_SUGGESTION_TIE_BREAKERSeeWordBreakSolrSpellChecker.BreakSuggestionTieBreakerfor options.static StringPARAM_BREAK_WORDSTry to break words into multiples? [true|false]static StringPARAM_COMBINE_WORDSTry to combine multiple words into one? [true|false]static StringPARAM_MAX_CHANGESSeeWordBreakSpellChecker.setMaxChanges(int)static StringPARAM_MAX_COMBINE_WORD_LENGTHSeeWordBreakSpellChecker.setMaxCombineWordLength(int)static StringPARAM_MAX_EVALUATIONSSeeWordBreakSpellChecker.setMaxEvaluations(int)static StringPARAM_MIN_BREAK_WORD_LENGTHSeeWordBreakSpellChecker.setMinBreakWordLength(int)static StringPARAM_MIN_SUGGESTION_FREQUENCYSeeWordBreakSpellChecker.setMinSuggestionFrequency(int)-
Fields inherited from class org.apache.solr.spelling.SolrSpellChecker
analyzer, DEFAULT_DICTIONARY_NAME, DICTIONARY_NAME, field, FIELD, FIELD_TYPE, fieldTypeName, name
-
-
Constructor Summary
Constructors Constructor Description WordBreakSolrSpellChecker()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbuild(SolrCore core, SolrIndexSearcher searcher)(re)Builds the spelling index.SpellingResultgetSuggestions(SpellingOptions options)Get suggestions for the given query.Stringinit(org.apache.solr.common.util.NamedList<?> config, SolrCore core)booleanisSuggestionsMayOverlap()voidreload(SolrCore core, SolrIndexSearcher searcher)Reloads the index.-
Methods inherited from class org.apache.solr.spelling.SolrSpellChecker
getAccuracy, getDictionaryName, getQueryAnalyzer, getStringDistance, mergeSuggestions, modifyRequest
-
-
-
-
Field Detail
-
PARAM_COMBINE_WORDS
public static final String PARAM_COMBINE_WORDS
Try to combine multiple words into one? [true|false]- See Also:
- Constant Field Values
-
PARAM_BREAK_WORDS
public static final String PARAM_BREAK_WORDS
Try to break words into multiples? [true|false]- See Also:
- Constant Field Values
-
PARAM_MAX_CHANGES
public static final String PARAM_MAX_CHANGES
SeeWordBreakSpellChecker.setMaxChanges(int)- See Also:
- Constant Field Values
-
PARAM_MAX_COMBINE_WORD_LENGTH
public static final String PARAM_MAX_COMBINE_WORD_LENGTH
SeeWordBreakSpellChecker.setMaxCombineWordLength(int)- See Also:
- Constant Field Values
-
PARAM_MIN_BREAK_WORD_LENGTH
public static final String PARAM_MIN_BREAK_WORD_LENGTH
SeeWordBreakSpellChecker.setMinBreakWordLength(int)- See Also:
- Constant Field Values
-
PARAM_BREAK_SUGGESTION_TIE_BREAKER
public static final String PARAM_BREAK_SUGGESTION_TIE_BREAKER
SeeWordBreakSolrSpellChecker.BreakSuggestionTieBreakerfor options.- See Also:
- Constant Field Values
-
PARAM_MAX_EVALUATIONS
public static final String PARAM_MAX_EVALUATIONS
SeeWordBreakSpellChecker.setMaxEvaluations(int)- See Also:
- Constant Field Values
-
PARAM_MIN_SUGGESTION_FREQUENCY
public static final String PARAM_MIN_SUGGESTION_FREQUENCY
SeeWordBreakSpellChecker.setMinSuggestionFrequency(int)- See Also:
- Constant Field Values
-
-
Method Detail
-
init
public String init(org.apache.solr.common.util.NamedList<?> config, SolrCore core)
- Overrides:
initin classSolrSpellChecker
-
getSuggestions
public SpellingResult getSuggestions(SpellingOptions options) throws IOException
Description copied from class:SolrSpellCheckerGet suggestions for the given query. Tokenizes the query using a field appropriate Analyzer. TheSpellingResult.getSuggestions()suggestions must be ordered by best suggestion first.- Specified by:
getSuggestionsin classSolrSpellChecker- Parameters:
options- TheSpellingOptionsto use- Returns:
- The
SpellingResultsuggestions - Throws:
IOException- if there is an error producing suggestions
-
build
public void build(SolrCore core, SolrIndexSearcher searcher)
Description copied from class:SolrSpellChecker(re)Builds the spelling index. May be a NOOP if the implementation doesn't require building, or can't be rebuilt.- Specified by:
buildin classSolrSpellChecker
-
reload
public void reload(SolrCore core, SolrIndexSearcher searcher) throws IOException
Description copied from class:SolrSpellCheckerReloads the index. Useful if an external process is responsible for building the spell checker.- Specified by:
reloadin classSolrSpellChecker- Throws:
IOException- If there is a low-level I/O error.
-
isSuggestionsMayOverlap
public boolean isSuggestionsMayOverlap()
- Overrides:
isSuggestionsMayOverlapin classSolrSpellChecker
-
-