Package org.apache.xerces.impl.xs
Class XSModelImpl
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList
-
- org.apache.xerces.impl.xs.XSModelImpl
-
- All Implemented Interfaces:
java.lang.Iterable
,java.util.Collection
,java.util.List
,org.apache.xerces.xs.XSModel
,org.apache.xerces.xs.XSNamespaceItemList
public final class XSModelImpl extends java.util.AbstractList implements org.apache.xerces.xs.XSModel, org.apache.xerces.xs.XSNamespaceItemList
Implements XSModel: a read-only interface that represents an XML Schema, which could be components from different namespaces.INTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: XSModelImpl.java 1024038 2010-10-18 22:06:35Z sandygao $
- Author:
- Sandy Gao, IBM
-
-
Constructor Summary
Constructors Constructor Description XSModelImpl(SchemaGrammar[] grammars)
Construct an XSModelImpl, by storing some grammars and grammars imported by them to this object.XSModelImpl(SchemaGrammar[] grammars, short s4sVersion)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
get(int index)
org.apache.xerces.xs.XSObjectList
getAnnotations()
[annotations]: a set of annotations if it exists, otherwise an emptyXSObjectList
.org.apache.xerces.xs.XSAttributeDeclaration
getAttributeDeclaration(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSAttributeDeclaration
getAttributeDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.org.apache.xerces.xs.XSAttributeGroupDefinition
getAttributeGroup(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSAttributeGroupDefinition
getAttributeGroup(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.org.apache.xerces.xs.XSNamedMap
getComponents(short objectType)
Returns a list of top-level components, i.e.org.apache.xerces.xs.XSNamedMap
getComponentsByNamespace(short objectType, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSElementDeclaration
getElementDeclaration(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSElementDeclaration
getElementDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.org.apache.xerces.xs.XSIDCDefinition
getIDCDefinition(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSIDCDefinition
getIDCDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.int
getLength()
The number ofXSNamespaceItem
s in the list.org.apache.xerces.xs.XSModelGroupDefinition
getModelGroupDefinition(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSModelGroupDefinition
getModelGroupDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.org.apache.xerces.xs.XSNamespaceItemList
getNamespaceItems()
A set of namespace schema information information items (of typeXSNamespaceItem
), one for each namespace name which appears as the target namespace of any schema component in the schema used for that assessment, and one for absent if any schema component in the schema had no target namespace.org.apache.xerces.xs.StringList
getNamespaces()
Convenience method.org.apache.xerces.xs.XSNotationDeclaration
getNotationDeclaration(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSNotationDeclaration
getNotationDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
org.apache.xerces.xs.XSObjectList
getSubstitutionGroup(org.apache.xerces.xs.XSElementDeclaration head)
Convenience method.org.apache.xerces.xs.XSTypeDefinition
getTypeDefinition(java.lang.String name, java.lang.String namespace)
Convenience method.org.apache.xerces.xs.XSTypeDefinition
getTypeDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method.boolean
hasIDConstraints()
REVISIT: to expose identity constraints from XSModel.org.apache.xerces.xs.XSNamespaceItem
item(int index)
Returns theindex
th item in the collection ornull
ifindex
is greater than or equal to the number of objects in the list.java.util.Iterator
iterator()
java.util.ListIterator
listIterator()
java.util.ListIterator
listIterator(int index)
int
size()
java.lang.Object[]
toArray()
java.lang.Object[]
toArray(java.lang.Object[] a)
-
Methods inherited from class java.util.AbstractList
add, add, addAll, clear, equals, hashCode, indexOf, lastIndexOf, remove, removeRange, set, subList
-
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toString
-
-
-
-
Constructor Detail
-
XSModelImpl
public XSModelImpl(SchemaGrammar[] grammars)
Construct an XSModelImpl, by storing some grammars and grammars imported by them to this object.- Parameters:
grammars
- the array of schema grammars
-
XSModelImpl
public XSModelImpl(SchemaGrammar[] grammars, short s4sVersion)
-
-
Method Detail
-
getNamespaces
public org.apache.xerces.xs.StringList getNamespaces()
Convenience method. Returns a list of all namespaces that belong to this schema.- Specified by:
getNamespaces
in interfaceorg.apache.xerces.xs.XSModel
- Returns:
- A list of all namespaces that belong to this schema or
null
if all components don't have a targetNamespace.
-
getNamespaceItems
public org.apache.xerces.xs.XSNamespaceItemList getNamespaceItems()
A set of namespace schema information information items (of typeXSNamespaceItem
), one for each namespace name which appears as the target namespace of any schema component in the schema used for that assessment, and one for absent if any schema component in the schema had no target namespace. For more information see schema information.- Specified by:
getNamespaceItems
in interfaceorg.apache.xerces.xs.XSModel
-
getComponents
public org.apache.xerces.xs.XSNamedMap getComponents(short objectType)
Returns a list of top-level components, i.e. element declarations, attribute declarations, etc.- Specified by:
getComponents
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
objectType
- The type of the declaration, i.e.ELEMENT_DECLARATION
. Note thatXSTypeDefinition.SIMPLE_TYPE
andXSTypeDefinition.COMPLEX_TYPE
can also be used as theobjectType
to retrieve only complex types or simple types, instead of all types.- Returns:
- A list of top-level definitions of the specified type in
objectType
or an emptyXSNamedMap
if no such definitions exist.
-
getComponentsByNamespace
public org.apache.xerces.xs.XSNamedMap getComponentsByNamespace(short objectType, java.lang.String namespace)
Convenience method. Returns a list of top-level component declarations that are defined within the specified namespace, i.e. element declarations, attribute declarations, etc.- Specified by:
getComponentsByNamespace
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
objectType
- The type of the declaration, i.e.ELEMENT_DECLARATION
.namespace
- The namespace to which the declaration belongs ornull
(for components with no target namespace).- Returns:
- A list of top-level definitions of the specified type in
objectType
and defined in the specifiednamespace
or an emptyXSNamedMap
.
-
getTypeDefinition
public org.apache.xerces.xs.XSTypeDefinition getTypeDefinition(java.lang.String name, java.lang.String namespace)
Convenience method. Returns a top-level simple or complex type definition.- Specified by:
getTypeDefinition
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.- Returns:
- An
XSTypeDefinition
or null if such definition does not exist.
-
getTypeDefinition
public org.apache.xerces.xs.XSTypeDefinition getTypeDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level simple or complex type definition.- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- Returns:
- An
XSTypeDefinition
or null if such definition does not exist.
-
getAttributeDeclaration
public org.apache.xerces.xs.XSAttributeDeclaration getAttributeDeclaration(java.lang.String name, java.lang.String namespace)
Convenience method. Returns a top-level attribute declaration.- Specified by:
getAttributeDeclaration
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the declaration.namespace
- The namespace of the definition, otherwise null.- Returns:
- A top-level attribute declaration or null if such declaration does not exist.
-
getAttributeDeclaration
public org.apache.xerces.xs.XSAttributeDeclaration getAttributeDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level attribute declaration.- Parameters:
name
- The name of the declaration.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- 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, java.lang.String namespace)
Convenience method. Returns a top-level element declaration.- Specified by:
getElementDeclaration
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the declaration.namespace
- The namespace of the definition, otherwise null.- Returns:
- A top-level element declaration or null if such declaration does not exist.
-
getElementDeclaration
public org.apache.xerces.xs.XSElementDeclaration getElementDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level element declaration.- Parameters:
name
- The name of the declaration.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- 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, java.lang.String namespace)
Convenience method. Returns a top-level attribute group definition.- Specified by:
getAttributeGroup
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.- Returns:
- A top-level attribute group definition or null if such definition does not exist.
-
getAttributeGroup
public org.apache.xerces.xs.XSAttributeGroupDefinition getAttributeGroup(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level attribute group definition.- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- 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, java.lang.String namespace)
Convenience method. Returns a top-level model group definition.- Specified by:
getModelGroupDefinition
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.- Returns:
- A top-level model group definition definition or null if such definition does not exist.
-
getModelGroupDefinition
public org.apache.xerces.xs.XSModelGroupDefinition getModelGroupDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level model group definition.- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- Returns:
- A top-level model group definition definition or null if such definition does not exist.
-
getIDCDefinition
public org.apache.xerces.xs.XSIDCDefinition getIDCDefinition(java.lang.String name, java.lang.String namespace)
Convenience method. Returns a top-level model group definition.- Specified by:
getIDCDefinition
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.- Returns:
- A top-level model group definition definition or null if such definition does not exist.
-
getIDCDefinition
public org.apache.xerces.xs.XSIDCDefinition getIDCDefinition(java.lang.String name, java.lang.String namespace, java.lang.String loc)
Convenience method. Returns a top-level model group definition.- Parameters:
name
- The name of the definition.namespace
- The namespace of the definition, otherwise null.loc
- The schema location where the component was defined- 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, java.lang.String namespace)
Description copied from interface:org.apache.xerces.xs.XSModel
Convenience method. Returns a top-level notation declaration.- Specified by:
getNotationDeclaration
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
name
- The name of the declaration.namespace
- The namespace of the declaration, otherwisenull
.- Returns:
- A top-level notation declaration or
null
if such a declaration does not exist. - See Also:
XSModel.getNotationDeclaration(String, String)
-
getNotationDeclaration
public org.apache.xerces.xs.XSNotationDeclaration getNotationDeclaration(java.lang.String name, java.lang.String namespace, java.lang.String loc)
-
getAnnotations
public org.apache.xerces.xs.XSObjectList getAnnotations()
[annotations]: a set of annotations if it exists, otherwise an emptyXSObjectList
.- Specified by:
getAnnotations
in interfaceorg.apache.xerces.xs.XSModel
-
hasIDConstraints
public boolean hasIDConstraints()
REVISIT: to expose identity constraints from XSModel. For now, we only expose whether there are any IDCs. We also need to add these methods to the public XSModel interface.
-
getSubstitutionGroup
public org.apache.xerces.xs.XSObjectList getSubstitutionGroup(org.apache.xerces.xs.XSElementDeclaration head)
Convenience method. Returns a list containing the members of the substitution group for the givenXSElementDeclaration
or an emptyXSObjectList
if the substitution group contains no members.- Specified by:
getSubstitutionGroup
in interfaceorg.apache.xerces.xs.XSModel
- Parameters:
head
- The substitution group head.- Returns:
- A list containing the members of the substitution group
for the given
XSElementDeclaration
or an emptyXSObjectList
if the substitution group contains no members.
-
getLength
public int getLength()
The number ofXSNamespaceItem
s in the list. The range of valid child object indices is 0 tolength-1
inclusive.- Specified by:
getLength
in interfaceorg.apache.xerces.xs.XSNamespaceItemList
-
item
public org.apache.xerces.xs.XSNamespaceItem item(int index)
Returns theindex
th item in the collection ornull
ifindex
is greater than or equal to the number of objects in the list. The index starts at 0.- Specified by:
item
in interfaceorg.apache.xerces.xs.XSNamespaceItemList
- Parameters:
index
- index into the collection.- Returns:
- The
XSNamespaceItem
at theindex
th position in theXSNamespaceItemList
, ornull
if the index specified is not valid.
-
get
public java.lang.Object get(int index)
- Specified by:
get
in interfacejava.util.List
- Specified by:
get
in classjava.util.AbstractList
-
size
public int size()
- Specified by:
size
in interfacejava.util.Collection
- Specified by:
size
in interfacejava.util.List
- Specified by:
size
in classjava.util.AbstractCollection
-
iterator
public java.util.Iterator iterator()
- Specified by:
iterator
in interfacejava.util.Collection
- Specified by:
iterator
in interfacejava.lang.Iterable
- Specified by:
iterator
in interfacejava.util.List
- Overrides:
iterator
in classjava.util.AbstractList
-
listIterator
public java.util.ListIterator listIterator()
- Specified by:
listIterator
in interfacejava.util.List
- Overrides:
listIterator
in classjava.util.AbstractList
-
listIterator
public java.util.ListIterator listIterator(int index)
- Specified by:
listIterator
in interfacejava.util.List
- Overrides:
listIterator
in classjava.util.AbstractList
-
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray
in interfacejava.util.Collection
- Specified by:
toArray
in interfacejava.util.List
- Overrides:
toArray
in classjava.util.AbstractCollection
-
toArray
public java.lang.Object[] toArray(java.lang.Object[] a)
- Specified by:
toArray
in interfacejava.util.Collection
- Specified by:
toArray
in interfacejava.util.List
- Overrides:
toArray
in classjava.util.AbstractCollection
-
-