org.apache.xerces.impl.xs
Class XSModelImpl

java.lang.Object
  |
  +--org.apache.xerces.impl.xs.XSModelImpl
All Implemented Interfaces:
XSModel

public class XSModelImpl
extends java.lang.Object
implements XSModel

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

Version:
$Id: XSModelImpl.java,v 1.4 2002/06/17 18:41:45 elena Exp $
Author:
Sandy Gao, IBM

Constructor Summary
XSModelImpl(SchemaGrammar[] grammars)
          Construct an XSModelImpl, by storing some grammars and grammars imported by them to this object.
 
Method Summary
 XSObjectList getAnnotations()
          {annotations} A set of annotations.
 XSAttributeDeclaration getAttributeDecl(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 getElementDecl(java.lang.String name, java.lang.String namespace)
          Convenience method.
 XSModelGroupDefinition getModelGroupDefinition(java.lang.String name, java.lang.String namespace)
          Convenience method.
 ObjectList getNamespaceItems()
          Convenience method.
 StringList getNamespaces()
          Convenience method.
 XSNotationDeclaration getNotationDecl(java.lang.String name, java.lang.String namespace)
          Convenience method.
 XSTypeDefinition getTypeDefinition(java.lang.String name, java.lang.String namespace)
          Convenience method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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
Method Detail

getNamespaces

public StringList getNamespaces()
Convenience method. Returns a list of all namespaces that belong to this schema.

Specified by:
getNamespaces in interface XSModel
Returns:
A list of all namespaces that belong to this schema or null if all components don't have a targetNamespace.

getNamespaceItems

public ObjectList getNamespaceItems()
Convenience method. Returns a list of all [namespace schema information item]s. There is one such item for each namespace (including the null namespace). Enties of the returned enumeration are instances of XSNamespaceItem interface.

Specified by:
getNamespaceItems in interface XSModel
Returns:
A list of namespace items that belong to this schema.

getComponents

public XSNamedMap getComponents(short objectType)
Returns a list of top-level components, i.e. element declarations, attribute declarations, etc.

Specified by:
getComponents in interface XSModel
Parameters:
objectType - The type of the declaration, i.e. ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, etc.
Returns:
A list of top-level definition of the specified type in objectType or null.

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.

Specified by:
getComponentsByNamespace in interface XSModel
Parameters:
objectType - The type of the declaration, i.e. ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, etc.
namespace - The namespace to which declaration belong or null (for components with no targetNamespace).
Returns:
A list of top-level definition of the specified type in objectType and defined in the specified namespace or null.

getTypeDefinition

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

getAttributeDecl

public XSAttributeDeclaration getAttributeDecl(java.lang.String name,
                                               java.lang.String namespace)
Convenience method. Returns a top-level attribute declaration.

Specified by:
getAttributeDecl in interface 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.

getElementDecl

public XSElementDeclaration getElementDecl(java.lang.String name,
                                           java.lang.String namespace)
Convenience method. Returns a top-level element declaration.

Specified by:
getElementDecl in interface 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.

getAttributeGroup

public XSAttributeGroupDefinition getAttributeGroup(java.lang.String name,
                                                    java.lang.String namespace)
Convenience method. Returns a top-level attribute group definition.

Specified by:
getAttributeGroup in interface 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.

getModelGroupDefinition

public XSModelGroupDefinition getModelGroupDefinition(java.lang.String name,
                                                      java.lang.String namespace)
Convenience method. Returns a top-level model group definition.

Specified by:
getModelGroupDefinition in interface 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.

getNotationDecl

public XSNotationDeclaration getNotationDecl(java.lang.String name,
                                             java.lang.String namespace)
Convenience method. Returns a top-level notation declaration.

Specified by:
getNotationDecl in interface XSModel
Parameters:
name - The name of the declaration.
namespace - The namespace of the definition, otherwise null.
Returns:
A top-level notation declaration or null if such declaration does not exist.

getAnnotations

public XSObjectList getAnnotations()
{annotations} A set of annotations.

Specified by:
getAnnotations in interface XSModel


Copyright © 1999-2002 Apache XML Project. All Rights Reserved.