gnu.xml.dom

Class DomElement

Implemented Interfaces:
Cloneable, Comparable, DocumentEvent, Element, EventTarget, Node, NodeList

public class DomElement
extends DomNsNode
implements Element

"Element" implementation.

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

DomElement(DomDocument owner, String namespaceURI, String name)
Constructs an Element node associated with the specified document.

Method Summary

Object
clone()
Shallow clone of the element, except that associated attributes are (deep) cloned.
String
getAttribute(String name)
DOM L1 Returns the value of the specified attribute, or an empty string.
String
getAttributeNS(String namespaceURI, String local)
DOM L2 Returns the value of the specified attribute, or an empty string.
Attr
getAttributeNode(String name)
DOM L1 Returns the appropriate attribute node; the name is the nodeName property of the attribute.
Attr
getAttributeNodeNS(String namespace, String localPart)
DOM L2 Returns the appropriate attribute node; the name combines the namespace name and the local part.
NamedNodeMap
getAttributes()
DOM L1 Returns the element's attributes
String
getBaseURI()
TypeInfo
getSchemaTypeInfo()
String
getTagName()
DOM L1 Returns the element name (same as getNodeName).
boolean
hasAttribute(String name)
DOM L2 Returns true if the element has an attribute with the specified name (specified or DTD defaulted).
boolean
hasAttributeNS(String namespaceURI, String local)
DOM L2 Returns true if the element has an attribute with the specified name (specified or DTD defaulted).
boolean
hasAttributes()
DOM L2> Returns true iff this is an element node with attributes.
boolean
isDefaultNamespace(String namespaceURI)
String
lookupNamespaceURI(String prefix)
String
lookupPrefix(String namespaceURI)
void
makeReadonly()
Marks this element, its children, and its associated attributes as readonly.
void
removeAttribute(String name)
DOM L1 Removes the appropriate attribute node.
void
removeAttributeNS(String namespace, String localPart)
DOM L2 Removes the appropriate attribute node; the name combines the namespace name and the local part.
Attr
removeAttributeNode(Attr node)
DOM L1 Removes the appropriate attribute node; the name is the nodeName property of the attribute.
void
setAttribute(String name, String value)
DOM L1 Modifies an existing attribute to have the specified value, or creates a new one with that value.
void
setAttributeNS(String uri, String aname, String value)
DOM L2 Modifies an existing attribute to have the specified value, or creates a new one with that value.
Attr
setAttributeNode(Attr attr)
DOM L1 Stores the specified attribute, optionally overwriting any existing one with that name.
Attr
setAttributeNodeNS(Attr attr)
DOM L2 Stores the specified attribute, optionally overwriting any existing one with that name.
void
setIdAttribute(String name, boolean isId)
void
setIdAttributeNS(String namespaceURI, String localName, boolean isId)
void
setIdAttributeNode(Attr attr, boolean isId)

Methods inherited from class gnu.xml.dom.DomNsNode

getLocalName, getNamespaceURI, getNodeName, getPrefix, setPrefix

Methods inherited from class gnu.xml.dom.DomNode

addEventListener, appendChild, clone, cloneNode, compact, compareDocumentPosition, compareTo, createEvent, dispatchEvent, getAttributes, getBaseURI, getChildNodes, getElementsByTagName, getElementsByTagNameNS, getFeature, getFirstChild, getLastChild, getLength, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isReadonly, isSameNode, isSupported, item, lookupNamespaceURI, lookupPrefix, makeReadonly, nameAndTypeEquals, normalize, removeChild, removeEventListener, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData, toString, trimToSize

Constructor Details

DomElement

protected DomElement(DomDocument owner,
                     String namespaceURI,
                     String name)
Constructs an Element node associated with the specified document.

This constructor should only be invoked by a Document as part of its createElement functionality, or through a subclass which is similarly used in a "Sub-DOM" style layer.

Parameters:
owner - The document with which this node is associated
namespaceURI - Combined with the local part of the name, this is used to uniquely identify a type of element
name - Name of this element, which may include a prefix

Method Details

clone

public Object clone()
Shallow clone of the element, except that associated attributes are (deep) cloned.
Overrides:
clone in interface DomNode


getAttribute

public String getAttribute(String name)
DOM L1 Returns the value of the specified attribute, or an empty string.
Specified by:
getAttribute in interface Element


getAttributeNS

public String getAttributeNS(String namespaceURI,
                             String local)
DOM L2 Returns the value of the specified attribute, or an empty string.
Specified by:
getAttributeNS in interface Element


getAttributeNode

public Attr getAttributeNode(String name)
DOM L1 Returns the appropriate attribute node; the name is the nodeName property of the attribute.
Specified by:
getAttributeNode in interface Element


getAttributeNodeNS

public Attr getAttributeNodeNS(String namespace,
                               String localPart)
DOM L2 Returns the appropriate attribute node; the name combines the namespace name and the local part.
Specified by:
getAttributeNodeNS in interface Element


getAttributes

public NamedNodeMap getAttributes()
DOM L1 Returns the element's attributes
Specified by:
getAttributes in interface Node
Overrides:
getAttributes in interface DomNode


getBaseURI

public String getBaseURI()
Specified by:
getBaseURI in interface Node
Overrides:
getBaseURI in interface DomNode


getSchemaTypeInfo

public TypeInfo getSchemaTypeInfo()
Specified by:
getSchemaTypeInfo in interface Element


getTagName

public final String getTagName()
DOM L1 Returns the element name (same as getNodeName).
Specified by:
getTagName in interface Element


hasAttribute

public boolean hasAttribute(String name)
DOM L2 Returns true if the element has an attribute with the specified name (specified or DTD defaulted).
Specified by:
hasAttribute in interface Element


hasAttributeNS

public boolean hasAttributeNS(String namespaceURI,
                              String local)
DOM L2 Returns true if the element has an attribute with the specified name (specified or DTD defaulted).
Specified by:
hasAttributeNS in interface Element


hasAttributes

public boolean hasAttributes()
DOM L2> Returns true iff this is an element node with attributes.
Specified by:
hasAttributes in interface Node
Overrides:
hasAttributes in interface DomNode


isDefaultNamespace

public boolean isDefaultNamespace(String namespaceURI)
Specified by:
isDefaultNamespace in interface Node
Overrides:
isDefaultNamespace in interface DomNode


lookupNamespaceURI

public String lookupNamespaceURI(String prefix)
Specified by:
lookupNamespaceURI in interface Node
Overrides:
lookupNamespaceURI in interface DomNode


lookupPrefix

public String lookupPrefix(String namespaceURI)
Specified by:
lookupPrefix in interface Node
Overrides:
lookupPrefix in interface DomNode


makeReadonly

public void makeReadonly()
Marks this element, its children, and its associated attributes as readonly.
Overrides:
makeReadonly in interface DomNode


removeAttribute

public void removeAttribute(String name)
DOM L1 Removes the appropriate attribute node. If there is no such node, this is (bizarrely enough) a NOP so you won't see exceptions if your code deletes non-existent attributes.

Note that since there is no portable way for DOM to record DTD information, default values for attributes will never be provided automatically.

Specified by:
removeAttribute in interface Element


removeAttributeNS

public void removeAttributeNS(String namespace,
                              String localPart)
DOM L2 Removes the appropriate attribute node; the name combines the namespace name and the local part.

Note that since there is no portable way for DOM to record DTD information, default values for attributes will never be provided automatically.

Specified by:
removeAttributeNS in interface Element


removeAttributeNode

public Attr removeAttributeNode(Attr node)
DOM L1 Removes the appropriate attribute node; the name is the nodeName property of the attribute.

Note that since there is no portable way for DOM to record DTD information, default values for attributes will never be provided automatically.

Specified by:
removeAttributeNode in interface Element


setAttribute

public void setAttribute(String name,
                         String value)
DOM L1 Modifies an existing attribute to have the specified value, or creates a new one with that value. The name used is the nodeName value.
Specified by:
setAttribute in interface Element


setAttributeNS

public void setAttributeNS(String uri,
                           String aname,
                           String value)
DOM L2 Modifies an existing attribute to have the specified value, or creates a new one with that value.
Specified by:
setAttributeNS in interface Element


setAttributeNode

public Attr setAttributeNode(Attr attr)
DOM L1 Stores the specified attribute, optionally overwriting any existing one with that name.
Specified by:
setAttributeNode in interface Element


setAttributeNodeNS

public Attr setAttributeNodeNS(Attr attr)
DOM L2 Stores the specified attribute, optionally overwriting any existing one with that name.
Specified by:
setAttributeNodeNS in interface Element


setIdAttribute

public void setIdAttribute(String name,
                           boolean isId)
Specified by:
setIdAttribute in interface Element


setIdAttributeNS

public void setIdAttributeNS(String namespaceURI,
                             String localName,
                             boolean isId)
Specified by:
setIdAttributeNS in interface Element


setIdAttributeNode

public void setIdAttributeNode(Attr attr,
                               boolean isId)
Specified by:
setIdAttributeNode in interface Element