public class

XSModelImpl

extends Object
implements XSModel
java.lang.Object
   ↳ org.apache.xerces.impl.xs.XSModelImpl

Class Overview

Implements XSModel: a read-only interface that represents an XML Schema, which could be components from different namespaces.

Summary

Public Constructors
XSModelImpl(SchemaGrammar[] grammars)
Construct an XSModelImpl, by storing some grammars and grammars imported by them to this object.
Public Methods
synchronized XSObjectList getAnnotations()
{annotations} A set of annotations.
XSAttributeDeclaration getAttributeDeclaration(String name, String namespace)
Convenience method.
XSAttributeGroupDefinition getAttributeGroup(String name, String namespace)
Convenience method.
synchronized XSNamedMap getComponents(short objectType)
Returns a list of top-level components, i.e.
synchronized XSNamedMap getComponentsByNamespace(short objectType, String namespace)
Convenience method.
XSElementDeclaration getElementDeclaration(String name, String namespace)
Convenience method.
XSModelGroupDefinition getModelGroupDefinition(String name, String namespace)
Convenience method.
XSNamespaceItemList getNamespaceItems()
A set of namespace schema information information items (of type XSNamespaceItem), 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.
StringList getNamespaces()
Convenience method.
XSNotationDeclaration getNotationDeclaration(String name, String namespace)
Convenience method.
XSObjectList getSubstitutionGroup(XSElementDeclaration head)
Convenience method.
XSTypeDefinition getTypeDefinition(String name, String namespace)
Convenience method.
boolean hasIDConstraints()
REVISIT: to expose identity constraints from XSModel.
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.apache.xerces.xs.XSModel

Public Constructors

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

Public Methods

public synchronized XSObjectList getAnnotations ()

{annotations} A set of annotations.

public XSAttributeDeclaration getAttributeDeclaration (String name, String namespace)

Convenience method. Returns a top-level attribute declaration.

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.

public XSAttributeGroupDefinition getAttributeGroup (String name, String namespace)

Convenience method. Returns a top-level attribute group definition.

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.

public synchronized XSNamedMap getComponents (short objectType)

Returns a list of top-level components, i.e. element declarations, attribute declarations, etc.

Parameters
objectType The type of the declaration, i.e. ELEMENT_DECLARATION. Note that XSTypeDefinition.SIMPLE_TYPE and XSTypeDefinition.COMPLEX_TYPE can also be used as the objectType 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 empty XSNamedMap if no such definitions exist.

public synchronized XSNamedMap getComponentsByNamespace (short objectType, 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.

Parameters
objectType The type of the declaration, i.e. ELEMENT_DECLARATION.
namespace The namespace to which the declaration belongs or null (for components with no target namespace).
Returns
  • A list of top-level definitions of the specified type in objectType and defined in the specified namespace or an empty XSNamedMap.

public XSElementDeclaration getElementDeclaration (String name, String namespace)

Convenience method. Returns a top-level element declaration.

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.

public XSModelGroupDefinition getModelGroupDefinition (String name, String namespace)

Convenience method. Returns a top-level model group definition.

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.

public XSNamespaceItemList getNamespaceItems ()

A set of namespace schema information information items (of type XSNamespaceItem), 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.

public StringList getNamespaces ()

Convenience method. Returns a list of all namespaces that belong to this schema.

Returns
  • A list of all namespaces that belong to this schema or null if all components don't have a targetNamespace.

public XSNotationDeclaration getNotationDeclaration (String name, String namespace)

Convenience method. Returns a top-level notation declaration.

Parameters
name The name of the declaration.
namespace The namespace of the declaration, otherwise null.
Returns
  • A top-level notation declaration or null if such a declaration does not exist.

public XSObjectList getSubstitutionGroup (XSElementDeclaration head)

Convenience method. Returns a list containing the members of the substitution group for the given XSElementDeclaration or an empty XSObjectList if the substitution group contains no members.

Parameters
head The substitution group head.
Returns
  • A list containing the members of the substitution group for the given XSElementDeclaration or an empty XSObjectList if the substitution group contains no members.

public XSTypeDefinition getTypeDefinition (String name, String namespace)

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.
Returns
  • An XSTypeDefinition or null if such definition does not exist.

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.