## org.apache.xerces.dom
Class PSVIDocumentImpl

    java.lang.Object
      org.apache.xerces.dom.NodeImpl
          org.apache.xerces.dom.ChildNode
              org.apache.xerces.dom.ParentNode
                  org.apache.xerces.dom.CoreDocumentImpl
                      org.apache.xerces.dom.DocumentImpl
                          org.apache.xerces.dom.PSVIDocumentImpl

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, org.w3c.dom.Document, org.w3c.dom.events.DocumentEvent, org.w3c.dom.events.EventTarget, org.w3c.dom.Node, org.w3c.dom.NodeList, org.w3c.dom.ranges.DocumentRange, org.w3c.dom.traversal.DocumentTraversal

    public class PSVIDocumentImpl

extends DocumentImpl

Our own document implementation, which knows how to create an element with PSVI information.

Version:
  $Id: PSVIDocumentImpl.java 447266 2006-09-18 05:57:49Z mrglavas $
Author:
  Sandy Gao, IBM
See Also:
  Serialized Form

# INTERNAL:

  Usage of this class is not supported. It may be altered or removed at any time.

Field Summary

Fields inherited from class org.apache.xerces.dom.DocumentImpl
`eventListeners, iterators, mutationEvents, ranges`

Fields inherited from class org.apache.xerces.dom.CoreDocumentImpl
`actualEncoding, allowGrammarAccess, changes, docElement, docType, encoding, errorChecking, fDocumentURI, identifiers, standalone, userData, version, xmlVersionChanged`

Fields inherited from class org.apache.xerces.dom.ParentNode
`firstChild, fNodeListCache, ownerDocument`

Fields inherited from class org.apache.xerces.dom.ChildNode
`nextSibling, previousSibling`

Fields inherited from class org.apache.xerces.dom.NodeImpl

`DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_IS_CONTAINED, DOCUMENT_POSITION_PRECEDING, ELEMENT_DEFINITION_NODE, FIRSTCHILD, flags, HASSTRING, ID, IGNORABLEWS, NORMALIZED, OWNED, ownerNode, READONLY, SPECIFIED, SYNCCHILDREN, SYNCDATA, TREE_POSITION_ANCESTOR, TREE_POSITION_DESCENDANT, TREE_POSITION_DISCONNECTED, TREE_POSITION_EQUIVALENT, TREE_POSITION_FOLLOWING, TREE_POSITION_PRECEDING, TREE_POSITION_SAME_NODE`

Fields inherited from interface org.w3c.dom.Node

`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Constructor Summary
`PSVIDocumentImpl()` Create a document.
`PSVIDocumentImpl(org.w3c.dom.DocumentType doctype)` For DOM2 support.

Method Summary
`org.w3c.dom.Node` `cloneNode(boolean deep)` Deep-clone a document, including fixing ownerDoc for the cloned children.
`org.w3c.dom.Attr` `createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName)` Create an attribute with PSVI information
`org.w3c.dom.Attr` `createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String localName)` Create an attribute with PSVI information
`org.w3c.dom.Element` `createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName)` Create an element with PSVI information
`org.w3c.dom.Element` `createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String localpart)` Create an element with PSVI information
`org.w3c.dom.DOMConfiguration` `getDomConfig()` The configuration used when `Document.normalizeDocument` is invoked.
`org.w3c.dom.DOMImplementation` `getImplementation()` Retrieve information describing the abilities of this particular DOM implementation.

Methods inherited from class org.apache.xerces.dom.DocumentImpl
`addEventListener, copyEventListeners, createEvent, createNodeIterator, createNodeIterator, createRange, createTreeWalker, createTreeWalker, dispatchAggregateEvents, dispatchAggregateEvents, dispatchEvent, dispatchEventToSubtree, dispatchingEventToSubtree, getEventListeners, removeEventListener, saveEnclosingAttr, setEventListeners`

Methods inherited from class org.apache.xerces.dom.CoreDocumentImpl

`abort, adoptNode, callUserDataHandlers, changed, changes, checkDOMNSErr, checkNamespaceWF, checkQName, clearIdentifiers, clone, cloneNode, createAttribute, createCDATASection, createComment, createDocumentFragment, createDocumentType, createElement, createElementDefinition, createEntity, createEntityReference, createNotation, createProcessingInstruction, createTextNode, getAsync, getBaseURI, getDoctype, getDocumentElement, getDocumentURI, getElementById, getElementsByTagName, getElementsByTagNameNS, getEncoding, getErrorChecking, getFeature, getIdentifier, getIdentifiers, getInputEncoding, getNodeName, getNodeNumber, getNodeNumber, getNodeType, getOwnerDocument, getStandalone, getStrictErrorChecking, getTextContent, getUserData, getUserData, getUserDataRecord, getVersion, getXmlEncoding, getXmlStandalone, getXmlVersion, importNode, insertBefore, isKidOK, isValidQName, isXMLName, load, loadXML, normalizeDocument, putIdentifier, removeChild, removeIdentifier, renameNode, replaceChild, saveXML, setAsync, setDocumentURI, setEncoding, setErrorChecking, setInputEncoding, setStandalone, setStrictErrorChecking, setTextContent, setUserData, setUserData, setVersion, setXmlEncoding, setXmlStandalone, setXmlVersion, undeferChildren`

Methods inherited from class org.apache.xerces.dom.ParentNode
`getChildNodes, getChildNodesUnoptimized, getFirstChild, getLastChild, getLength, hasChildNodes, isEqualNode, item, normalize, setOwnerDocument, setReadOnly, synchronizeChildren`

Methods inherited from class org.apache.xerces.dom.ChildNode
`getNextSibling, getParentNode, getPreviousSibling`

Methods inherited from class org.apache.xerces.dom.NodeImpl

`addEventListener, appendChild, compareDocumentPosition, compareTreePosition, dispatchEvent, getAttributes, getContainer, getLocalName, getNamespaceURI, getNodeValue, getPrefix, getReadOnly, getUserData, getUserData, getUserDataRecord, hasAttributes, isDefaultNamespace, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, needsSyncChildren, removeEventListener, setNodeValue, setPrefix, setUserData, setUserData, synchronizeData, toString`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.w3c.dom.Node
`appendChild, compareDocumentPosition, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeValue, getParentNode, getPrefix, getPreviousSibling, getUserData, hasAttributes, hasChildNodes, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, setNodeValue, setPrefix, setUserData`

Constructor Detail

### PSVIDocumentImpl

    public PSVIDocumentImpl()

  Create a document.

### PSVIDocumentImpl

    public PSVIDocumentImpl(org.w3c.dom.DocumentType doctype)

  For DOM2 support. The createDocument factory method is in DOMImplementation.

Method Detail

### cloneNode

    public org.w3c.dom.Node cloneNode(boolean deep)

  Deep-clone a document, including fixing ownerDoc for the cloned children. Note that this requires bypassing the WRONG_DOCUMENT_ERR protection. I've chosen to implement it by calling importNode which is DOM Level 2.

  Specified by:
    `cloneNode` in interface `org.w3c.dom.Node`
  Overrides:
    `cloneNode` in class `DocumentImpl`
  Parameters:
    `deep` - boolean, iff true replicate children
  Returns:
    org.w3c.dom.Node
  See Also:
    `

    Example: Cloning a Text node will copy both the node and the text it contains.

    Example: Cloning something that has children -- Element or Attr, for example -- will _not_ clone those children unless a "deep clone" has been requested. A shallow clone of an Attr node will yield an empty Attr of the same name.

    NOTE: Clones will always be read/write, even if the node being cloned is read-only, to permit applications using only the DOM API to obtain editable copies of locked portions of the tree.

    `

### getImplementation

    public org.w3c.dom.DOMImplementation getImplementation()

  Retrieve information describing the abilities of this particular DOM implementation. Intended to support applications that may be using DOMs retrieved from several different sources, potentially with different underlying representations.

  Specified by:
    `getImplementation` in interface `org.w3c.dom.Document`
  Overrides:
    `getImplementation` in class `DocumentImpl`

### createElementNS

    public org.w3c.dom.Element createElementNS(java.lang.String namespaceURI,
                                               java.lang.String qualifiedName)
                                        throws org.w3c.dom.DOMException

  Create an element with PSVI information

  Specified by:
    `createElementNS` in interface `org.w3c.dom.Document`
  Overrides:
    `createElementNS` in class `CoreDocumentImpl`
  Parameters:
    `namespaceURI` - The namespace URI of the element to create.
    `qualifiedName` - The qualified name of the element type to instantiate.
  Returns:
    Element A new Element object with the following attributes:
  Throws:
    `org.w3c.dom.DOMException` - INVALID_CHARACTER_ERR: Raised if the specified name contains an invalid character.

### createElementNS

    public org.w3c.dom.Element createElementNS(java.lang.String namespaceURI,
                                               java.lang.String qualifiedName,
                                               java.lang.String localpart)
                                        throws org.w3c.dom.DOMException

  Create an element with PSVI information

  Overrides:
    `createElementNS` in class `CoreDocumentImpl`
  Parameters:
    `namespaceURI` - The namespace URI of the element to create.
    `qualifiedName` - The qualified name of the element type to instantiate.
    `localpart` - The local name of the attribute to instantiate.
  Returns:
    Element A new Element object with the following attributes:
  Throws:
    `org.w3c.dom.DOMException` - INVALID_CHARACTER_ERR: Raised if the specified name contains an invalid character.

### createAttributeNS

    public org.w3c.dom.Attr createAttributeNS(java.lang.String namespaceURI,
                                              java.lang.String qualifiedName)
                                       throws org.w3c.dom.DOMException

  Create an attribute with PSVI information

  Specified by:
    `createAttributeNS` in interface `org.w3c.dom.Document`
  Overrides:
    `createAttributeNS` in class `CoreDocumentImpl`
  Parameters:
    `namespaceURI` - The namespace URI of the attribute to create. When it is null or an empty string, this method behaves like createAttribute.
    `qualifiedName` - The qualified name of the attribute to instantiate.
  Returns:
    Attr A new Attr object.
  Throws:
    `org.w3c.dom.DOMException` - INVALID_CHARACTER_ERR: Raised if the specified name contains an invalid character.

### createAttributeNS

    public org.w3c.dom.Attr createAttributeNS(java.lang.String namespaceURI,
                                              java.lang.String qualifiedName,
                                              java.lang.String localName)
                                       throws org.w3c.dom.DOMException

  Create an attribute with PSVI information

  Overrides:
    `createAttributeNS` in class `CoreDocumentImpl`
  Parameters:
    `namespaceURI` - The namespace URI of the attribute to create. When it is null or an empty string, this method behaves like createAttribute.
    `qualifiedName` - The qualified name of the attribute to instantiate.
    `localName` - The local name of the attribute to instantiate.
  Returns:
    Attr A new Attr object.
  Throws:
    `org.w3c.dom.DOMException` - INVALID_CHARACTER_ERR: Raised if the specified name contains an invalid character.

### getDomConfig

    public org.w3c.dom.DOMConfiguration getDomConfig()

  The configuration used when `Document.normalizeDocument` is invoked.

  Specified by:
    `getDomConfig` in interface `org.w3c.dom.Document`
  Overrides:
    `getDomConfig` in class `CoreDocumentImpl`
  Since:
    DOM Level 3

Copyright © 1999-2006 The Apache Software Foundation. All Rights Reserved.