com.sun.msv.relaxns.verifier
Class IslandSchemaImpl
java.lang.Object
com.sun.msv.relaxns.verifier.IslandSchemaImpl
- All Implemented Interfaces:
- Serializable, org.iso_relax.dispatcher.IslandSchema
- Direct Known Subclasses:
- RELAXIslandSchema, TREXIslandSchema
public abstract class IslandSchemaImpl
- extends Object
- implements org.iso_relax.dispatcher.IslandSchema, Serializable
base implementation of IslandSchema for MSV.
the iso_relax package doesn't have the distinction between AGM and VGM.
For the safety, the implementation of the createNewVerifier method creates
a new VGM everytime it is called.
Fortunately, when all island schemas are from MSV, the application can simply
treat RELAXGrammar as a normal Grammar object; there is no need to use
Dispatcher nor any divide-and-validate framework.
So createNewVerifier method is called only when
-
MSV is used by other RELAX Namespace
implementation or
-
other IslandSchema implemntations are used by MSV's RELAXNSReader.
In that case, the current createNewVerifier method causes a performance problem.
- Author:
- Kohsuke KAWAGUCHI
- See Also:
- Serialized Form
|
Nested Class Summary |
static class |
IslandSchemaImpl.Binder
replaces all ExternalElementExp and ExternalAttributeExp
by actual definitions. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.iso_relax.dispatcher.IslandSchema |
bind |
elementDecls
protected final Map elementDecls
- map from name to DeclImpl.
attributesDecls
protected final Map attributesDecls
- map from name to DeclImpl.
IslandSchemaImpl
public IslandSchemaImpl()
createNewVerifier
public org.iso_relax.dispatcher.IslandVerifier createNewVerifier(String namespace,
org.iso_relax.dispatcher.ElementDecl[] rules)
- Specified by:
createNewVerifier in interface org.iso_relax.dispatcher.IslandSchema
getGrammar
protected abstract Grammar getGrammar()
- get the grammar object that represents this island.
getElementDeclByName
public org.iso_relax.dispatcher.ElementDecl getElementDeclByName(String name)
- Specified by:
getElementDeclByName in interface org.iso_relax.dispatcher.IslandSchema
iterateElementDecls
public Iterator iterateElementDecls()
- Specified by:
iterateElementDecls in interface org.iso_relax.dispatcher.IslandSchema
getElementDecls
public org.iso_relax.dispatcher.ElementDecl[] getElementDecls()
- Specified by:
getElementDecls in interface org.iso_relax.dispatcher.IslandSchema
getAttributesDeclByName
public org.iso_relax.dispatcher.AttributesDecl getAttributesDeclByName(String name)
- Specified by:
getAttributesDeclByName in interface org.iso_relax.dispatcher.IslandSchema
iterateAttributesDecls
public Iterator iterateAttributesDecls()
- Specified by:
iterateAttributesDecls in interface org.iso_relax.dispatcher.IslandSchema
getAttributesDecls
public org.iso_relax.dispatcher.AttributesDecl[] getAttributesDecls()
- Specified by:
getAttributesDecls in interface org.iso_relax.dispatcher.IslandSchema
createNewAttributesVerifier
public org.iso_relax.dispatcher.AttributesVerifier createNewAttributesVerifier(String namespaceURI,
org.iso_relax.dispatcher.AttributesDecl[] decls)
- Specified by:
createNewAttributesVerifier in interface org.iso_relax.dispatcher.IslandSchema
bind
protected void bind(ReferenceContainer con,
IslandSchemaImpl.Binder binder)
Copyright © 2013 Oracle Corporation. All Rights Reserved.