All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.xerces.dom3.as.ElementEditAS Maven / Gradle / Ivy

Go to download

Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. The Apache Xerces2 parser is the reference implementation of XNI but other parser components, configurations, and parsers can be written using the Xerces Native Interface. For complete design and implementation documents, refer to the XNI Manual. Xerces2 is a fully conforming XML Schema 1.0 processor. A partial experimental implementation of the XML Schema 1.1 Structures and Datatypes Working Drafts (December 2009) and an experimental implementation of the XML Schema Definition Language (XSD): Component Designators (SCD) Candidate Recommendation (January 2010) are provided for evaluation. For more information, refer to the XML Schema page. Xerces2 also provides a complete implementation of the Document Object Model Level 3 Core and Load/Save W3C Recommendations and provides a complete implementation of the XML Inclusions (XInclude) W3C Recommendation. It also provides support for OASIS XML Catalogs v1.1. Xerces2 is able to parse documents written according to the XML 1.1 Recommendation, except that it does not yet provide an option to enable normalization checking as described in section 2.13 of this specification. It also handles namespaces according to the XML Namespaces 1.1 Recommendation, and will correctly serialize XML 1.1 documents if the DOM level 3 load/save APIs are in use.

There is a newer version: 2.12.2
Show newest version
/*
 * 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;

import org.w3c.dom.Attr;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

/**
 * @deprecated
 * This interface extends the Element interface with additional 
 * methods for guided document editing. An object implementing this 
 * interface must also implement NodeEditAS interface.
 * 

See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load and Save Specification. */ public interface ElementEditAS extends NodeEditAS { /** * The list of qualified element names defined in the abstract schema. */ public NodeList getDefinedElementTypes(); /** * Determines element content type. * @return Constant for one of EMPTY_CONTENTTYPE, ANY_CONTENTTYPE, * MIXED_CONTENTTYPE, ELEMENTS_CONTENTTYPE. */ public short contentType(); /** * Determines if the value for specified attribute can be set. * @param attrname Name of attribute. * @param attrval Value to be assigned to the attribute. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canSetAttribute(String attrname, String attrval); /** * Determines if an attribute node can be added with respect to the * validity check level.This is an attribute node, there is no need for * canSetAttributreNodeNS! * @param attrNode Node in which the attribute can possibly * be set. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canSetAttributeNode(Attr attrNode); /** * Determines if the attribute with given namespace and qualified name can * be created if not already present in the attribute list of the * element. If the attribute with same qualified name and namespaceURI * is already present in the elements attribute list it tests for the * value of the attribute and its prefix to the new value. See DOM core * setAttributeNS. * @param name Qualified name of attribute. * @param attrval Value to be assigned to the attribute. * @param namespaceURI namespaceURI of namespace. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canSetAttributeNS(String name, String attrval, String namespaceURI); /** * Verifies if an attribute by the given name can be removed. * @param attrname Name of attribute. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canRemoveAttribute(String attrname); /** * Verifies if an attribute by the given local name and namespace can be * removed. * @param attrname Local name of the attribute to be removed. * @param namespaceURI The namespace URI of the attribute to remove. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canRemoveAttributeNS(String attrname, String namespaceURI); /** * Determines if an attribute node can be removed. * @param attrNode The Attr node to remove from the * attribute list. * @return true if no reason it can't be done; * false if it can't be done. */ public boolean canRemoveAttributeNode(Node attrNode); /** * Returns an NodeList containing the possible * Element names that can appear as children of this type * of element. * @return List of possible children element types of this element. */ public NodeList getChildElements(); /** * Returns an NodeList containing the possible * Element names that can appear as a parent of this type * of element. * @return List of possible parent element types of this element. */ public NodeList getParentElements(); /** * Returns an NodeList containing all the possible * Attrs that can appear with this type of element. * @return List of possible attributes of this element. */ public NodeList getAttributeList(); /** * Determines if this element is defined in the currently active AS. * @param elemTypeName Name of element. * @return A boolean that is true if the element is defined, * false otherwise. */ public boolean isElementDefined(String elemTypeName); /** * Determines if this element in this namespace is defined in the * currently active AS. * @param elemTypeName Name of element. * @param namespaceURI namespaceURI of namespace. * @param name Qualified name of namespace. This is for sub-elements. * @return A boolean that is true if the element is defined, * false otherwise. */ public boolean isElementDefinedNS(String elemTypeName, String namespaceURI, String name); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy