public interface

ASModel

implements ASObject
org.apache.xerces.dom3.as.ASModel
Known Indirect Subclasses

This interface is deprecated.
To begin with, an abstract schema is a generic structure that could contain both internal and external subsets. An ASModel is an abstract object that could map to a DTD , an XML Schema , a database schema, etc. An ASModel could represent either an internal or an external subset; hence an abstract schema could be composed of an ASModel representing the internal subset and an ASModel representing the external subset. Note that the ASModel representing the external subset could consult the ASModel representing the internal subset. Furthermore, the ASModel representing the internal subset could be set to null by the setInternalAS method as a mechanism for "removal". In addition, only one ASModel representing the external subset can be specified as "active" and it is possible that none are "active". Finally, the ASModel contains the factory methods needed to create a various types of ASObjects like ASElementDeclaration, ASAttributeDeclaration, etc.

See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load and Save Specification.

Summary

[Expand]
Inherited Constants
From interface org.apache.xerces.dom3.as.ASObject
Public Methods
abstract void addASModel(ASModel abstractSchema)
This method will allow the nesting or "importation" of ASModels.
abstract ASAttributeDeclaration createASAttributeDeclaration(String namespaceURI, String name)
Creates an attribute declaration.
abstract ASContentModel createASContentModel(int minOccurs, int maxOccurs, short operator)
Creates an object which describes part of an ASElementDeclaration's content model.
abstract ASElementDeclaration createASElementDeclaration(String namespaceURI, String name)
Creates an element declaration for the element type specified.
abstract ASEntityDeclaration createASEntityDeclaration(String name)
Creates an ASEntityDeclaration.
abstract ASNotationDeclaration createASNotationDeclaration(String namespaceURI, String name, String systemId, String publicId)
Creates a new notation declaration.
abstract ASObjectList getASModels()
To retrieve a list of nested ASModels without reference to names.
abstract String getAsHint()
The hint to locating an ASModel.
abstract String getAsLocation()
The URI reference.
abstract ASNamedObjectMap getAttributeDeclarations()
Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" attribute declarations.
abstract ASNamedObjectMap getContentModelDeclarations()
Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global content model declarations.
abstract ASNamedObjectMap getElementDeclarations()
Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" element declarations.
abstract ASNamedObjectMap getEntityDeclarations()
Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" entity declarations.
abstract boolean getIsNamespaceAware()
true if this ASModel defines the document structure in terms of namespaces and local names ; false if the document structure is defined only in terms of QNames.
abstract ASNamedObjectMap getNotationDeclarations()
Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" notation declarations.
abstract short getUsageLocation()
0 if used internally, 1 if used externally, 2 if not all.
abstract void removeAS(ASModel as)
Removes only the specified ASModel from the list of ASModels.
abstract void setAsHint(String asHint)
The hint to locating an ASModel.
abstract void setAsLocation(String asLocation)
The URI reference.
abstract boolean validate()
Determines if an ASModel itself is valid, i.e., confirming that it's well-formed and valid per its own formal grammar.
[Expand]
Inherited Methods
From interface org.apache.xerces.dom3.as.ASObject

Public Methods

public abstract void addASModel (ASModel abstractSchema)

This method will allow the nesting or "importation" of ASModels.

Parameters
abstractSchema ASModel to be set. Subsequent calls will nest the ASModels within the specified ownerASModel.

public abstract ASAttributeDeclaration createASAttributeDeclaration (String namespaceURI, String name)

Creates an attribute declaration.

Parameters
namespaceURI The namespace URI of the attribute being declared.
name The name of the attribute. The format of the name could be an NCName as defined by XML Namespaces or a Name as defined by XML 1.0; it's ASModel-dependent.
Returns
  • A new ASAttributeDeclaration object with appropriate attributes set by input parameters.
Throws
DOMException INVALID_CHARACTER_ERR: Raised if the input name parameter contains an illegal character.

public abstract ASContentModel createASContentModel (int minOccurs, int maxOccurs, short operator)

Creates an object which describes part of an ASElementDeclaration's content model.

Parameters
minOccurs The minimum occurrence for the subModels of this ASContentModel.
maxOccurs The maximum occurrence for the subModels of this ASContentModel.
operator operator of type AS_CHOICE, AS_SEQUENCE, AS_ALL or AS_NONE.
Returns
  • A new ASContentModel object.
Throws
DOMASException A DOMASException, e.g., minOccurs > maxOccurs.

public abstract ASElementDeclaration createASElementDeclaration (String namespaceURI, String name)

Creates an element declaration for the element type specified.

Parameters
namespaceURI The namespace URI of the element type being declared.
name The name of the element. The format of the name could be an NCName as defined by XML Namespaces or a Name as defined by XML 1.0; it's ASModel-dependent.
Returns
  • A new ASElementDeclaration object with name attribute set to tagname and namespaceURI set to systemId. Other attributes of the element declaration are set through ASElementDeclaration interface methods.
Throws
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public abstract ASEntityDeclaration createASEntityDeclaration (String name)

Creates an ASEntityDeclaration.

Parameters
name The name of the entity being declared.
Returns
  • A new ASEntityDeclaration object with entityName attribute set to name.
Throws
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public abstract ASNotationDeclaration createASNotationDeclaration (String namespaceURI, String name, String systemId, String publicId)

Creates a new notation declaration.

Parameters
namespaceURI The namespace URI of the notation being declared.
name The name of the notation. The format of the name could be an NCName as defined by XML Namespaces or a Name as defined by XML 1.0; it's ASModel-dependent.
systemId The system identifier for the notation declaration.
publicId The public identifier for the notation declaration.
Returns
  • A new ASNotationDeclaration object with notationName attribute set to name and publicId and systemId set to the corresponding fields.
Throws
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public abstract ASObjectList getASModels ()

To retrieve a list of nested ASModels without reference to names.

Returns
  • A list of ASModels.

public abstract String getAsHint ()

The hint to locating an ASModel.

public abstract String getAsLocation ()

The URI reference.

public abstract ASNamedObjectMap getAttributeDeclarations ()

Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" attribute declarations. If one attempts to add, set, or remove a node type other than the intended one, a hierarchy exception (or equivalent is thrown).

public abstract ASNamedObjectMap getContentModelDeclarations ()

Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global content model declarations. If one attempts to add, set, or remove a node type other than the intended one, a hierarchy exception (or equivalent is thrown).

public abstract ASNamedObjectMap getElementDeclarations ()

Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" element declarations. If one attempts to add, set, or remove a node type other than the intended one, a hierarchy exception (or equivalent is thrown).

public abstract ASNamedObjectMap getEntityDeclarations ()

Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" entity declarations. If one attempts to add, set, or remove a node type other than the intended one, a hierarchy exception (or equivalent is thrown).

public abstract boolean getIsNamespaceAware ()

true if this ASModel defines the document structure in terms of namespaces and local names ; false if the document structure is defined only in terms of QNames.

public abstract ASNamedObjectMap getNotationDeclarations ()

Instead of returning an all-in-one ASObject with ASModel methods, have discernible top-level/"global" notation declarations. If one attempts to add, set, or remove a node type other than the intended one, a hierarchy exception (or equivalent is thrown).

public abstract short getUsageLocation ()

0 if used internally, 1 if used externally, 2 if not all. An exception will be raised if it is incompatibly shared or in use as an internal subset.

public abstract void removeAS (ASModel as)

Removes only the specified ASModel from the list of ASModels.

Parameters
as AS to be removed.

public abstract void setAsHint (String asHint)

The hint to locating an ASModel.

public abstract void setAsLocation (String asLocation)

The URI reference.

public abstract boolean validate ()

Determines if an ASModel itself is valid, i.e., confirming that it's well-formed and valid per its own formal grammar.

Returns
  • true if the ASModel is valid, false otherwise.