/*
* 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 com.sun.org.apache.xerces.internal.dom3.as;
/**
* @deprecated
* The ASObject interface is analogous to a Node in
* , e.g., an element declaration.
*
Opaque. *
See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load
and Save Specification.
*/
public interface ASObject {
// ASObjectType
/**
* The node is an ASElementDeclaration.
*/
public static final short AS_ELEMENT_DECLARATION = 1;
/**
* The node is an ASAttributeDeclaration.
*/
public static final short AS_ATTRIBUTE_DECLARATION = 2;
/**
* The node is a ASNotationDeclaration.
*/
public static final short AS_NOTATION_DECLARATION = 3;
/**
* The node is an ASEntityDeclaration.
*/
public static final short AS_ENTITY_DECLARATION = 4;
/**
* The node is a ASContentModel.
*/
public static final short AS_CONTENTMODEL = 5;
/**
* The node is a ASModel.
*/
public static final short AS_MODEL = 6;
/**
* A code representing the underlying object as defined above.
*/
public short getAsNodeType();
/**
* The ASModel object associated with this
* ASObject. For a node of type AS_MODEL, this
* is null.
*/
public ASModel getOwnerASModel();
/**
* The ASModel object associated with this
* ASObject. For a node of type AS_MODEL, this
* is null.
*/
public void setOwnerASModel(ASModel ownerASModel);
/**
* The name of this ASObject depending on the
* ASObject type.
*/
public String getNodeName();
/**
* The name of this ASObject depending on the
* ASObject type.
*/
public void setNodeName(String nodeName);
/**
* The namespace prefix of this node, or null if it is
* unspecified.
*/
public String getPrefix();
/**
* The namespace prefix of this node, or null if it is
* unspecified.
*/
public void setPrefix(String prefix);
/**
* Returns the local part of the qualified name of this
* ASObject.
*/
public String getLocalName();
/**
* Returns the local part of the qualified name of this
* ASObject.
*/
public void setLocalName(String localName);
/**
* The namespace URI of this node, or null if it is
* unspecified. defines how a namespace URI is attached to schema
* components.
*/
public String getNamespaceURI();
/**
* The namespace URI of this node, or null if it is
* unspecified. defines how a namespace URI is attached to schema
* components.
*/
public void setNamespaceURI(String namespaceURI);
/**
* Creates a copy of this ASObject. See text for
* cloneNode off of Node but substitute AS
* functionality.
* @param deep Setting the deep flag on, causes the whole
* subtree to be duplicated. Setting it to false only
* duplicates its immediate child nodes.
* @return Cloned ASObject.
*/
public ASObject cloneASObject(boolean deep);
}