public class TREXGrammarReader extends TREXBaseReader implements XSDatatypeResolver
Modifier and Type | Class and Description |
---|---|
static class |
TREXGrammarReader.StateFactory
creates various State object, which in turn parses grammar.
|
private static class |
TREXGrammarReader.UndefinedDataTypeVocabulary
Dummy DataTypeVocabulary for better error recovery.
|
GrammarReader.BackPatch, GrammarReader.BackwardReferenceMap, GrammarReader.ChainPrefixResolver, GrammarReader.PrefixResolver
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
currentGrammarURI
TREX allows either
(1) the predefined namespace for TREX or
(2) default namespace ""
as its namespace.
|
private boolean |
issueObsoletedXMLSchemaNamespace |
static java.lang.String |
TREXNamespace
Namespace URI of TREX
|
ERR_BAD_COMBINE, ERR_COMBINE_MISSING, ERR_DUPLICATE_DEFINITION, ERR_INTERLEAVED_ANYSTRING, ERR_INTERLEAVED_STRING, ERR_MISSING_CHILD_NAMECLASS, ERR_MORE_THAN_ONE_NAMECLASS, ERR_NONEXISTENT_PARENT_GRAMMAR, ERR_REPEATED_STRING, ERR_SEQUENCED_STRING, ERR_UNDECLARED_PREFIX, ERR_UNDEFINED_PATTERN, ERR_UNKNOWN_DATATYPE_VOCABULARY, grammar, sfactory, targetNamespace, WRN_COMBINE_IGNORED, WRN_OBSOLETED_XMLSCHEMA_NAMSPACE
backwardReference, basePrefixResolver, controller, ERR_BAD_ATTRIBUTE_VALUE, ERR_BAD_TYPE, ERR_CHARACTERS, ERR_CONFLICTING_ATTRIBUTES, ERR_DATATYPE_ALREADY_DEFINED, ERR_DISALLOWED_ATTRIBUTE, ERR_FRAGMENT_IDENTIFIER, ERR_ILLEGAL_FINAL_VALUE, ERR_MALPLACED_ELEMENT, ERR_MISSING_ATTRIBUTE, ERR_MISSING_ATTRIBUTE_2, ERR_MISSING_CHILD_EXPRESSION, ERR_MISSING_CHILD_TYPE, ERR_MISSING_TOPLEVEL, ERR_MORE_THAN_ONE_CHILD_EXPRESSION, ERR_MORE_THAN_ONE_CHILD_TYPE, ERR_RECURSIVE_DATATYPE, ERR_RECURSIVE_INCLUDE, ERR_RUNAWAY_EXPRESSION, ERR_UNDEFINED_DATATYPE, parserFactory, pool, prefixResolver, WRN_DEPRECATED_TYPENAME, WRN_MAYBE_WRONG_NAMESPACE
Constructor and Description |
---|
TREXGrammarReader(GrammarReaderController controller)
easy-to-use constructor.
|
TREXGrammarReader(GrammarReaderController controller,
javax.xml.parsers.SAXParserFactory parserFactory,
ExpressionPool pool)
easy-to-use constructor.
|
TREXGrammarReader(GrammarReaderController controller,
javax.xml.parsers.SAXParserFactory parserFactory,
TREXGrammarReader.StateFactory stateFactory,
ExpressionPool pool)
full constructor
|
Modifier and Type | Method and Description |
---|---|
State |
createExpressionChildState(State parent,
StartTagInfo tag)
this method must be implemented by the derived class to create
language-default expresion state.
|
protected TREXGrammar |
getGrammar() |
protected TREXGrammarReader.StateFactory |
getStateFactory() |
protected boolean |
isGrammarElement(StartTagInfo tag)
checks if given element is that of the grammar elements.
|
protected java.lang.String |
localizeMessage(java.lang.String propertyName,
java.lang.Object[] args)
formats localized message with arguments
|
private java.lang.String |
mapNamespace(java.lang.String namespace)
maps obsoleted XML Schema namespace to the current one.
|
static TREXGrammar |
parse(org.xml.sax.InputSource grammar,
javax.xml.parsers.SAXParserFactory factory,
GrammarReaderController controller)
loads TREX pattern
|
static TREXGrammar |
parse(java.lang.String grammarURL,
javax.xml.parsers.SAXParserFactory factory,
GrammarReaderController controller)
loads TREX pattern
|
org.relaxng.datatype.Datatype |
resolveDatatype(java.lang.String qName)
obtains a named DataType object referenced by a QName.
|
XSDatatypeExp |
resolveXSDatatype(java.lang.String qName) |
void |
wrapUp()
performs final wrap-up.
|
createNameClassChildState, endElement, getResult, getResultAsGrammar, getTargetNamespace, startElement
_parse, addBackPatchJob, addBackPatchJob, combineURI, combineURL, createParserFactory, detectUndefinedOnes, endPrefixMapping, getBackwardCompatibleType, getBaseUri, getCurrentState, getDeclaredLocationOf, getLocator, inputSourceFromLSInput, interceptExpression, isNotation, isUnparsedEntity, iterateInscopeNamespaces, onID, parse, parse, parse, popState, pushState, reportError, reportError, reportError, reportError, reportError, reportError, reportError, reportError, reportWarning, reportWarning, reportWarning, reportWarning, resolveLocation, resolveNamespacePrefix, runBackPatchJob, setDeclaredLocationOf, setDocumentLocator, setLocator, splitQName, startPrefixMapping, switchSource, switchSource, switchSource
characters, endDocument, error, fatalError, getContentHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getParent, getProperty, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setContentHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setParent, setProperty, skippedEntity, startDocument, unparsedEntityDecl, warning
protected java.lang.String currentGrammarURI
public static final java.lang.String TREXNamespace
private boolean issueObsoletedXMLSchemaNamespace
public TREXGrammarReader(GrammarReaderController controller)
public TREXGrammarReader(GrammarReaderController controller, javax.xml.parsers.SAXParserFactory parserFactory, ExpressionPool pool)
public TREXGrammarReader(GrammarReaderController controller, javax.xml.parsers.SAXParserFactory parserFactory, TREXGrammarReader.StateFactory stateFactory, ExpressionPool pool)
public static TREXGrammar parse(java.lang.String grammarURL, javax.xml.parsers.SAXParserFactory factory, GrammarReaderController controller)
public static TREXGrammar parse(org.xml.sax.InputSource grammar, javax.xml.parsers.SAXParserFactory factory, GrammarReaderController controller)
protected java.lang.String localizeMessage(java.lang.String propertyName, java.lang.Object[] args)
GrammarReader
localizeMessage
in class TREXBaseReader
protected TREXGrammar getGrammar()
protected boolean isGrammarElement(StartTagInfo tag)
GrammarReader
isGrammarElement
in class GrammarReader
protected TREXGrammarReader.StateFactory getStateFactory()
private java.lang.String mapNamespace(java.lang.String namespace)
public State createExpressionChildState(State parent, StartTagInfo tag)
GrammarReader
createExpressionChildState
in class TREXBaseReader
public XSDatatypeExp resolveXSDatatype(java.lang.String qName)
resolveXSDatatype
in interface XSDatatypeResolver
qName
- The type of this value varies in the schema language.
In XML Schema, for example, in which QNames are used
to designate datatypes, this parameter will be QName.
In RELAX Core, in which the same syntax is used but
NCName is used to designate datatypes. So this parameter
will be NCName.public org.relaxng.datatype.Datatype resolveDatatype(java.lang.String qName)
public void wrapUp()
TREXBaseReader
This method has to be called after the run-away expression check is done.
wrapUp
in class TREXBaseReader