Class TextLevelRule

java.lang.Object
org.languagetool.rules.Rule
org.languagetool.rules.TextLevelRule
Direct Known Subclasses:
AbstractFillerWordsRule, AbstractStyleRepeatedWordRule, AbstractWordCoherencyRule, EmptyLineRule, GenericUnpairedBracketsRule, LongParagraphRule, MultipleWhitespaceRule, ParagraphRepeatBeginningRule, PunctuationMarkAtParagraphEnd, ReadabilityRule, SentenceWhitespaceRule, UppercaseSentenceStartRule, WhiteSpaceBeforeParagraphEnd, WordRepeatBeginningRule

public abstract class TextLevelRule extends Rule
A rule that considers the complete text, not just one sentence after the other. Useful for rules that check coherency over sentence boundaries etc.
Since:
2.7
  • Constructor Details

    • TextLevelRule

      public TextLevelRule()
      Since:
      3.7
    • TextLevelRule

      public TextLevelRule(ResourceBundle messages)
      Called by rules that require a translation of their messages.
  • Method Details

    • match

      public RuleMatch[] match(List<AnalyzedSentence> sentences, AnnotatedText annotatedText) throws IOException
      Throws:
      IOException
      Since:
      3.9
    • match

      public abstract RuleMatch[] match(List<AnalyzedSentence> sentences) throws IOException
      Deprecated.
      Throws:
      IOException
    • estimateContextForSureMatch

      public int estimateContextForSureMatch()
      Description copied from class: Rule
      A number that estimates how many words there must be after a match before we can be (relatively) sure the match is valid. This is useful for check-as-you-type, where a match might occur and the word that gets typed next makes the match disappear (something one would obviously like to avoid). Note: this may over-estimate the real context size. Returns -1 when the sentence needs to end to be sure there's a match.
      Overrides:
      estimateContextForSureMatch in class Rule
    • match

      public final RuleMatch[] match(AnalyzedSentence sentence) throws IOException
      Description copied from class: Rule
      Check whether the given sentence matches this error rule, i.e. whether it contains the error detected by this rule. Note that the order in which this method is called is not always guaranteed, i.e. the sentence order in the text may be different than the order in which you get the sentences (this may be the case when LanguageTool is used as a LibreOffice/OpenOffice add-on, for example).
      Specified by:
      match in class Rule
      Parameters:
      sentence - a pre-analyzed sentence
      Returns:
      an array of RuleMatch objects
      Throws:
      IOException
    • minToCheckParagraph

      public abstract int minToCheckParagraph()
      Gives back the minimum number of paragraphs to check to give back a correct result. Only used by LO office extension.
      • n == -1 --> need to check full text (use only if really needed / bad performance) examples: AbstractWordCoherencyRule, GenericUnpairedBracketsRule, ...
      • n == 0 --> need only to check the current paragraph examples: MultipleWhitespaceRule, LongParagraphRule, ...
      • n >= 1 --> need only to check n paragraphs around the current paragraph examples: ParagraphRepeatBeginningRule (n == 1), WordRepeatBeginningRule (n == 2), ...