Class SubjectVerbAgreementRule
java.lang.Object
org.languagetool.rules.Rule
org.languagetool.rules.de.SubjectVerbAgreementRule
public class SubjectVerbAgreementRule
extends org.languagetool.rules.Rule
Check subject verb agreement for verb forms "ist", "sind", "war" and "waren".
For example, it detects the errors in:
- Das Auto sind schnell.
- Das Auto waren schnell.
- Die Autos ist schnell.
- Die Katze und der Hund ist schön.
- Since:
- 2.9
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Germanprivate static final org.languagetool.chunking.ChunkTagprivate static final org.languagetool.chunking.ChunkTagprivate static final List<SubjectVerbAgreementRule.SingularPluralPair> private static final org.languagetool.chunking.ChunkTagprivate final GermanTaggerFields inherited from class org.languagetool.rules.Rule
messages -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate booleancontainsOnlyInfinitivesToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) private booleancontainsRegexToTheLeft(String regex, org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) intList<org.languagetool.tagging.disambiguation.rules.DisambiguationPatternRule> getId()private StringgetPluralFor(String token) private @Nullable org.languagetool.rules.RuleMatchgetPluralMatchOrNull(org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings token, String tokenStr, org.languagetool.AnalyzedSentence sentence) private StringgetSingularFor(String token) private @Nullable org.languagetool.rules.RuleMatchgetSingularMatchOrNull(org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings token, String tokenStr, org.languagetool.AnalyzedSentence sentence) getUrl()private booleanhasQuestionPronounToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) private booleanhasUnknownTokenAt(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos, int endPos) private booleanhasUnknownTokenToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) private booleanhasUnknownTokenToTheRight(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) private booleanhasVerbToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) private booleanisCurrency(org.languagetool.AnalyzedTokenReadings token) (package private) booleanisFollowedByNominativePlural(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) org.languagetool.rules.RuleMatch[]match(org.languagetool.AnalyzedSentence sentence) (package private) booleanprevChunkIsNominative(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) Methods inherited from class org.languagetool.rules.Rule
addExamplePair, getCategory, getConfigureText, getCorrectExamples, getDefaultValue, getErrorTriggeringExamples, getIncorrectExamples, getLocQualityIssueType, getMaxConfigurableValue, getMinConfigurableValue, getSentenceWithImmunization, hasConfigurableValue, isDefaultOff, isDefaultTempOff, isDictionaryBasedSpellingRule, isOfficeDefaultOff, isOfficeDefaultOn, makeAntiPatterns, setCategory, setCorrectExamples, setDefaultOff, setDefaultOn, setDefaultTempOff, setErrorTriggeringExamples, setIncorrectExamples, setLocQualityIssueType, setOfficeDefaultOff, setOfficeDefaultOn, setUrl, supportsLanguage, toRuleMatchArray, useInOffice
-
Field Details
-
NPS
private static final org.languagetool.chunking.ChunkTag NPS -
NPP
private static final org.languagetool.chunking.ChunkTag NPP -
PP
private static final org.languagetool.chunking.ChunkTag PP -
QUESTION_PRONOUNS
-
CURRENCIES
-
PAIRS
-
singular
-
plural
-
ANTI_PATTERNS
-
tagger
-
language
-
-
Constructor Details
-
SubjectVerbAgreementRule
-
-
Method Details
-
getId
- Specified by:
getIdin classorg.languagetool.rules.Rule
-
getDescription
- Specified by:
getDescriptionin classorg.languagetool.rules.Rule
-
estimateContextForSureMatch
public int estimateContextForSureMatch()- Overrides:
estimateContextForSureMatchin classorg.languagetool.rules.Rule
-
getAntiPatterns
public List<org.languagetool.tagging.disambiguation.rules.DisambiguationPatternRule> getAntiPatterns()- Overrides:
getAntiPatternsin classorg.languagetool.rules.Rule
-
getUrl
- Overrides:
getUrlin classorg.languagetool.rules.Rule
-
match
public org.languagetool.rules.RuleMatch[] match(org.languagetool.AnalyzedSentence sentence) throws IOException - Specified by:
matchin classorg.languagetool.rules.Rule- Throws:
IOException
-
getSingularMatchOrNull
@Nullable private @Nullable org.languagetool.rules.RuleMatch getSingularMatchOrNull(org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings token, String tokenStr, org.languagetool.AnalyzedSentence sentence) throws IOException - Throws:
IOException
-
getPluralMatchOrNull
@Nullable private @Nullable org.languagetool.rules.RuleMatch getPluralMatchOrNull(org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings token, String tokenStr, org.languagetool.AnalyzedSentence sentence) -
isCurrency
private boolean isCurrency(org.languagetool.AnalyzedTokenReadings token) -
prevChunkIsNominative
boolean prevChunkIsNominative(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
hasUnknownTokenToTheLeft
private boolean hasUnknownTokenToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
hasUnknownTokenToTheRight
private boolean hasUnknownTokenToTheRight(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
hasUnknownTokenAt
private boolean hasUnknownTokenAt(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos, int endPos) -
hasQuestionPronounToTheLeft
private boolean hasQuestionPronounToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
hasVerbToTheLeft
private boolean hasVerbToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
containsRegexToTheLeft
private boolean containsRegexToTheLeft(String regex, org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
containsOnlyInfinitivesToTheLeft
private boolean containsOnlyInfinitivesToTheLeft(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) throws IOException - Throws:
IOException
-
isFollowedByNominativePlural
boolean isFollowedByNominativePlural(org.languagetool.AnalyzedTokenReadings[] tokens, int startPos) -
getSingularFor
-
getPluralFor
-