|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.xml.sax.helpers.XMLFilterImpl
com.sun.msv.reader.GrammarReader
com.sun.msv.reader.xmlschema.XMLSchemaReader
public class XMLSchemaReader
parses XML representation of XML Schema and constructs AGM.
Nested Class Summary | |
---|---|
static interface |
XMLSchemaReader.RefResolver
|
static class |
XMLSchemaReader.StateFactory
creates various State object, which in turn parses grammar. |
Nested classes/interfaces inherited from class com.sun.msv.reader.GrammarReader |
---|
GrammarReader.BackPatch, GrammarReader.BackwardReferenceMap, GrammarReader.ChainPrefixResolver, GrammarReader.PrefixResolver |
Constructor Summary | |
---|---|
XMLSchemaReader(GrammarReaderController controller)
easy-to-use constructor. |
|
XMLSchemaReader(GrammarReaderController controller,
SAXParserFactory parserFactory)
|
|
XMLSchemaReader(GrammarReaderController controller,
SAXParserFactory parserFactory,
ExpressionPool pool)
|
|
XMLSchemaReader(GrammarReaderController controller,
SAXParserFactory parserFactory,
XMLSchemaReader.StateFactory stateFactory,
ExpressionPool pool)
|
Method Summary | |
---|---|
State |
createAttributeState(State parent,
StartTagInfo tag)
creates a state object that parses "attribute","attributeGroup ref", and "anyAttribute". |
State |
createExpressionChildState(State parent,
StartTagInfo tag)
this method must be implemented by the derived class to create language-default expresion state. |
State |
createFacetState(State parent,
StartTagInfo tag)
|
State |
createModelGroupState(State parent,
StartTagInfo tag)
creates a state object that parses "all"/"group ref"/"choice" and "sequence". |
XMLSchemaSchema |
getOrCreateSchema(String namespaceURI)
gets a reference to XMLSchemaGrammar object whose target namespace is the specified one. |
XMLSchemaGrammar |
getResult()
|
Grammar |
getResultAsGrammar()
gets the parsed AGM. |
static Schema |
getXmlSchemaForXmlSchema()
|
boolean |
isSchemaDefined(XMLSchemaSchema schema)
|
boolean |
isSchemaNamespace(String ns)
|
void |
markSchemaAsDefined(XMLSchemaSchema schema)
|
static XMLSchemaGrammar |
parse(InputSource grammar,
SAXParserFactory factory,
GrammarReaderController controller)
loads XML Schema |
static XMLSchemaGrammar |
parse(String grammarURL,
SAXParserFactory factory,
GrammarReaderController controller)
loads XML Schema |
Expression |
processOccurs(Expression item,
int minOccurs,
int maxOccurs)
Adds maxOccurs/minOccurs semantics to a given expression. |
Expression |
processOccurs(StartTagInfo startTag,
Expression item)
Adds maxOccurs/minOccurs semantics to a given expression. |
com.sun.msv.datatype.xsd.XSDatatype |
resolveBuiltinDataType(String typeLocalName)
resolves built-in datatypes (URI: http://www.w3.org/2001/XMLSchema) |
SimpleTypeExp |
resolveBuiltinSimpleType(String typeLocalName)
Gets a built-in datatype as SimpleTypeExp. |
Expression |
resolveQNameRef(StartTagInfo tag,
String attName,
XMLSchemaReader.RefResolver resolver)
|
XSDatatypeExp |
resolveXSDatatype(String typeQName)
Resolves a simple type name into the corresponding XSDatatypeExp object. |
String[] |
splitQName(String qName)
Resolves a QName into a pair of (namespace URI,local name). |
Methods inherited from class org.xml.sax.helpers.XMLFilterImpl |
---|
characters, endDocument, endElement, error, fatalError, getContentHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getParent, getProperty, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setContentHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setParent, setProperty, skippedEntity, startDocument, startElement, unparsedEntityDecl, warning |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public final ReferenceExp xsiSchemaLocationExp
public static final String XMLSchemaSchemaLocationAttributes
public final ComplexTypeExp complexUrType
public final Map parsedFiles
public final XMLSchemaReader.StateFactory sfactory
public static final String XMLSchemaNamespace
public static final String XMLSchemaNamespace_old
public boolean doDuplicateDefinitionCheck
public static final String ERR_MAXOCCURS_IS_NECESSARY
public static final String ERR_UNIMPLEMENTED_FEATURE
public static final String ERR_UNDECLARED_PREFIX
public static final String ERR_INCONSISTENT_TARGETNAMESPACE
public static final String ERR_IMPORTING_SAME_NAMESPACE
public static final String ERR_DUPLICATE_SCHEMA_DEFINITION
public static final String ERR_UNDEFINED_ELEMENTTYPE
public static final String ERR_UNDEFINED_ATTRIBUTE_DECL
public static final String ERR_UNDEFINED_ATTRIBUTE_GROUP
public static final String ERR_UNDEFINED_COMPLEX_TYPE
public static final String ERR_UNDEFINED_SIMPLE_TYPE
public static final String ERR_UNDEFINED_COMPLEX_OR_SIMPLE_TYPE
public static final String ERR_UNDEFINED_ELEMENT_DECL
public static final String ERR_UNDEFINED_GROUP
public static final String ERR_UNDEFINED_SCHEMA
public static final String WRN_UNSUPPORTED_ANYELEMENT
public static final String WRN_OBSOLETED_NAMESPACE
public static final String ERR_UNDEFINED_OR_FORWARD_REFERENCED_TYPE
public static final String ERR_REDEFINE_UNDEFINED
public static final String ERR_DUPLICATE_ATTRIBUTE_DEFINITION
public static final String ERR_DUPLICATE_COMPLEXTYPE_DEFINITION
public static final String ERR_DUPLICATE_ATTRIBUTE_GROUP_DEFINITION
public static final String ERR_DUPLICATE_GROUP_DEFINITION
public static final String ERR_DUPLICATE_ELEMENT_DEFINITION
public static final String ERR_DUPLICATE_IDENTITY_CONSTRAINT_DEFINITION
public static final String ERR_BAD_XPATH
public static final String ERR_UNDEFINED_KEY
public static final String ERR_INVALID_BASETYPE_FOR_SIMPLECONTENT
public static final String ERR_KEY_FIELD_NUMBER_MISMATCH
public static final String ERR_KEYREF_REFERRING_NON_KEY
public static final String ERR_UNRELATED_TYPES_IN_SUBSTITUTIONGROUP
public static final String ERR_RECURSIVE_SUBSTITUTION_GROUP
public static final String WRN_IMPLICIT_URTYPE_FOR_ELEMENT
Constructor Detail |
---|
public XMLSchemaReader(GrammarReaderController controller)
public XMLSchemaReader(GrammarReaderController controller, SAXParserFactory parserFactory)
public XMLSchemaReader(GrammarReaderController controller, SAXParserFactory parserFactory, ExpressionPool pool)
public XMLSchemaReader(GrammarReaderController controller, SAXParserFactory parserFactory, XMLSchemaReader.StateFactory stateFactory, ExpressionPool pool)
Method Detail |
---|
public static XMLSchemaGrammar parse(String grammarURL, SAXParserFactory factory, GrammarReaderController controller)
public static XMLSchemaGrammar parse(InputSource grammar, SAXParserFactory factory, GrammarReaderController controller)
public static Schema getXmlSchemaForXmlSchema()
public final XMLSchemaGrammar getResult()
public Grammar getResultAsGrammar()
GrammarReader
getResultAsGrammar
in class GrammarReader
public XMLSchemaSchema getOrCreateSchema(String namespaceURI)
public State createExpressionChildState(State parent, StartTagInfo tag)
GrammarReader
createExpressionChildState
in class GrammarReader
public State createModelGroupState(State parent, StartTagInfo tag)
public State createAttributeState(State parent, StartTagInfo tag)
public State createFacetState(State parent, StartTagInfo tag)
public final void markSchemaAsDefined(XMLSchemaSchema schema)
public final boolean isSchemaDefined(XMLSchemaSchema schema)
public com.sun.msv.datatype.xsd.XSDatatype resolveBuiltinDataType(String typeLocalName)
public SimpleTypeExp resolveBuiltinSimpleType(String typeLocalName)
public boolean isSchemaNamespace(String ns)
public XSDatatypeExp resolveXSDatatype(String typeQName)
resolveXSDatatype
in interface XSDatatypeResolver
typeQName
- 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 Expression resolveQNameRef(StartTagInfo tag, String attName, XMLSchemaReader.RefResolver resolver)
public String[] splitQName(String qName)
When we are parsing a "chameleon schema", any reference to the default empty namespace("") has to be treated as a reference to the intended target namespace.
splitQName
in class GrammarReader
public Expression processOccurs(StartTagInfo startTag, Expression item)
public Expression processOccurs(Expression item, int minOccurs, int maxOccurs)
maxOccurs
- -1 to represent "unbounded".
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |