Package org.languagetool.rules.patterns
Class PatternRuleHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- org.languagetool.rules.patterns.XMLRuleHandler
-
- org.languagetool.rules.patterns.PatternRuleHandler
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler
,org.xml.sax.DTDHandler
,org.xml.sax.EntityResolver
,org.xml.sax.ErrorHandler
- Direct Known Subclasses:
BitextPatternRuleHandler
public class PatternRuleHandler extends XMLRuleHandler
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.languagetool.rules.patterns.XMLRuleHandler
XMLRuleHandler.RegexpMode
-
-
Field Summary
Fields Modifier and Type Field Description private int
antiPatternCounter
protected Category
category
protected java.lang.String
categoryIssueType
private boolean
defaultOff
private boolean
defaultTempOff
private int
endPos
private static java.lang.String
EXTERNAL
protected java.lang.String
filterArgs
protected java.lang.String
filterClassName
private java.lang.String
idPrefix
private boolean
inAntiPattern
private boolean
inRule
private boolean
interpretPosTagsPreDisambiguation
(package private) static java.lang.String
MARKER_TAG
protected java.lang.String
name
(package private) static java.lang.String
PLEASE_SPELL_ME
(package private) static java.lang.String
RAW_TAG
private boolean
relaxedMode
private java.util.List<DisambiguationPatternRule>
ruleAntiPatterns
private java.util.List<DisambiguationPatternRule>
rulegroupAntiPatterns
private boolean
ruleGroupDefaultOff
private boolean
ruleGroupDefaultTempOff
private java.lang.String
ruleGroupDescription
protected java.lang.String
ruleGroupIssueType
protected java.lang.String
ruleIssueType
protected java.lang.String
sourceFile
private int
startPos
private int
subId
private int
tokenCountForMarker
static java.lang.String
TYPE
-
Fields inherited from class org.languagetool.rules.patterns.XMLRuleHandler
AND, andGroupCounter, ANTIPATTERN, CASE_SENSITIVE, caseSensitive, chunkTag, CHUNKTAG, correctExample, correctExamples, DEFAULT, elements, endPositionCorrection, equivalenceFeatures, errorTriggerExample, errorTriggeringExamples, EXAMPLE, exampleCorrection, EXCEPTION, exceptionLevelCaseSensitive, exceptionLevelCaseSet, exceptionPosNegation, exceptionPosRegExp, exceptionPosToken, exceptions, exceptionSet, exceptionSpaceBefore, exceptionSpaceBeforeSet, exceptionStringInflected, exceptionStringNegation, exceptionStringRegExp, exceptionValidNext, exceptionValidPrev, FEATURE, id, ID, IGNORE, inAndGroup, incorrectExample, inCorrectExample, incorrectExamples, inErrorTriggerExample, inException, INFLECTED, inIncorrectExample, inMarker, inMatch, inMessage, inOrGroup, inPattern, inPhrases, inRegex, inRuleGroup, inShortMessage, inShortMessageForRuleGroup, inSuggestion, inToken, inUnification, inUnificationDef, inUnificationNeutral, inUrl, inUrlForRuleGroup, language, lastPhrase, MARK, MARKER, match, MATCH, MAX, maxOccurrence, message, MESSAGE, MIN, minOccurrence, NAME, NEGATE, NEGATE_POS, NO, OFF, ON, OR, orGroupCounter, PATTERN, patternToken, patternTokens, phraseId, phraseIdRef, phraseMap, phrasePatternTokens, PHRASES, pLocator, posNegation, posRegExp, POSTAG, POSTAG_REGEXP, posToken, regex, regexCaseSensitive, regexMode, REGEXP, regexpMark, regExpression, RULE, RULEGROUP, ruleGroupId, rules, RULES, SCOPE, shortMessage, shortMessageForRuleGroup, SKIP, skipPos, SPACEBEFORE, startPositionCorrection, SUGGESTION, suggestionMatches, suggestionMatchesOutMsg, suggestionsOutMsg, TABNAME, TEMP_OFF, TOKEN, tokenCounter, tokenInflected, tokenLevelCaseSensitive, tokenLevelCaseSet, tokenNegated, tokenReference, tokenSpaceBefore, tokenSpaceBeforeSet, uFeature, UNIFICATION, UNIFY, UNIFY_IGNORE, uniNegation, url, urlForRuleGroup, uType, uTypeList, YES
-
-
Constructor Summary
Constructors Constructor Description PatternRuleHandler()
PatternRuleHandler(java.lang.String sourceFile)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
characters(char[] buf, int offset, int len)
private void
createRules(java.util.List<PatternToken> elemList, java.util.List<PatternToken> tmpPatternTokens, int numElement)
Create rule from an Element list.void
endElement(java.lang.String namespaceURI, java.lang.String sName, java.lang.String qName)
protected void
prepareRule(AbstractPatternRule rule)
(package private) java.lang.String
replaceSpacesInRegex(java.lang.String s)
(package private) void
setRelaxedMode(boolean relaxedMode)
If set to true, don't throw an exception if id or name is not set.void
startElement(java.lang.String namespaceURI, java.lang.String lName, java.lang.String qName, org.xml.sax.Attributes attrs)
-
Methods inherited from class org.languagetool.rules.patterns.XMLRuleHandler
addLegacyMatches, error, finalizeExceptions, finalizePhrase, finalizeTokens, getRules, preparePhrase, processElement, resetException, resetToken, setDocumentLocator, setExceptions, setMatchElement, setRuleFilter, setToken, startPattern, warning
-
-
-
-
Field Detail
-
TYPE
public static final java.lang.String TYPE
- See Also:
- Constant Field Values
-
MARKER_TAG
static final java.lang.String MARKER_TAG
- See Also:
- Constant Field Values
-
RAW_TAG
static final java.lang.String RAW_TAG
- See Also:
- Constant Field Values
-
PLEASE_SPELL_ME
static final java.lang.String PLEASE_SPELL_ME
- See Also:
- Constant Field Values
-
EXTERNAL
private static final java.lang.String EXTERNAL
- See Also:
- Constant Field Values
-
sourceFile
protected final java.lang.String sourceFile
-
category
protected Category category
-
categoryIssueType
protected java.lang.String categoryIssueType
-
ruleGroupIssueType
protected java.lang.String ruleGroupIssueType
-
ruleIssueType
protected java.lang.String ruleIssueType
-
name
protected java.lang.String name
-
filterClassName
protected java.lang.String filterClassName
-
filterArgs
protected java.lang.String filterArgs
-
rulegroupAntiPatterns
private final java.util.List<DisambiguationPatternRule> rulegroupAntiPatterns
-
ruleAntiPatterns
private final java.util.List<DisambiguationPatternRule> ruleAntiPatterns
-
subId
private int subId
-
interpretPosTagsPreDisambiguation
private boolean interpretPosTagsPreDisambiguation
-
defaultOff
private boolean defaultOff
-
defaultTempOff
private boolean defaultTempOff
-
ruleGroupDefaultOff
private boolean ruleGroupDefaultOff
-
ruleGroupDefaultTempOff
private boolean ruleGroupDefaultTempOff
-
ruleGroupDescription
private java.lang.String ruleGroupDescription
-
startPos
private int startPos
-
endPos
private int endPos
-
tokenCountForMarker
private int tokenCountForMarker
-
antiPatternCounter
private int antiPatternCounter
-
inRule
private boolean inRule
-
relaxedMode
private boolean relaxedMode
-
inAntiPattern
private boolean inAntiPattern
-
idPrefix
private java.lang.String idPrefix
-
-
Method Detail
-
setRelaxedMode
void setRelaxedMode(boolean relaxedMode)
If set to true, don't throw an exception if id or name is not set. Used for online rule editor.- Since:
- 2.1
-
startElement
public void startElement(java.lang.String namespaceURI, java.lang.String lName, java.lang.String qName, org.xml.sax.Attributes attrs) throws org.xml.sax.SAXException
- Specified by:
startElement
in interfaceorg.xml.sax.ContentHandler
- Overrides:
startElement
in classorg.xml.sax.helpers.DefaultHandler
- Throws:
org.xml.sax.SAXException
-
endElement
public void endElement(java.lang.String namespaceURI, java.lang.String sName, java.lang.String qName) throws org.xml.sax.SAXException
- Specified by:
endElement
in interfaceorg.xml.sax.ContentHandler
- Overrides:
endElement
in classorg.xml.sax.helpers.DefaultHandler
- Throws:
org.xml.sax.SAXException
-
createRules
private void createRules(java.util.List<PatternToken> elemList, java.util.List<PatternToken> tmpPatternTokens, int numElement)
Create rule from an Element list. In case of OR groups, several rules are created recursively.- Parameters:
elemList
- The complete original Element listtmpPatternTokens
- Temporary list being creatednumElement
- Index of elemList being analyzed- Since:
- 2.3
-
replaceSpacesInRegex
java.lang.String replaceSpacesInRegex(java.lang.String s)
-
prepareRule
protected void prepareRule(AbstractPatternRule rule)
-
characters
public void characters(char[] buf, int offset, int len)
- Specified by:
characters
in interfaceorg.xml.sax.ContentHandler
- Overrides:
characters
in classorg.xml.sax.helpers.DefaultHandler
-
-