/* * 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; import org.w3c.dom.DOMException; /** * @deprecated * This interface extends the Document interface with additional * methods for both document and AS editing. *

See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load and Save Specification. */ public interface DocumentAS { /** * The active external ASModel. Note that the active external * ASModel is responsible for consulting the internal * ASModel, so if an attribute is declared in the internal * ASModel and the corresponding ownerElements * points to a ASElementDeclarations defined in the active * external ASModel, changing the active external ASModel will cause the * ownerElements to be recomputed. If the * ownerElements is not defined in the newly active * external ASModel, the ownerElements will be an empty * node list. */ public ASModel getActiveASModel(); /** * The active external ASModel. Note that the active external * ASModel is responsible for consulting the internal * ASModel, so if an attribute is declared in the internal * ASModel and the corresponding ownerElements * points to a ASElementDeclarations defined in the active * external ASModel, changing the active external ASModel will cause the * ownerElements to be recomputed. If the * ownerElements is not defined in the newly active * external ASModel, the ownerElements will be an empty * node list. */ public void setActiveASModel(ASModel activeASModel); /** * A list of ASObjects of type AS_MODELs * associated with a document. The addAS method associates * a ASModel with a document. */ public ASObjectList getBoundASModels(); /** * A list of ASObjects of type AS_MODELs * associated with a document. The addAS method associates * a ASModel with a document. */ public void setBoundASModels(ASObjectList boundASModels); /** * Retrieve the internal ASModel of a document. * @return ASModel. */ public ASModel getInternalAS(); /** * Sets the internal subset ASModel of a document. This could * be null as a mechanism for "removal". * @param as ASModel to be the internal subset of the * document. */ public void setInternalAS(ASModel as); /** * Associate a ASModel with a document. Can be invoked * multiple times to result in a list of ASModels. Note * that only one internal ASModel is associated with the * document, however, and that only one of the possible list of * ASModels is active at any one time. * @param as ASModel to be associated with the document. */ public void addAS(ASModel as); /** * Removes a ASModel associated with a document. Can be * invoked multiple times to remove a number of these in the list of * ASModels. * @param as The ASModel to be removed. */ public void removeAS(ASModel as); /** * Gets the AS editing object describing this elementThis method needs to * be changed and others added. * @return ASElementDeclaration object if the implementation supports " * AS-EDIT" feature. Otherwise null. * @exception DOMException * NOT_FOUND_ERR: Raised if no ASModel is present. */ public ASElementDeclaration getElementDeclaration() throws DOMException; /** * Validates the document against the ASModel. * @exception DOMASException * */ public void validate() throws DOMASException; }