## org.apache.xerces.xs
Interface XSModel

public interface XSModel

This interface represents an XML Schema.

Method Summary
`XSObjectList` `getAnnotations()` [annotations]: a set of annotations if it exists, otherwise an empty `XSObjectList`.
`XSAttributeDeclaration` `getAttributeDeclaration(java.lang.String name, java.lang.String namespace)` Convenience method.
`XSAttributeGroupDefinition` `getAttributeGroup(java.lang.String name, java.lang.String namespace)` Convenience method.
`XSNamedMap` `getComponents(short objectType)` Returns a list of top-level components, i.e.
`XSNamedMap` `getComponentsByNamespace(short objectType, java.lang.String namespace)` Convenience method.
`XSElementDeclaration` `getElementDeclaration(java.lang.String name, java.lang.String namespace)` Convenience method.
`XSModelGroupDefinition` `getModelGroupDefinition(java.lang.String name, java.lang.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(java.lang.String name, java.lang.String namespace)` Convenience method.
`XSObjectList` `getSubstitutionGroup(XSElementDeclaration head)` Convenience method.
`XSTypeDefinition` `getTypeDefinition(java.lang.String name, java.lang.String namespace)` Convenience method.

Method Detail

### getNamespaces

    public StringList getNamespaces()

  Convenience method. Returns a list of all namespaces that belong to this schema. The value `null` is not a valid namespace name, but if there are components that do not have a target namespace , `null` is included in this list.

### getNamespaceItems

    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.

### getComponents

    public 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.

### getComponentsByNamespace

    public 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.
  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`.

### getAnnotations

    public XSObjectList getAnnotations()

  [annotations]: a set of annotations if it exists, otherwise an empty `XSObjectList`.

### getElementDeclaration

    public XSElementDeclaration getElementDeclaration(java.lang.String name,
                                                      java.lang.String namespace)

  Convenience method. Returns a top-level element declaration.
  Parameters:
    `name` - The name of the declaration.
    `namespace` - The namespace of the declaration, otherwise `null`.
  Returns:
    A top-level element declaration or `null` if such a declaration does not exist.

### getAttributeDeclaration

    public XSAttributeDeclaration getAttributeDeclaration(java.lang.String name,
                                                          java.lang.String namespace)

  Convenience method. Returns a top-level attribute declaration.
  Parameters:
    `name` - The name of the declaration.
    `namespace` - The namespace of the declaration, otherwise `null`.
  Returns:
    A top-level attribute declaration or `null` if such a declaration does not exist.

### getTypeDefinition

    public XSTypeDefinition getTypeDefinition(java.lang.String name,
                                              java.lang.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 declaration, otherwise `null`.
  Returns:
    An `XSTypeDefinition` or `null` if such a definition does not exist.

### getAttributeGroup

    public XSAttributeGroupDefinition getAttributeGroup(java.lang.String name,
                                                        java.lang.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 a definition does not exist.

### getModelGroupDefinition

    public XSModelGroupDefinition getModelGroupDefinition(java.lang.String name,
                                                          java.lang.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 or `null` if such a definition does not exist.

### getNotationDeclaration

    public XSNotationDeclaration getNotationDeclaration(java.lang.String name,
                                                        java.lang.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.

### getSubstitutionGroup

    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.

Copyright © 1999-2007 The Apache Software Foundation. All Rights Reserved.