Package org.languagetool.rules.de
Class ProhibitedCompoundRule
- java.lang.Object
-
- org.languagetool.rules.Rule
-
- org.languagetool.rules.de.ProhibitedCompoundRule
-
public class ProhibitedCompoundRule extends org.languagetool.rules.Rule
Find compounds that might be morphologically correct but are still probably wrong, like 'Lehrzeile'.- Since:
- 4.1
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ProhibitedCompoundRule.Pair
-
Field Summary
Fields Modifier and Type Field Description protected com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String>
ahoCorasickDoubleArrayTrie
private static java.util.Set<java.lang.String>
blacklist
private ProhibitedCompoundRule.Pair
confusionPair
private static java.util.List<java.lang.String>
ignoreWords
private org.languagetool.languagemodel.BaseLanguageModel
lm
private static java.util.List<ProhibitedCompoundRule.Pair>
lowercasePairs
protected java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>>
pairMap
private static java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>>
prohibitedCompoundRulePairMap
private static com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String>
prohibitedCompoundRuleSearcher
static java.lang.String
RULE_ID
private static GermanSpellerRule
spellerRule
-
Constructor Summary
Constructors Constructor Description ProhibitedCompoundRule(java.util.ResourceBundle messages, org.languagetool.languagemodel.LanguageModel lm)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
addAllCaseVariants(java.util.List<ProhibitedCompoundRule.Pair> candidatePairs, ProhibitedCompoundRule.Pair lcPair)
protected static void
addItemsFromConfusionSets(java.util.List<ProhibitedCompoundRule.Pair> pairs, java.lang.String confusionSetsFile, boolean isUpperCase)
private static void
addUpperCaseVariants(java.util.List<ProhibitedCompoundRule.Pair> pairs)
java.lang.String
getDescription()
java.lang.String
getId()
org.languagetool.rules.RuleMatch[]
match(org.languagetool.AnalyzedSentence sentence)
void
setConfusionPair(ProhibitedCompoundRule.Pair confusionPair)
ignore automatically loaded pairs and only match using given confusionPair used for evaluation by ProhibitedCompoundRuleEvaluatorprotected static com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String>
setupAhoCorasickSearch(java.util.List<ProhibitedCompoundRule.Pair> pairs, java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>> pairMap)
-
Methods inherited from class org.languagetool.rules.Rule
addExamplePair, estimateContextForSureMatch, getAntiPatterns, getCategory, getConfigureText, getCorrectExamples, getDefaultValue, getErrorTriggeringExamples, getIncorrectExamples, getLocQualityIssueType, getMaxConfigurableValue, getMinConfigurableValue, getSentenceWithImmunization, getUrl, hasConfigurableValue, isDefaultOff, isDefaultTempOff, isDictionaryBasedSpellingRule, isOfficeDefaultOff, isOfficeDefaultOn, makeAntiPatterns, setCategory, setCorrectExamples, setDefaultOff, setDefaultOn, setDefaultTempOff, setErrorTriggeringExamples, setIncorrectExamples, setLocQualityIssueType, setOfficeDefaultOff, setOfficeDefaultOn, setUrl, supportsLanguage, toRuleMatchArray, useInOffice
-
-
-
-
Field Detail
-
RULE_ID
public static final java.lang.String RULE_ID
- Since:
- 4.3
- See Also:
- Constant Field Values
-
lowercasePairs
private static final java.util.List<ProhibitedCompoundRule.Pair> lowercasePairs
-
spellerRule
private static final GermanSpellerRule spellerRule
-
ignoreWords
private static final java.util.List<java.lang.String> ignoreWords
-
blacklist
private static final java.util.Set<java.lang.String> blacklist
-
ahoCorasickDoubleArrayTrie
protected com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String> ahoCorasickDoubleArrayTrie
-
pairMap
protected java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>> pairMap
-
prohibitedCompoundRuleSearcher
private static final com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String> prohibitedCompoundRuleSearcher
-
prohibitedCompoundRulePairMap
private static final java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>> prohibitedCompoundRulePairMap
-
lm
private final org.languagetool.languagemodel.BaseLanguageModel lm
-
confusionPair
private ProhibitedCompoundRule.Pair confusionPair
-
-
Method Detail
-
addAllCaseVariants
private static void addAllCaseVariants(java.util.List<ProhibitedCompoundRule.Pair> candidatePairs, ProhibitedCompoundRule.Pair lcPair)
-
addUpperCaseVariants
private static void addUpperCaseVariants(java.util.List<ProhibitedCompoundRule.Pair> pairs)
-
addItemsFromConfusionSets
protected static void addItemsFromConfusionSets(java.util.List<ProhibitedCompoundRule.Pair> pairs, java.lang.String confusionSetsFile, boolean isUpperCase)
-
setupAhoCorasickSearch
protected static com.hankcs.algorithm.AhoCorasickDoubleArrayTrie<java.lang.String> setupAhoCorasickSearch(java.util.List<ProhibitedCompoundRule.Pair> pairs, java.util.Map<java.lang.String,java.util.List<ProhibitedCompoundRule.Pair>> pairMap)
-
getId
public java.lang.String getId()
- Specified by:
getId
in classorg.languagetool.rules.Rule
-
getDescription
public java.lang.String getDescription()
- Specified by:
getDescription
in classorg.languagetool.rules.Rule
-
match
public org.languagetool.rules.RuleMatch[] match(org.languagetool.AnalyzedSentence sentence) throws java.io.IOException
- Specified by:
match
in classorg.languagetool.rules.Rule
- Throws:
java.io.IOException
-
setConfusionPair
public void setConfusionPair(ProhibitedCompoundRule.Pair confusionPair)
ignore automatically loaded pairs and only match using given confusionPair used for evaluation by ProhibitedCompoundRuleEvaluator- Parameters:
confusionPair
- pair to evaluate, parts are assumed to be lowercase / null to reset
-
-