Top Description Inners Fields Constructors Methods
com.sun.msv.reader.trex.ng

public Class RELAXNGReader

extends TREXBaseReader
Class Inheritance
Known Direct Subclasses
com.sun.msv.reader.trex.ng.comp.RELAXNGCompReader
Imports
java.text.MessageFormat, java.util.Iterator, .Map, .ResourceBundle, .Set, .Stack, .Vector, javax.xml.parsers.SAXParserFactory, org.iso_relax.verifier.Schema, org.relaxng.datatype.Datatype, .DatatypeException, .DatatypeLibrary, .DatatypeLibraryFactory, org.xml.sax.Attributes, .InputSource, .Locator, .SAXException, com.sun.msv.datatype.ErrorDatatypeLibrary, com.sun.msv.grammar.Expression, .ExpressionPool, .ReferenceExp, com.sun.msv.grammar.trex.TREXGrammar, com.sun.msv.reader.ChoiceState, .GrammarReaderController, .State, .TerminalState, com.sun.msv.reader.trex.DivInGrammarState, .IncludePatternState, .NameClassChoiceState, .RootState, .TREXBaseReader, .TREXSequencedStringChecker, com.sun.msv.util.LightStack, .StartTagInfo, .Util

reads RELAX NG grammar from SAX2 and constructs abstract grammar model.
Author
Kohsuke KAWAGUCHI

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
protected static class
RELAXNGReader.RefExpParseInfo

information necessary to correctly parse pattern definitions.

public static class
RELAXNGReader.StateFactory

creates various State object, which in turn parses grammar.

Field Summary

Modifier and TypeField and Description
protected RELAXNGReader.RefExpParseInfo
currentNamedPattern

Info about the current ReferenceExp object which is being defined.

private DatatypeLibrary
datatypeLib

currently active datatype library.

private DatatypeLibraryFactory
datatypeLibraryFactory

DatatypeLibrary factory object.

protected String
datatypeLibURI

the namespace URI of the currently active datatype library.

protected boolean
directRefernce

Flag to indicate whether we saw <element> or not.

private final LightStack
private final LightStack
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String
private final Map<ReferenceExp, RELAXNGReader.RefExpParseInfo>
refExpParseInfos

Map from ReferenceExps to RefExpParseInfos.

public static final String
RELAXNGNamespace

Namespace URI of RELAX NG

protected static Schema
relaxNGSchema4Schema

Schema for schema of RELAX NG.

protected final RestrictionChecker
restrictionChecker

Contextual restriction checker.

Inherited from com.sun.msv.reader.trex.TREXBaseReader:
ERR_BAD_COMBINEERR_COMBINE_MISSINGERR_DUPLICATE_DEFINITIONERR_INTERLEAVED_ANYSTRINGERR_INTERLEAVED_STRINGERR_MISSING_CHILD_NAMECLASSERR_MORE_THAN_ONE_NAMECLASSERR_NONEXISTENT_PARENT_GRAMMARERR_REPEATED_STRINGERR_SEQUENCED_STRINGERR_UNDECLARED_PREFIXERR_UNDEFINED_PATTERNERR_UNKNOWN_DATATYPE_VOCABULARYgrammarsfactorytargetNamespaceWRN_COMBINE_IGNOREDWRN_OBSOLETED_XMLSCHEMA_NAMSPACE

Constructor Summary

AccessConstructor and Description
public
RELAXNGReader(GrammarReaderController controller)

easy-to-use constructor.

public
RELAXNGReader(GrammarReaderController controller, SAXParserFactory parserFactory)

easy-to-use constructor.

public
RELAXNGReader(GrammarReaderController controller, SAXParserFactory parserFactory, RELAXNGReader.StateFactory stateFactory, ExpressionPool pool)

full constructor

Method Summary

Modifier and TypeMethod and Description
private void
public State
createExpressionChildState(State parent, StartTagInfo tag)

Overrides com.sun.msv.reader.trex.TREXBaseReader.createExpressionChildState.

this method must be implemented by the derived class to create language-default expresion state.
protected State
public void
public void
endElement(String
The element's Namespace URI, or the empty string.
a
,
String
The element's local name, or the empty string.
b
,
String
The element's qualified (prefixed) name, or the empty string.
c
)

Overrides com.sun.msv.reader.trex.TREXBaseReader.endElement.

Implements org.xml.sax.ContentHandler.endElement.

Filter an end element event.
public DatatypeLibrary
public DatatypeLibraryFactory
getDatatypeLibraryFactory()

Returns the datatypeLibraryFactory.

protected TREXGrammar
protected RELAXNGReader.RefExpParseInfo
getRefExpParseInfo(ReferenceExp exp)

Gets RefExpParseInfo object for the specified ReferenceExp.

public static Schema
protected RELAXNGReader.StateFactory
protected boolean
isGrammarElement(StartTagInfo tag)

Implements abstract com.sun.msv.reader.GrammarReader.isGrammarElement.

checks if given element is that of the grammar elements.
protected String
localizeMessage(String propertyName, Object[] args)

Overrides com.sun.msv.reader.trex.TREXBaseReader.localizeMessage.

formats localized message with arguments
public static TREXGrammar
parse(String grammarURL, SAXParserFactory factory, GrammarReaderController controller)

loads RELAX NG pattern

public static TREXGrammar
parse(InputSource grammar, SAXParserFactory factory, GrammarReaderController controller)

loads RELAX NG pattern

public Datatype
resolveDataType(String localName)

obtains a named DataType object referenced by a local name.

public DatatypeLibrary
resolveDataTypeLibrary(String uri)

obtains the DataTypeLibrary that represents the specified namespace URI.

public String
resolveNamespacePrefix(String prefix)

Overrides com.sun.msv.reader.GrammarReader.resolveNamespacePrefix.

Implements org.relaxng.datatype.ValidationContext.resolveNamespacePrefix.

Resolves a namespace prefix to the corresponding namespace URI.
public void
setDatatypeLibraryFactory(DatatypeLibraryFactory datatypeLibraryFactory)

Sets the datatypeLibraryFactory.

public void
public void
startElement(String
The element's Namespace URI, or the empty string.
a
,
String
The element's local name, or the empty string.
b
,
String
The element's qualified (prefixed) name, or the empty string.
c
,
Attributes
The element's attributes.
d
)

Overrides com.sun.msv.reader.trex.TREXBaseReader.startElement.

Implements org.xml.sax.ContentHandler.startElement.

Filter a start element event.
public void
wrapUp()

Overrides com.sun.msv.reader.trex.TREXBaseReader.wrapUp.

performs final wrap-up.
Inherited from com.sun.msv.reader.trex.TREXBaseReader:
getResultgetResultAsGrammargetTargetNamespace