| /* |
| * Copyright (c) 2001 World Wide Web Consortium, |
| * (Massachusetts Institute of Technology, Institut National de |
| * Recherche en Informatique et en Automatique, Keio University). All |
| * Rights Reserved. This program is distributed under the W3C's Software |
| * Intellectual Property License. This program is distributed in the |
| * hope that it will be useful, but WITHOUT ANY WARRANTY; without even |
| * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
| * PURPOSE. |
| * See W3C License http://www.w3.org/Consortium/Legal/ for more details. |
| */ |
| |
| package org.apache.xerces.dom3.as; |
| |
| /** |
| * The <code>ASObject</code> interface is analogous to a <code>Node</code> in |
| * , e.g., an element declaration. |
| * <p>Opaque. |
| * <p>See also the <a href='http://www.w3.org/TR/2001/WD-DOM-Level-3-ASLS-20011025'>Document Object Model (DOM) Level 3 Abstract Schemas and Load |
| and Save Specification</a>. |
| */ |
| public interface ASObject { |
| // ASObjectType |
| /** |
| * The node is an <code>ASElementDeclaration</code>. |
| */ |
| public static final short AS_ELEMENT_DECLARATION = 1; |
| /** |
| * The node is an <code>ASAttributeDeclaration</code>. |
| */ |
| public static final short AS_ATTRIBUTE_DECLARATION = 2; |
| /** |
| * The node is a <code>ASNotationDeclaration</code>. |
| */ |
| public static final short AS_NOTATION_DECLARATION = 3; |
| /** |
| * The node is an <code>ASEntityDeclaration</code>. |
| */ |
| public static final short AS_ENTITY_DECLARATION = 4; |
| /** |
| * The node is a <code>ASContentModel</code>. |
| */ |
| public static final short AS_CONTENTMODEL = 5; |
| /** |
| * The node is a <code>ASModel</code>. |
| */ |
| public static final short AS_MODEL = 6; |
| |
| /** |
| * A code representing the underlying object as defined above. |
| */ |
| public short getAsNodeType(); |
| |
| /** |
| * The <code>ASModel</code> object associated with this |
| * <code>ASObject</code>. For a node of type <code>AS_MODEL</code>, this |
| * is <code>null</code>. |
| */ |
| public ASModel getOwnerASModel(); |
| /** |
| * The <code>ASModel</code> object associated with this |
| * <code>ASObject</code>. For a node of type <code>AS_MODEL</code>, this |
| * is <code>null</code>. |
| */ |
| public void setOwnerASModel(ASModel ownerASModel); |
| |
| /** |
| * The <code>name</code> of this <code>ASObject</code> depending on the |
| * <code>ASObject</code> type. |
| */ |
| public String getNodeName(); |
| /** |
| * The <code>name</code> of this <code>ASObject</code> depending on the |
| * <code>ASObject</code> type. |
| */ |
| public void setNodeName(String nodeName); |
| |
| /** |
| * The namespace prefix of this node, or <code>null</code> if it is |
| * unspecified. |
| */ |
| public String getPrefix(); |
| /** |
| * The namespace prefix of this node, or <code>null</code> if it is |
| * unspecified. |
| */ |
| public void setPrefix(String prefix); |
| |
| /** |
| * Returns the local part of the qualified name of this |
| * <code>ASObject</code>. |
| */ |
| public String getLocalName(); |
| /** |
| * Returns the local part of the qualified name of this |
| * <code>ASObject</code>. |
| */ |
| public void setLocalName(String localName); |
| |
| /** |
| * The namespace URI of this node, or <code>null</code> if it is |
| * unspecified. defines how a namespace URI is attached to schema |
| * components. |
| */ |
| public String getNamespaceURI(); |
| /** |
| * The namespace URI of this node, or <code>null</code> if it is |
| * unspecified. defines how a namespace URI is attached to schema |
| * components. |
| */ |
| public void setNamespaceURI(String namespaceURI); |
| |
| /** |
| * Creates a copy of this <code>ASObject</code>. See text for |
| * <code>cloneNode</code> off of <code>Node</code> but substitute AS |
| * functionality. |
| * @param deep Setting the <code>deep</code> flag on, causes the whole |
| * subtree to be duplicated. Setting it to <code>false</code> only |
| * duplicates its immediate child nodes. |
| * @return Cloned <code>ASObject</code>. |
| */ |
| public ASObject cloneASObject(boolean deep); |
| |
| } |