FileDocCategorySizeDatePackage
ASModel.javaAPI DocApache Xerces 3.0.110750Fri Sep 14 20:33:52 BST 2007org.apache.xerces.dom3.as

ASModel

public interface ASModel implements ASObject
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.

Fields Summary
Constructors Summary
Methods Summary
public voidaddASModel(org.apache.xerces.dom3.as.ASModel abstractSchema)
This method will allow the nesting or "importation" of ASModels.

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

public ASAttributeDeclarationcreateASAttributeDeclaration(java.lang.String namespaceURI, java.lang.String name)
Creates an attribute declaration.

param
namespaceURI The namespace URI of the attribute being declared.
param
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.
return
A new ASAttributeDeclaration object with appropriate attributes set by input parameters.
exception
DOMException INVALID_CHARACTER_ERR: Raised if the input name parameter contains an illegal character.

public ASContentModelcreateASContentModel(int minOccurs, int maxOccurs, short operator)
Creates an object which describes part of an ASElementDeclaration's content model.

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

public ASElementDeclarationcreateASElementDeclaration(java.lang.String namespaceURI, java.lang.String name)
Creates an element declaration for the element type specified.

param
namespaceURI The namespace URI of the element type being declared.
param
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.
return
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.
exception
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public ASEntityDeclarationcreateASEntityDeclaration(java.lang.String name)
Creates an ASEntityDeclaration.

param
name The name of the entity being declared.
return
A new ASEntityDeclaration object with entityName attribute set to name.
exception
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public ASNotationDeclarationcreateASNotationDeclaration(java.lang.String namespaceURI, java.lang.String name, java.lang.String systemId, java.lang.String publicId)
Creates a new notation declaration.

param
namespaceURI The namespace URI of the notation being declared.
param
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.
param
systemId The system identifier for the notation declaration.
param
publicId The public identifier for the notation declaration.
return
A new ASNotationDeclaration object with notationName attribute set to name and publicId and systemId set to the corresponding fields.
exception
DOMException INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

public ASObjectListgetASModels()
To retrieve a list of nested ASModels without reference to names.

return
A list of ASModels.

public java.lang.StringgetAsHint()
The hint to locating an ASModel.

public java.lang.StringgetAsLocation()
The URI reference.

public ASNamedObjectMapgetAttributeDeclarations()
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 ASNamedObjectMapgetContentModelDeclarations()
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 ASNamedObjectMapgetElementDeclarations()
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 ASNamedObjectMapgetEntityDeclarations()
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 booleangetIsNamespaceAware()
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 ASNamedObjectMapgetNotationDeclarations()
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 shortgetUsageLocation()
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 voidremoveAS(org.apache.xerces.dom3.as.ASModel as)
Removes only the specified ASModel from the list of ASModels.

param
as AS to be removed.

public voidsetAsHint(java.lang.String asHint)
The hint to locating an ASModel.

public voidsetAsLocation(java.lang.String asLocation)
The URI reference.

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

return
true if the ASModel is valid, false otherwise.