Package org.apache.xerces.impl.xs
Class SchemaGrammar
- java.lang.Object
-
- org.apache.xerces.impl.xs.SchemaGrammar
-
- All Implemented Interfaces:
org.apache.xerces.xni.grammars.Grammar,org.apache.xerces.xni.grammars.XSGrammar,org.apache.xerces.xs.XSNamespaceItem
- Direct Known Subclasses:
SchemaGrammar.BuiltinSchemaGrammar,SchemaGrammar.Schema4Annotations
public class SchemaGrammar extends java.lang.Object implements org.apache.xerces.xni.grammars.XSGrammar, org.apache.xerces.xs.XSNamespaceItemThis class is to hold all schema component declaration that are declared within one namespace. The Grammar class this class extends contains what little commonality there is between XML Schema and DTD grammars. It's useful to distinguish grammar objects from other kinds of object when they exist in pools or caches.INTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: SchemaGrammar.java 1082533 2011-03-17 15:22:26Z knoaman $
- Author:
- Sandy Gao, IBM, Elena Litani, IBM
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSchemaGrammar.BuiltinSchemaGrammarstatic classSchemaGrammar.Schema4AnnotationsA partial schema for schemas for validating annotations.
-
Field Summary
Fields Modifier and Type Field Description static XSSimpleTypefAnySimpleTypestatic XSComplexTypeDeclfAnyTypestatic SchemaGrammar.BuiltinSchemaGrammarSG_SchemaNSstatic SchemaGrammar.BuiltinSchemaGrammarSG_XSI
-
Constructor Summary
Constructors Modifier Constructor Description protectedSchemaGrammar()SchemaGrammar(java.lang.String targetNamespace, XSDDescription grammarDesc, SymbolTable symbolTable)Default constructor.SchemaGrammar(SchemaGrammar grammar)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAnnotation(XSAnnotationImpl annotation)voidaddComplexTypeDecl(XSComplexTypeDecl decl, SimpleLocator locator)add one complex type decl: for later constraint checkingvoidaddDocument(java.lang.Object document, java.lang.String location)voidaddGlobalAttributeDecl(XSAttributeDecl decl)register one global attributevoidaddGlobalAttributeDecl(XSAttributeDecl decl, java.lang.String location)voidaddGlobalAttributeGroupDecl(XSAttributeGroupDecl decl)register one global attribute groupvoidaddGlobalAttributeGroupDecl(XSAttributeGroupDecl decl, java.lang.String location)voidaddGlobalComplexTypeDecl(XSComplexTypeDecl decl)register one global complex typevoidaddGlobalComplexTypeDecl(XSComplexTypeDecl decl, java.lang.String location)voidaddGlobalElementDecl(XSElementDecl decl)voidaddGlobalElementDecl(XSElementDecl decl, java.lang.String location)voidaddGlobalElementDeclAll(XSElementDecl decl)register one global elementvoidaddGlobalGroupDecl(XSGroupDecl decl)register one global groupvoidaddGlobalGroupDecl(XSGroupDecl decl, java.lang.String location)voidaddGlobalNotationDecl(XSNotationDecl decl)register one global notationvoidaddGlobalNotationDecl(XSNotationDecl decl, java.lang.String location)voidaddGlobalSimpleTypeDecl(XSSimpleType decl)register one global simple typevoidaddGlobalSimpleTypeDecl(XSSimpleType decl, java.lang.String location)voidaddGlobalTypeDecl(org.apache.xerces.xs.XSTypeDefinition decl)register one global typevoidaddGlobalTypeDecl(org.apache.xerces.xs.XSTypeDefinition decl, java.lang.String location)voidaddIDConstraintDecl(XSElementDecl elmDecl, IdentityConstraint decl)register one identity constraintvoidaddIDConstraintDecl(XSElementDecl elmDecl, IdentityConstraint decl, java.lang.String location)voidaddRedefinedGroupDecl(XSGroupDecl derived, XSGroupDecl base, SimpleLocator locator)add a group redefined by restriction: for later constraint checkingorg.apache.xerces.xs.XSObjectListgetAnnotations()[annotations]: a set of annotations if it exists, otherwise an emptyXSObjectList.org.apache.xerces.xs.XSAttributeDeclarationgetAttributeDeclaration(java.lang.String name)Convenience method.org.apache.xerces.xs.XSAttributeGroupDefinitiongetAttributeGroup(java.lang.String name)Convenience method.org.apache.xerces.xs.XSNamedMapgetComponents(short objectType)[schema components]: a list of top-level components, i.e.org.apache.xerces.xs.datatypes.ObjectListgetComponentsExt(short objectType)org.apache.xerces.xs.StringListgetDocumentLocations()[document location]org.apache.xerces.xs.XSElementDeclarationgetElementDeclaration(java.lang.String name)Convenience method.XSAttributeDeclgetGlobalAttributeDecl(java.lang.String declName)get one global attributeXSAttributeDeclgetGlobalAttributeDecl(java.lang.String declName, java.lang.String location)XSAttributeGroupDeclgetGlobalAttributeGroupDecl(java.lang.String declName)get one global attribute groupXSAttributeGroupDeclgetGlobalAttributeGroupDecl(java.lang.String declName, java.lang.String location)XSElementDeclgetGlobalElementDecl(java.lang.String declName)get one global elementXSElementDeclgetGlobalElementDecl(java.lang.String declName, java.lang.String location)XSGroupDeclgetGlobalGroupDecl(java.lang.String declName)get one global groupXSGroupDeclgetGlobalGroupDecl(java.lang.String declName, java.lang.String location)XSNotationDeclgetGlobalNotationDecl(java.lang.String declName)get one global notationXSNotationDeclgetGlobalNotationDecl(java.lang.String declName, java.lang.String location)org.apache.xerces.xs.XSTypeDefinitiongetGlobalTypeDecl(java.lang.String declName)get one global typeorg.apache.xerces.xs.XSTypeDefinitiongetGlobalTypeDecl(java.lang.String declName, java.lang.String location)org.apache.xerces.xni.grammars.XMLGrammarDescriptiongetGrammarDescription()get theXMLGrammarDescriptionassociated with this objectorg.apache.xerces.xs.XSIDCDefinitiongetIDCDefinition(java.lang.String name)Convenience method.IdentityConstraintgetIDConstraintDecl(java.lang.String declName)get one identity constraintIdentityConstraintgetIDConstraintDecl(java.lang.String declName, java.lang.String location)java.util.VectorgetImportedGrammars()org.apache.xerces.xs.XSModelGroupDefinitiongetModelGroupDefinition(java.lang.String name)Convenience method.org.apache.xerces.xs.XSNotationDeclarationgetNotationDeclaration(java.lang.String name)Convenience method.static SchemaGrammargetS4SGrammar(short schemaVersion)java.lang.StringgetSchemaNamespace()[schema namespace]java.lang.StringgetTargetNamespace()Returns this grammar's target namespace.org.apache.xerces.xs.XSTypeDefinitiongetTypeDefinition(java.lang.String name)Convenience method.booleanhasIDConstraints()get one identity constraintbooleanisImmutable()booleanisNamespaceAware()voidremoveDocument(int index)voidresetComponents()voidsetImmutable(boolean isImmutable)voidsetImportedGrammars(java.util.Vector importedGrammars)org.apache.xerces.xs.XSModeltoXSModel()Return anXSModelthat represents components in this schema grammar.org.apache.xerces.xs.XSModeltoXSModel(org.apache.xerces.xni.grammars.XSGrammar[] grammars)Return anXSModelthat represents components in this schema grammar and the grammars in thegrammarsparameter, any schema grammars that are imported by them directly or indirectly.
-
-
-
Field Detail
-
fAnyType
public static final XSComplexTypeDecl fAnyType
-
SG_SchemaNS
public static final SchemaGrammar.BuiltinSchemaGrammar SG_SchemaNS
-
fAnySimpleType
public static final XSSimpleType fAnySimpleType
-
SG_XSI
public static final SchemaGrammar.BuiltinSchemaGrammar SG_XSI
-
-
Constructor Detail
-
SchemaGrammar
protected SchemaGrammar()
-
SchemaGrammar
public SchemaGrammar(java.lang.String targetNamespace, XSDDescription grammarDesc, SymbolTable symbolTable)Default constructor.- Parameters:
targetNamespace-grammarDesc- the XMLGrammarDescription corresponding to this objec at the least a systemId should always be known.symbolTable- needed for annotation support
-
SchemaGrammar
public SchemaGrammar(SchemaGrammar grammar)
-
-
Method Detail
-
getGrammarDescription
public org.apache.xerces.xni.grammars.XMLGrammarDescription getGrammarDescription()
Description copied from interface:org.apache.xerces.xni.grammars.Grammarget theXMLGrammarDescriptionassociated with this object- Specified by:
getGrammarDescriptionin interfaceorg.apache.xerces.xni.grammars.Grammar
-
isNamespaceAware
public boolean isNamespaceAware()
-
setImportedGrammars
public void setImportedGrammars(java.util.Vector importedGrammars)
-
getImportedGrammars
public java.util.Vector getImportedGrammars()
-
getTargetNamespace
public final java.lang.String getTargetNamespace()
Returns this grammar's target namespace.
-
addGlobalAttributeDecl
public void addGlobalAttributeDecl(XSAttributeDecl decl)
register one global attribute
-
addGlobalAttributeDecl
public void addGlobalAttributeDecl(XSAttributeDecl decl, java.lang.String location)
-
addGlobalAttributeGroupDecl
public void addGlobalAttributeGroupDecl(XSAttributeGroupDecl decl)
register one global attribute group
-
addGlobalAttributeGroupDecl
public void addGlobalAttributeGroupDecl(XSAttributeGroupDecl decl, java.lang.String location)
-
addGlobalElementDeclAll
public void addGlobalElementDeclAll(XSElementDecl decl)
register one global element
-
addGlobalElementDecl
public void addGlobalElementDecl(XSElementDecl decl)
-
addGlobalElementDecl
public void addGlobalElementDecl(XSElementDecl decl, java.lang.String location)
-
addGlobalGroupDecl
public void addGlobalGroupDecl(XSGroupDecl decl)
register one global group
-
addGlobalGroupDecl
public void addGlobalGroupDecl(XSGroupDecl decl, java.lang.String location)
-
addGlobalNotationDecl
public void addGlobalNotationDecl(XSNotationDecl decl)
register one global notation
-
addGlobalNotationDecl
public void addGlobalNotationDecl(XSNotationDecl decl, java.lang.String location)
-
addGlobalTypeDecl
public void addGlobalTypeDecl(org.apache.xerces.xs.XSTypeDefinition decl)
register one global type
-
addGlobalTypeDecl
public void addGlobalTypeDecl(org.apache.xerces.xs.XSTypeDefinition decl, java.lang.String location)
-
addGlobalComplexTypeDecl
public void addGlobalComplexTypeDecl(XSComplexTypeDecl decl)
register one global complex type
-
addGlobalComplexTypeDecl
public void addGlobalComplexTypeDecl(XSComplexTypeDecl decl, java.lang.String location)
-
addGlobalSimpleTypeDecl
public void addGlobalSimpleTypeDecl(XSSimpleType decl)
register one global simple type
-
addGlobalSimpleTypeDecl
public void addGlobalSimpleTypeDecl(XSSimpleType decl, java.lang.String location)
-
addIDConstraintDecl
public final void addIDConstraintDecl(XSElementDecl elmDecl, IdentityConstraint decl)
register one identity constraint
-
addIDConstraintDecl
public final void addIDConstraintDecl(XSElementDecl elmDecl, IdentityConstraint decl, java.lang.String location)
-
getGlobalAttributeDecl
public final XSAttributeDecl getGlobalAttributeDecl(java.lang.String declName)
get one global attribute
-
getGlobalAttributeDecl
public final XSAttributeDecl getGlobalAttributeDecl(java.lang.String declName, java.lang.String location)
-
getGlobalAttributeGroupDecl
public final XSAttributeGroupDecl getGlobalAttributeGroupDecl(java.lang.String declName)
get one global attribute group
-
getGlobalAttributeGroupDecl
public final XSAttributeGroupDecl getGlobalAttributeGroupDecl(java.lang.String declName, java.lang.String location)
-
getGlobalElementDecl
public final XSElementDecl getGlobalElementDecl(java.lang.String declName)
get one global element
-
getGlobalElementDecl
public final XSElementDecl getGlobalElementDecl(java.lang.String declName, java.lang.String location)
-
getGlobalGroupDecl
public final XSGroupDecl getGlobalGroupDecl(java.lang.String declName)
get one global group
-
getGlobalGroupDecl
public final XSGroupDecl getGlobalGroupDecl(java.lang.String declName, java.lang.String location)
-
getGlobalNotationDecl
public final XSNotationDecl getGlobalNotationDecl(java.lang.String declName)
get one global notation
-
getGlobalNotationDecl
public final XSNotationDecl getGlobalNotationDecl(java.lang.String declName, java.lang.String location)
-
getGlobalTypeDecl
public final org.apache.xerces.xs.XSTypeDefinition getGlobalTypeDecl(java.lang.String declName)
get one global type
-
getGlobalTypeDecl
public final org.apache.xerces.xs.XSTypeDefinition getGlobalTypeDecl(java.lang.String declName, java.lang.String location)
-
getIDConstraintDecl
public final IdentityConstraint getIDConstraintDecl(java.lang.String declName)
get one identity constraint
-
getIDConstraintDecl
public final IdentityConstraint getIDConstraintDecl(java.lang.String declName, java.lang.String location)
-
hasIDConstraints
public final boolean hasIDConstraints()
get one identity constraint
-
addComplexTypeDecl
public void addComplexTypeDecl(XSComplexTypeDecl decl, SimpleLocator locator)
add one complex type decl: for later constraint checking
-
addRedefinedGroupDecl
public void addRedefinedGroupDecl(XSGroupDecl derived, XSGroupDecl base, SimpleLocator locator)
add a group redefined by restriction: for later constraint checking
-
getS4SGrammar
public static SchemaGrammar getS4SGrammar(short schemaVersion)
-
addDocument
public void addDocument(java.lang.Object document, java.lang.String location)
-
removeDocument
public void removeDocument(int index)
-
getSchemaNamespace
public java.lang.String getSchemaNamespace()
[schema namespace]- Specified by:
getSchemaNamespacein interfaceorg.apache.xerces.xs.XSNamespaceItem- Returns:
- The target namespace of this item.
- See Also:
- [schema namespace]
-
getComponents
public org.apache.xerces.xs.XSNamedMap getComponents(short objectType)
[schema components]: a list of top-level components, i.e. element declarations, attribute declarations, etc.- Specified by:
getComponentsin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
objectType- The type of the declaration, i.e.ELEMENT_DECLARATION. Note thatXSTypeDefinition.SIMPLE_TYPEandXSTypeDefinition.COMPLEX_TYPEcan also be used as theobjectTypeto retrieve only complex types or simple types, instead of all types.- Returns:
- A list of top-level definition of the specified type in
objectTypeor an emptyXSNamedMapif no such definitions exist.
-
getComponentsExt
public org.apache.xerces.xs.datatypes.ObjectList getComponentsExt(short objectType)
-
resetComponents
public void resetComponents()
-
getTypeDefinition
public org.apache.xerces.xs.XSTypeDefinition getTypeDefinition(java.lang.String name)
Convenience method. Returns a top-level simple or complex type definition.- Specified by:
getTypeDefinitionin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the definition.- Returns:
- An
XSTypeDefinitionor null if such definition does not exist.
-
getAttributeDeclaration
public org.apache.xerces.xs.XSAttributeDeclaration getAttributeDeclaration(java.lang.String name)
Convenience method. Returns a top-level attribute declaration.- Specified by:
getAttributeDeclarationin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the declaration.- Returns:
- A top-level attribute declaration or null if such declaration does not exist.
-
getElementDeclaration
public org.apache.xerces.xs.XSElementDeclaration getElementDeclaration(java.lang.String name)
Convenience method. Returns a top-level element declaration.- Specified by:
getElementDeclarationin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the declaration.- Returns:
- A top-level element declaration or null if such declaration does not exist.
-
getAttributeGroup
public org.apache.xerces.xs.XSAttributeGroupDefinition getAttributeGroup(java.lang.String name)
Convenience method. Returns a top-level attribute group definition.- Specified by:
getAttributeGroupin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the definition.- Returns:
- A top-level attribute group definition or null if such definition does not exist.
-
getModelGroupDefinition
public org.apache.xerces.xs.XSModelGroupDefinition getModelGroupDefinition(java.lang.String name)
Convenience method. Returns a top-level model group definition.- Specified by:
getModelGroupDefinitionin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the definition.- Returns:
- A top-level model group definition definition or null if such definition does not exist.
-
getNotationDeclaration
public org.apache.xerces.xs.XSNotationDeclaration getNotationDeclaration(java.lang.String name)
Convenience method. Returns a top-level notation declaration.- Specified by:
getNotationDeclarationin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the declaration.- Returns:
- A top-level notation declaration or null if such declaration does not exist.
-
getIDCDefinition
public org.apache.xerces.xs.XSIDCDefinition getIDCDefinition(java.lang.String name)
Description copied from interface:org.apache.xerces.xs.XSNamespaceItemConvenience method. Returns an identity-constraint definition.- Specified by:
getIDCDefinitionin interfaceorg.apache.xerces.xs.XSNamespaceItem- Parameters:
name- The name of the definition.- Returns:
- An identity-constraint definition or
nullif such a declaration does not exist.
-
getDocumentLocations
public org.apache.xerces.xs.StringList getDocumentLocations()
[document location]- Specified by:
getDocumentLocationsin interfaceorg.apache.xerces.xs.XSNamespaceItem- Returns:
- a list of document information item
- See Also:
- [document location]
-
toXSModel
public org.apache.xerces.xs.XSModel toXSModel()
Return anXSModelthat represents components in this schema grammar.- Specified by:
toXSModelin interfaceorg.apache.xerces.xni.grammars.XSGrammar- Returns:
- an
XSModelrepresenting this schema grammar
-
toXSModel
public org.apache.xerces.xs.XSModel toXSModel(org.apache.xerces.xni.grammars.XSGrammar[] grammars)
Description copied from interface:org.apache.xerces.xni.grammars.XSGrammarReturn anXSModelthat represents components in this schema grammar and the grammars in thegrammarsparameter, any schema grammars that are imported by them directly or indirectly.- Specified by:
toXSModelin interfaceorg.apache.xerces.xni.grammars.XSGrammar- Returns:
- an
XSModelrepresenting these schema grammars
-
getAnnotations
public org.apache.xerces.xs.XSObjectList getAnnotations()
Description copied from interface:org.apache.xerces.xs.XSNamespaceItem[annotations]: a set of annotations if it exists, otherwise an emptyXSObjectList.- Specified by:
getAnnotationsin interfaceorg.apache.xerces.xs.XSNamespaceItem- See Also:
XSNamespaceItem.getAnnotations()
-
addAnnotation
public void addAnnotation(XSAnnotationImpl annotation)
-
setImmutable
public void setImmutable(boolean isImmutable)
-
isImmutable
public boolean isImmutable()
-
-