Google

: Class AbstractNode

com.icl.saxon.om
Class AbstractNode


java.lang.Object

  |

  +--com.icl.saxon.om.AbstractNode

Direct Known Subclasses:
NodeImpl, com.icl.saxon.tinytree.TinyNodeImpl

This class is an abstract implementation of the Saxon NodeInfo interface; it also contains concrete implementations of most of the DOM methods in terms of the NodeInfo methods. These include all the methods defined on the DOM Node class itself, and most of those defined on subclasses such as Document, Text, and Comment: because of the absence of multiple inheritance, this is the only way of making these methods reusable by multiple implementations. The class contains no data, and can be used as a common superclass for different implementations of Node and NodeInfo.


Field Summary
static char[] NODE_LETTER
          Chararacteristic letters to identify each type of node, indexed using the node type values.
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Fields inherited from interface com.icl.saxon.om.NodeInfo
ATTRIBUTE, COMMENT, ELEMENT, NAMESPACE, NODE, NONE, NUMBER_OF_TYPES, PI, ROOT, TEXT
 
Constructor Summary
AbstractNode()
           
 
Method Summary
 org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild)
          Adds the node newChild to the end of the list of children of this node.
 void appendData(java.lang.String arg)
          Append the string to the end of the character data of the node.
 org.w3c.dom.Node cloneNode(boolean deep)
          Returns a duplicate of this node, i.e., serves as a generic copy constructor for nodes.
abstract  int compareOrder(NodeInfo other)
          Determine the relative position of this node and another node, in document order.
 void copyStringValue(Outputter out)
          Copy the string-value of this node to a given outputter.
 org.w3c.dom.Attr createAttribute(java.lang.String name)
          Create an Attr of the given name.
 org.w3c.dom.Attr createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
          Create an attribute of the given qualified name and namespace URI.
 org.w3c.dom.CDATASection createCDATASection(java.lang.String data)
          Create a CDATASection node whose value is the specified string.
 org.w3c.dom.Comment createComment(java.lang.String data)
          Create a Comment node given the specified string.
 org.w3c.dom.DocumentFragment createDocumentFragment()
          Creates an empty DocumentFragment object.
 org.w3c.dom.Element createElement(java.lang.String tagName)
          Creates an element of the type specified.
 org.w3c.dom.Element createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
          Create an element of the given qualified name and namespace URI.
 org.w3c.dom.EntityReference createEntityReference(java.lang.String name)
          Create an EntityReference object.
 org.w3c.dom.ProcessingInstruction createProcessingInstruction(java.lang.String target, java.lang.String data)
          Create a ProcessingInstruction node given the specified name and data strings.
 org.w3c.dom.Text createTextNode(java.lang.String data)
          Create a Text node given the specified string.
 void deleteData(int offset, int count)
          Remove a range of 16-bit units from the node.
protected  void disallowUpdate()
          Internal method used to indicate that update operations are not allowed
abstract  java.lang.String generateId()
          Get a character string that uniquely identifies this node
 java.lang.String getAttribute(java.lang.String name)
          Retrieves an attribute value by name.
 org.w3c.dom.Attr getAttributeNode(java.lang.String name)
          Retrieves an attribute node by name.
 org.w3c.dom.Attr getAttributeNodeNS(java.lang.String namespaceURI, java.lang.String localName)
          Retrieves an Attr node by local name and namespace URI.
 java.lang.String getAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
          Retrieves an attribute value by local name and namespace URI.
 org.w3c.dom.NamedNodeMap getAttributes()
          Return a NamedNodeMap containing the attributes of this node (if it is an Element ) or null otherwise.
abstract  java.lang.String getAttributeValue(int fingerprint)
          Get the value of a given attribute of this node
abstract  java.lang.String getAttributeValue(java.lang.String uri, java.lang.String localName)
          Find the value of a given attribute of this node.
abstract  java.lang.String getBaseURI()
          Get the base URI for the node.
 org.w3c.dom.NodeList getChildNodes()
          Return a NodeList that contains all children of this node.
 int getColumnNumber()
          Get the column number of the node.
 java.lang.String getData()
          Get the character data of a Text or Comment node.
 java.lang.String getDisplayName()
          Get the display name of this node.
 org.w3c.dom.DocumentType getDoctype()
          Get the Document Type Declaration (see DocumentType ) associated with this document.
 org.w3c.dom.Element getDocumentElement()
          Get the outermost element.
 DocumentInfo getDocumentRoot()
          Get the root (document) node
 org.w3c.dom.Element getElementById(java.lang.String elementId)
          Return the Element whose ID is given by elementId .
 org.w3c.dom.NodeList getElementsByTagName(java.lang.String tagname)
          Return a NodeList of all the Elements with a given tag name in the order in which they are encountered in a preorder traversal of the Document tree.
 org.w3c.dom.NodeList getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
          Return a NodeList of all the Elements with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of the Document tree.
abstract  AxisEnumeration getEnumeration(byte axisNumber, NodeTest nodeTest)
          Return an enumeration over the nodes reached by the given axis from this node
abstract  int getFingerprint()
          Get the fingerprint of the node, used for matching names
 org.w3c.dom.Node getFirstChild()
          Get first child (DOM method)
 org.w3c.dom.DOMImplementation getImplementation()
          Get a DOMImplementation object that handles this document.
 org.w3c.dom.Node getLastChild()
          Get last child (DOM method)
 int getLength()
          Get the length of a Text or Comment node.
 int getLineNumber()
          Get the line number of the node within its source document entity.
abstract  java.lang.String getLocalName()
          Get the local name of this node.
 java.lang.String getName()
          Get the name of an attribute node (the QName) (DOM method)
abstract  int getNameCode()
          Get the name code of the node, used for displaying names
 java.lang.String getNamespaceURI()
          The namespace URI of this node, or null if it is unspecified.
 org.w3c.dom.Node getNextSibling()
          Get next sibling node (DOM method)
 java.lang.String getNodeName()
          Get the name of this node, following the DOM rules
 java.lang.String getNodeValue()
          Get the node value as defined in the DOM.
 org.w3c.dom.Node getOriginatingNode()
 org.w3c.dom.Document getOwnerDocument()
          Return the Document object associated with this node.
 org.w3c.dom.Element getOwnerElement()
          The Element node this attribute is attached to or null if this attribute is not in use.
abstract  NodeInfo getParent()
          Find the parent node of this node.
 org.w3c.dom.Node getParentNode()
          Find the parent node of this node (DOM method).
abstract  java.lang.String getPrefix()
          Get the prefix part of the name of this node.
 org.w3c.dom.Node getPreviousSibling()
          Get the previous sibling of the node (DOM method)
 java.lang.String getPublicId()
          Get the public identifier of the document entity containing this node.
 boolean getSpecified()
          If this attribute was explicitly given a value in the original document, this is true ; otherwise, it is false.
abstract  java.lang.String getSystemId()
          Get the system ID for the entity containing the node.
 java.lang.String getTagName()
          The name of the element (DOM interface).
abstract  java.lang.String getURI()
          Get the URI part of the name of this node.
 java.lang.String getValue()
          Return the character value of an attribute node (DOM method)
 boolean hasAttribute(java.lang.String name)
          Returns true when an attribute with a given name is specified on this element or has a default value, false otherwise.
 boolean hasAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
          Returns true when an attribute with a given local name and namespace URI is specified on this element or has a default value, false otherwise.
abstract  boolean hasAttributes()
          Returns whether this node has any attributes.
abstract  boolean hasChildNodes()
          Determine whether the node has any children.
 org.w3c.dom.Node importNode(org.w3c.dom.Node importedNode, boolean deep)
          Import a node from another document to this document.
 org.w3c.dom.Node insertBefore(org.w3c.dom.Node newChild, org.w3c.dom.Node refChild)
          Insert the node newChild before the existing child node refChild.
 void insertData(int offset, java.lang.String arg)
          Insert a string at the specified character offset.
abstract  boolean isSameNode(NodeInfo other)
          Determine whether this is the same node as another node
 boolean isSupported(java.lang.String feature, java.lang.String version)
          Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.
 void normalize()
          Puts all Text nodes in the full depth of the sub-tree underneath this Node, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes.
 void outputNamespaceNodes(Outputter out, boolean includeAncestors)
          Output all namespace nodes associated with this element.
 void removeAttribute(java.lang.String oldAttr)
          Removes the specified attribute.
 org.w3c.dom.Attr removeAttributeNode(org.w3c.dom.Attr oldAttr)
          Removes the specified attribute node.
 void removeAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
          Removes an attribute by local name and namespace URI.
 org.w3c.dom.Node removeChild(org.w3c.dom.Node oldChild)
          Remove the child node indicated by oldChild from the list of children, and returns it.
 org.w3c.dom.Node replaceChild(org.w3c.dom.Node newChild, org.w3c.dom.Node oldChild)
          Replace the child node oldChild with newChild in the list of children, and returns the oldChild node.
 void replaceData(int offset, int count, java.lang.String arg)
          Replace the characters starting at the specified 16-bit unit offset with the specified string.
 org.w3c.dom.Attr setAttributeNode(org.w3c.dom.Attr newAttr)
          Adds a new attribute node.
 org.w3c.dom.Attr setAttributeNodeNS(org.w3c.dom.Attr newAttr)
          Add a new attribute.
 void setAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String value)
          Adds a new attribute.
 void setData(java.lang.String data)
          Set the character data of a Text or Comment node.
 void setNodeValue(java.lang.String nodeValue)
          Set the node value.
 void setPrefix(java.lang.String prefix)
          Set the namespace prefix of this node.
 void setValue(java.lang.String value)
          Set the value of an attribute node.
 org.w3c.dom.Text splitText(int offset)
          Break this node into two nodes at the specified offset, keeping both in the tree as siblings.
 java.lang.String substringData(int offset, int count)
          Extract a range of data from a Text or Comment node.
 boolean supports(java.lang.String feature, java.lang.String version)
          Alternative to isSupported(), defined in a draft DOM spec
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.w3c.dom.Node
getNodeType
 
Methods inherited from interface com.icl.saxon.om.NodeInfo
copy, getNodeType, getStringValue
setSystemId
 

Field Detail

NODE_LETTER


public static final char[] NODE_LETTER
Chararacteristic letters to identify each type of node, indexed using the node type values. These are used as the initial letter of the result of generate-id()
Constructor Detail

AbstractNode


public AbstractNode()
Method Detail

isSameNode


public abstract boolean isSameNode(NodeInfo other)
Determine whether this is the same node as another node
Specified by:
isSameNode in interface NodeInfo
Returns:
true if this Node object and the supplied Node object represent the same node in the tree.

generateId


public abstract java.lang.String generateId()
Get a character string that uniquely identifies this node
Specified by:
generateId in interface NodeInfo
Returns:
a string.

getSystemId


public abstract java.lang.String getSystemId()
Get the system ID for the entity containing the node.
Specified by:
getSystemId in interface NodeInfo
Following copied from interface: com.icl.saxon.om.NodeInfo
Returns:
the System Identifier of the entity in the source document containing the node, or null if not known. Note this is not the same as the base URI: the base URI can be

getBaseURI


public abstract java.lang.String getBaseURI()
Get the base URI for the node. Default implementation for child nodes gets the base URI of the parent node.
Specified by:
getBaseURI in interface NodeInfo

getOriginatingNode


public org.w3c.dom.Node getOriginatingNode()

compareOrder


public abstract int compareOrder(NodeInfo other)
Determine the relative position of this node and another node, in document order. The other node will always be in the same document.
Specified by:
compareOrder in interface NodeInfo
Parameters:
other - The other node, whose position is to be compared with this node
Returns:
-1 if this node precedes the other node, +1 if it follows the other node, or 0 if they are the same node. (In this case, isSameNode() will always return true, and the two nodes will produce the same result for generateId())

getNameCode


public abstract int getNameCode()
Get the name code of the node, used for displaying names
Specified by:
getNameCode in interface NodeInfo
Following copied from interface: com.icl.saxon.om.NodeInfo
See Also:
allocate, getFingerprint

getFingerprint


public abstract int getFingerprint()
Get the fingerprint of the node, used for matching names
Specified by:
getFingerprint in interface NodeInfo

getNodeName


public java.lang.String getNodeName()
Get the name of this node, following the DOM rules
Specified by:
getNodeName in interface org.w3c.dom.Node
Returns:
The name of the node. For an element this is the element name, for an attribute it is the attribute name, as a QName. Other node types return conventional names such as "#text" or "#comment"

getPrefix


public abstract java.lang.String getPrefix()
Get the prefix part of the name of this node. This is the name before the ":" if any.
Specified by:
getPrefix in interface org.w3c.dom.Node
Returns:
the prefix part of the name. For an unnamed node, return "".

getURI


public abstract java.lang.String getURI()
Get the URI part of the name of this node. This is the URI corresponding to the prefix, or the URI of the default namespace if appropriate.
Specified by:
getURI in interface NodeInfo
Returns:
The URI of the namespace of this node. For an unnamed node, or for an element or attribute in the default namespace, return an empty string.

getDisplayName


public java.lang.String getDisplayName()
Get the display name of this node. For elements and attributes this is [prefix:]localname. For unnamed nodes, it is an empty string.
Specified by:
getDisplayName in interface NodeInfo
Returns:
The display name of this node. For a node with no name, return an empty string.

getLocalName


public abstract java.lang.String getLocalName()
Get the local name of this node.
Specified by:
getLocalName in interface org.w3c.dom.Node
Returns:
The local name of this node. For a node with no name, return an empty string.

hasChildNodes


public abstract boolean hasChildNodes()
Determine whether the node has any children.
Specified by:
hasChildNodes in interface org.w3c.dom.Node
Returns:
true if this node has any attributes, false otherwise.

hasAttributes


public abstract boolean hasAttributes()
Returns whether this node has any attributes.
Specified by:
hasAttributes in interface org.w3c.dom.Node
Returns:
true if this node has any attributes, false otherwise.
Since:
DOM Level 2

getAttributeValue


public abstract java.lang.String getAttributeValue(java.lang.String uri,
                                                   java.lang.String localName)
Find the value of a given attribute of this node.
This method is defined on all nodes to meet XSL requirements, but for nodes other than elements it will always return null.
Specified by:
getAttributeValue in interface NodeInfo
Parameters:
uri - the namespace uri of an attribute
localName - the local name of an attribute
Returns:
the value of the attribute, if it exists, otherwise null

getAttributeValue


public abstract java.lang.String getAttributeValue(int fingerprint)
Get the value of a given attribute of this node
Specified by:
getAttributeValue in interface NodeInfo
Parameters:
fingerprint - The fingerprint of the attribute name
Returns:
the attribute value if it exists or null if not

getLineNumber


public int getLineNumber()
Get the line number of the node within its source document entity. The default implementation returns -1, meaning unknown
Specified by:
getLineNumber in interface NodeInfo
Following copied from interface: com.icl.saxon.om.NodeInfo
Returns:
the line number of the node in its original source document; or -1 if not available

getColumnNumber


public int getColumnNumber()
Get the column number of the node. The default implementation returns -1, meaning unknown

getPublicId


public java.lang.String getPublicId()
Get the public identifier of the document entity containing this node. The default implementation returns null, meaning unknown

getEnumeration


public abstract AxisEnumeration getEnumeration(byte axisNumber,
                                               NodeTest nodeTest)
Return an enumeration over the nodes reached by the given axis from this node
Specified by:
getEnumeration in interface NodeInfo
Parameters:
node - NodeInfo representing the node from which the enumeration starts
nodeType - the type(s) of node to be included, e.g. NodeInfo.ELEMENT, NodeInfo.TEXT. The value NodeInfo.NODE means include any type of node.
nodeTest - A pattern to be matched by the returned nodes
Returns:
a AxisEnumeration that scans the nodes reached by the axis in turn.

getParent


public abstract NodeInfo getParent()
Find the parent node of this node.
Specified by:
getParent in interface NodeInfo
Returns:
The Node object describing the containing element or root node.

getDocumentRoot


public DocumentInfo getDocumentRoot()
Get the root (document) node
Specified by:
getDocumentRoot in interface NodeInfo
Returns:
the DocumentInfo representing the containing document

getParentNode


public org.w3c.dom.Node getParentNode()
Find the parent node of this node (DOM method).
Specified by:
getParentNode in interface org.w3c.dom.Node
Returns:
The Node object describing the containing element or root node.

getPreviousSibling


public org.w3c.dom.Node getPreviousSibling()
Get the previous sibling of the node (DOM method)
Specified by:
getPreviousSibling in interface org.w3c.dom.Node
Returns:
The previous sibling node. Returns null if the current node is the first child of its parent.

getNextSibling


public org.w3c.dom.Node getNextSibling()
Get next sibling node (DOM method)
Specified by:
getNextSibling in interface org.w3c.dom.Node
Returns:
The next sibling node. Returns null if the current node is the last child of its parent.

getFirstChild


public org.w3c.dom.Node getFirstChild()
Get first child (DOM method)
Specified by:
getFirstChild in interface org.w3c.dom.Node
Returns:
the first child node of this node, or null if it has no children

getLastChild


public org.w3c.dom.Node getLastChild()
Get last child (DOM method)
Specified by:
getLastChild in interface org.w3c.dom.Node
Returns:
last child of this node, or null if it has no children

getDocumentElement


public org.w3c.dom.Element getDocumentElement()
Get the outermost element. (DOM method)
Returns:
the Element for the outermost element of the document. If the document is not well-formed, this returns the last element child of the root if there is one, otherwise null.

copyStringValue


public void copyStringValue(Outputter out)

Copy the string-value of this node to a given outputter. Default implementation does "out.writeContent(getStringValue());" but it is useful to provide an optimized implementation.
Specified by:
copyStringValue in interface NodeInfo

outputNamespaceNodes


public void outputNamespaceNodes(Outputter out,
                                 boolean includeAncestors)

Output all namespace nodes associated with this element. Does nothing if the node is not an element.
Specified by:
outputNamespaceNodes in interface NodeInfo
Parameters:
out - The relevant outputter
includeAncestors - True if namespaces declared on ancestor elements must be output; false if it is known that these are already on the result tree

getNodeValue


public java.lang.String getNodeValue()
Get the node value as defined in the DOM. This is not necessarily the same as the XPath string-value.
Specified by:
getNodeValue in interface org.w3c.dom.Node

setNodeValue


public void setNodeValue(java.lang.String nodeValue)
                  throws org.w3c.dom.DOMException
Set the node value. DOM method: always fails
Specified by:
setNodeValue in interface org.w3c.dom.Node

getChildNodes


public org.w3c.dom.NodeList getChildNodes()
Return a NodeList that contains all children of this node. If there are no children, this is a NodeList containing no nodes. DOM Method.
Specified by:
getChildNodes in interface org.w3c.dom.Node

getAttributes


public org.w3c.dom.NamedNodeMap getAttributes()
Return a NamedNodeMap containing the attributes of this node (if it is an Element ) or null otherwise. (DOM method)
Specified by:
getAttributes in interface org.w3c.dom.Node

getOwnerDocument


public org.w3c.dom.Document getOwnerDocument()
Return the Document object associated with this node. (DOM method)
Specified by:
getOwnerDocument in interface org.w3c.dom.Node

insertBefore


public org.w3c.dom.Node insertBefore(org.w3c.dom.Node newChild,
                                     org.w3c.dom.Node refChild)
                              throws org.w3c.dom.DOMException
Insert the node newChild before the existing child node refChild. DOM method: always fails.
Specified by:
insertBefore in interface org.w3c.dom.Node
Parameters:
newChild - The node to insert.
refChild - The reference node, i.e., the node before which the new node must be inserted.
Returns:
The node being inserted.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Always raised.

replaceChild


public org.w3c.dom.Node replaceChild(org.w3c.dom.Node newChild,
                                     org.w3c.dom.Node oldChild)
                              throws org.w3c.dom.DOMException
Replace the child node oldChild with newChild in the list of children, and returns the oldChild node. Always fails.
Specified by:
replaceChild in interface org.w3c.dom.Node
Parameters:
newChild - The new node to put in the child list.
oldChild - The node being replaced in the list.
Returns:
The node replaced.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Always raised.

removeChild


public org.w3c.dom.Node removeChild(org.w3c.dom.Node oldChild)
                             throws org.w3c.dom.DOMException
Remove the child node indicated by oldChild from the list of children, and returns it. DOM method: always fails.
Specified by:
removeChild in interface org.w3c.dom.Node
Parameters:
oldChild - The node being removed.
Returns:
The node removed.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Always raised.

appendChild


public org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild)
                             throws org.w3c.dom.DOMException
Adds the node newChild to the end of the list of children of this node. DOM method: always fails.
Specified by:
appendChild in interface org.w3c.dom.Node
Parameters:
newChild - The node to add.
Returns:
The node added.
Throws:
org.w3c.dom.DOMException -
NO_MODIFICATION_ALLOWED_ERR: Always raised.

cloneNode


public org.w3c.dom.Node cloneNode(boolean deep)
Returns a duplicate of this node, i.e., serves as a generic copy constructor for nodes. The duplicate node has no parent. Not implemented: always returns null. (Because trees are read-only, there would be no way of using the resulting node.)
Specified by:
cloneNode in interface org.w3c.dom.Node
Parameters:
deep - If true , recursively clone the subtree under the specified node; if false , clone only the node itself (and its attributes, if it is an Element ).
Returns:
The duplicate node.

normalize


public void normalize()
Puts all Text nodes in the full depth of the sub-tree underneath this Node, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes.
Specified by:
normalize in interface org.w3c.dom.Node
Since:
DOM Level 2

isSupported


public boolean isSupported(java.lang.String feature,
                           java.lang.String version)
Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.
Specified by:
isSupported in interface org.w3c.dom.Node
Parameters:
feature - The name of the feature to test. This is the same name which can be passed to the method hasFeature on DOMImplementation .
version - This is the version number of the feature to test. In Level 2, version 1, this is the string "2.0". If the version is not specified, supporting any version of the feature will cause the method to return true .
Returns:
Returns true if the specified feature is supported on this node, false otherwise.
Since:
DOM Level 2

supports


public boolean supports(java.lang.String feature,
                        java.lang.String version)
Alternative to isSupported(), defined in a draft DOM spec

getNamespaceURI


public java.lang.String getNamespaceURI()
The namespace URI of this node, or null if it is unspecified. DOM method.
This is not a computed value that is the result of a namespace lookup based on an examination of the namespace declarations in scope. It is merely the namespace URI given at creation time.
For nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE and nodes created with a DOM Level 1 method, such as createElement from the Document interface, this is always null . Per the Namespaces in XML Specification an attribute does not inherit its namespace from the element it is attached to. If an attribute is not explicitly given a namespace, it simply has no namespace.
Specified by:
getNamespaceURI in interface org.w3c.dom.Node
Since:
DOM Level 2

setPrefix


public void setPrefix(java.lang.String prefix)
               throws org.w3c.dom.DOMException
Set the namespace prefix of this node. Always fails.
Specified by:
setPrefix in interface org.w3c.dom.Node

disallowUpdate


protected void disallowUpdate()
                       throws org.w3c.dom.DOMException
Internal method used to indicate that update operations are not allowed

getDoctype


public org.w3c.dom.DocumentType getDoctype()
Get the Document Type Declaration (see DocumentType ) associated with this document. For HTML documents as well as XML documents without a document type declaration this returns null. DOM method.
Returns:
null: The Saxon tree model does not include the document type information.

getImplementation


public org.w3c.dom.DOMImplementation getImplementation()
Get a DOMImplementation object that handles this document. A DOM application may use objects from multiple implementations. DOM method.

createElement


public org.w3c.dom.Element createElement(java.lang.String tagName)
                                  throws org.w3c.dom.DOMException
Creates an element of the type specified. DOM method: always fails, because the Saxon tree is not updateable.

createDocumentFragment


public org.w3c.dom.DocumentFragment createDocumentFragment()
Creates an empty DocumentFragment object.
Returns:
A new DocumentFragment . DOM method: returns null, because the Saxon tree is not updateable.

createTextNode


public org.w3c.dom.Text createTextNode(java.lang.String data)
Create a Text node given the specified string. DOM method: returns null, because the Saxon tree is not updateable.
Parameters:
data - The data for the node.
Returns:
The new Text object.

createComment


public org.w3c.dom.Comment createComment(java.lang.String data)
Create a Comment node given the specified string. DOM method: returns null, because the Saxon tree is not updateable.
Parameters:
data - The data for the node.
Returns:
The new Comment object.

createCDATASection


public org.w3c.dom.CDATASection createCDATASection(java.lang.String data)
                                            throws org.w3c.dom.DOMException
Create a CDATASection node whose value is the specified string. DOM method: always fails, because the Saxon tree is not updateable.
Parameters:
data - The data for the CDATASection contents.
Returns:
The new CDATASection object.
Throws:
org.w3c.dom.DOMException - NOT_SUPPORTED_ERR: Raised if this document is an HTML document.

createProcessingInstruction


public org.w3c.dom.ProcessingInstruction createProcessingInstruction(java.lang.String target,
                                                                     java.lang.String data)
                                                              throws org.w3c.dom.DOMException
Create a ProcessingInstruction node given the specified name and data strings. DOM method: returns null, because the Saxon tree is not updateable.
Parameters:
target - The target part of the processing instruction.
data - The data for the node.
Returns:
The new ProcessingInstruction object.
Throws:
org.w3c.dom.DOMException - INVALID_CHARACTER_ERR: Raised if the specified target contains an illegal character.
NOT_SUPPORTED_ERR: Raised if this document is an HTML document.

createAttribute


public org.w3c.dom.Attr createAttribute(java.lang.String name)
                                 throws org.w3c.dom.DOMException
Create an Attr of the given name. DOM method: always fails, because the Saxon tree is not updateable.
Parameters:
name - The name of the attribute.
Returns:
A new Attr object with the nodeName attribute set to name , and localName , prefix , and namespaceURI set to null .
Throws:
org.w3c.dom.DOMException - INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.

createEntityReference


public org.w3c.dom.EntityReference createEntityReference(java.lang.String name)
                                                  throws org.w3c.dom.DOMException
Create an EntityReference object. DOM method: returns null, because the Saxon tree is not updateable.
Parameters:
name - The name of the entity to reference.
Returns:
The new EntityReference object.
Throws:
org.w3c.dom.DOMException - INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.
NOT_SUPPORTED_ERR: Raised if this document is an HTML document.

getElementsByTagName


public org.w3c.dom.NodeList getElementsByTagName(java.lang.String tagname)
Return a NodeList of all the Elements with a given tag name in the order in which they are encountered in a preorder traversal of the Document tree.
Parameters:
tagname - The name of the tag to match on. The special value "*" matches all tags.
Returns:
A new NodeList object containing all the matched Elements .

importNode


public org.w3c.dom.Node importNode(org.w3c.dom.Node importedNode,
                                   boolean deep)
                            throws org.w3c.dom.DOMException
Import a node from another document to this document. DOM method: always fails, because the Saxon tree is not updateable.
Throws:
org.w3c.dom.DOMException -  
Since:
DOM Level 2

createElementNS


public org.w3c.dom.Element createElementNS(java.lang.String namespaceURI,
                                           java.lang.String qualifiedName)
                                    throws org.w3c.dom.DOMException
Create an element of the given qualified name and namespace URI. HTML-only DOM implementations do not need to implement this method. DOM method: always fails, because the Saxon tree is not updateable.
Parameters:
namespaceURI - The namespace URI of the element to create.
qualifiedName - The qualified name of the element type to instantiate.
Returns:
A new Element object
Throws:
org.w3c.dom.DOMException -  

createAttributeNS


public org.w3c.dom.Attr createAttributeNS(java.lang.String namespaceURI,
                                          java.lang.String qualifiedName)
                                   throws org.w3c.dom.DOMException
Create an attribute of the given qualified name and namespace URI. HTML-only DOM implementations do not need to implement this method. DOM method: returns null, because the Saxon tree is not updateable.
Parameters:
namespaceURI - The namespace URI of the attribute to create.
qualifiedName - The qualified name of the attribute to instantiate.
Returns:
A new Attr object.
Throws:
org.w3c.dom.DOMException -  

getElementsByTagNameNS


public org.w3c.dom.NodeList getElementsByTagNameNS(java.lang.String namespaceURI,
                                                   java.lang.String localName)
Return a NodeList of all the Elements with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of the Document tree. DOM method.
Parameters:
namespaceURI - The namespace URI of the elements to match on. The special value "*" matches all namespaces.
localName - The local name of the elements to match on. The special value "*" matches all local names.
Returns:
A new NodeList object containing all the matched Elements .
Since:
DOM Level 2

getElementById


public org.w3c.dom.Element getElementById(java.lang.String elementId)
Return the Element whose ID is given by elementId . If no such element exists, returns null . Behavior is not defined if more than one element has this ID . The DOM implementation must have information that says which attributes are of type ID. Attributes with the name "ID" are not of type ID unless so defined. Implementations that do not know whether attributes are of type ID or not are expected to return null .
Parameters:
elementId - The unique id value for an element.
Returns:
The matching element, or null if there is none.
Since:
DOM Level 2

getTagName


public java.lang.String getTagName()
The name of the element (DOM interface).

getAttribute


public java.lang.String getAttribute(java.lang.String name)
Retrieves an attribute value by name. Namespace declarations will not be retrieved. DOM interface.
Parameters:
name - The QName of the attribute to retrieve.
Returns:
The Attr value as a string, or the empty string if that attribute does not have a specified or default value.

getAttributeNode


public org.w3c.dom.Attr getAttributeNode(java.lang.String name)
Retrieves an attribute node by name. Namespace declarations will not be retrieved.
To retrieve an attribute node by qualified name and namespace URI, use the getAttributeNodeNS method.
Parameters:
name - The name (nodeName ) of the attribute to retrieve.
Returns:
The Attr node with the specified name ( nodeName ) or null if there is no such attribute.

setAttributeNode


public org.w3c.dom.Attr setAttributeNode(org.w3c.dom.Attr newAttr)
                                  throws org.w3c.dom.DOMException
Adds a new attribute node. Always fails
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

removeAttribute


public void removeAttribute(java.lang.String oldAttr)
                     throws org.w3c.dom.DOMException
Removes the specified attribute. Always fails
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

removeAttributeNode


public org.w3c.dom.Attr removeAttributeNode(org.w3c.dom.Attr oldAttr)
                                     throws org.w3c.dom.DOMException
Removes the specified attribute node. Always fails
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

getAttributeNS


public java.lang.String getAttributeNS(java.lang.String namespaceURI,
                                       java.lang.String localName)
Retrieves an attribute value by local name and namespace URI. HTML-only DOM implementations do not need to implement this method.
Parameters:
namespaceURI - The namespace URI of the attribute to retrieve.
localName - The local name of the attribute to retrieve.
Returns:
The Attr value as a string, or the empty string if that attribute does not have a specified or default value.
Since:
DOM Level 2

setAttributeNS


public void setAttributeNS(java.lang.String namespaceURI,
                           java.lang.String qualifiedName,
                           java.lang.String value)
                    throws org.w3c.dom.DOMException
Adds a new attribute. Always fails.
Parameters:
namespaceURI - The namespace URI of the attribute to create or alter.
qualifiedName - The qualified name of the attribute to create or alter.
value - The value to set in string form.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

removeAttributeNS


public void removeAttributeNS(java.lang.String namespaceURI,
                              java.lang.String localName)
                       throws org.w3c.dom.DOMException
Removes an attribute by local name and namespace URI. Always fails
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
Since:
DOM Level 2

getAttributeNodeNS


public org.w3c.dom.Attr getAttributeNodeNS(java.lang.String namespaceURI,
                                           java.lang.String localName)
Retrieves an Attr node by local name and namespace URI. DOM method, so namespace declarations count as attributes.
Parameters:
namespaceURI - The namespace URI of the attribute to retrieve.
localName - The local name of the attribute to retrieve.
Returns:
The Attr node with the specified attribute local name and namespace URI or null if there is no such attribute.
Since:
DOM Level 2

setAttributeNodeNS


public org.w3c.dom.Attr setAttributeNodeNS(org.w3c.dom.Attr newAttr)
                                    throws org.w3c.dom.DOMException
Add a new attribute. Always fails.
Parameters:
newAttr - The Attr node to add to the attribute list.
Returns:
If the newAttr attribute replaces an existing attribute with the same local name and namespace URI , the replaced Attr node is returned, otherwise null is returned.
Throws:
org.w3c.dom.DOMException -
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
Since:
DOM Level 2

hasAttribute


public boolean hasAttribute(java.lang.String name)
Returns true when an attribute with a given name is specified on this element or has a default value, false otherwise. Namespace declarations will not be retrieved.
Parameters:
name - The name of the attribute to look for.
Returns:
true if an attribute with the given name is specified on this element or has a default value, false otherwise.
Since:
DOM Level 2

hasAttributeNS


public boolean hasAttributeNS(java.lang.String namespaceURI,
                              java.lang.String localName)
Returns true when an attribute with a given local name and namespace URI is specified on this element or has a default value, false otherwise. Namespace declarations will not be retrieved.
Parameters:
namespaceURI - The namespace URI of the attribute to look for.
localName - The local name of the attribute to look for.
Returns:
true if an attribute with the given local name and namespace URI is specified or has a default value on this element, false otherwise.
Since:
DOM Level 2

getData


public java.lang.String getData()
Get the character data of a Text or Comment node. DOM method.

setData


public void setData(java.lang.String data)
             throws org.w3c.dom.DOMException
Set the character data of a Text or Comment node. DOM method: always fails, Saxon tree is immutable.

getLength


public int getLength()
Get the length of a Text or Comment node. DOM method.

substringData


public java.lang.String substringData(int offset,
                                      int count)
                               throws org.w3c.dom.DOMException
Extract a range of data from a Text or Comment node. DOM method.
Parameters:
offset - Start offset of substring to extract.
count - The number of 16-bit units to extract.
Returns:
The specified substring. If the sum of offset and count exceeds the length , then all 16-bit units to the end of the data are returned.
Throws:
org.w3c.dom.DOMException - INDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of 16-bit units in data , or if the specified count is negative.

appendData


public void appendData(java.lang.String arg)
                throws org.w3c.dom.DOMException
Append the string to the end of the character data of the node. DOM method: always fails.
Parameters:
arg - The DOMString to append.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

insertData


public void insertData(int offset,
                       java.lang.String arg)
                throws org.w3c.dom.DOMException
Insert a string at the specified character offset. DOM method: always fails.
Parameters:
offset - The character offset at which to insert.
arg - The DOMString to insert.
Throws:
org.w3c.dom.DOMException -  

deleteData


public void deleteData(int offset,
                       int count)
                throws org.w3c.dom.DOMException
Remove a range of 16-bit units from the node. DOM method: always fails.
Parameters:
offset - The offset from which to start removing.
count - The number of 16-bit units to delete.
Throws:
org.w3c.dom.DOMException -  

replaceData


public void replaceData(int offset,
                        int count,
                        java.lang.String arg)
                 throws org.w3c.dom.DOMException
Replace the characters starting at the specified 16-bit unit offset with the specified string. DOM method: always fails.
Parameters:
offset - The offset from which to start replacing.
count - The number of 16-bit units to replace.
arg - The DOMString with which the range must be replaced.
Throws:
org.w3c.dom.DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.

splitText


public org.w3c.dom.Text splitText(int offset)
                           throws org.w3c.dom.DOMException
Break this node into two nodes at the specified offset, keeping both in the tree as siblings. DOM method, always fails.
Parameters:
offset - The 16-bit unit offset at which to split, starting from 0.
Returns:
The new node, of the same type as this node.
Throws:
org.w3c.dom.DOMException -  

getName


public java.lang.String getName()
Get the name of an attribute node (the QName) (DOM method)

getValue


public java.lang.String getValue()
Return the character value of an attribute node (DOM method)
Returns:
the attribute value

getSpecified


public boolean getSpecified()
If this attribute was explicitly given a value in the original document, this is true ; otherwise, it is false. (DOM method)
Returns:
Always true in this implementation.

setValue


public void setValue(java.lang.String value)
              throws org.w3c.dom.DOMException
Set the value of an attribute node. (DOM method). Always fails (because tree is readonly)

getOwnerElement


public org.w3c.dom.Element getOwnerElement()
The Element node this attribute is attached to or null if this attribute is not in use.
Since:
DOM Level 2