|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.hp.hpl.thermopylae.NodeImpl
Standard wrapper around spartan Node.
Copyright (C) 2002 Hewlett-Packard Company. This file is part of Sparta, an XML Parser, DOM, and XPath library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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.
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, TREE_POSITION_ANCESTOR, TREE_POSITION_DESCENDANT, TREE_POSITION_DISCONNECTED, TREE_POSITION_EQUIVALENT, TREE_POSITION_FOLLOWING, TREE_POSITION_PRECEDING, TREE_POSITION_SAME_NODE |
Constructor Summary | |
protected |
NodeImpl(DocumentImpl doc,
Node spartan)
|
Method Summary | |
short |
compareTreePosition(org.w3c.dom.Node other)
Compares a node with this node with regard to their position in the tree and according to the document order. |
boolean |
equals(java.lang.Object obj)
|
java.lang.String |
getBaseURI()
The absolute base URI of this node or null if undefined. |
org.w3c.dom.Node |
getInterface(java.lang.String feature)
This method makes available a Node 's specialized interface
(see ).What are the relations between Node.isSupported and
Node3.getInterface?Should we rename this method (and also
DOMImplementation.getInterface?)?getInterface can return a node that
doesn't actually support the requested interface and will lead to a
cast exception. |
org.w3c.dom.Node |
getNextSibling()
The node immediately following this node. |
org.w3c.dom.Document |
getOwnerDocument()
The Document object associated with this node. |
org.w3c.dom.Node |
getPreviousSibling()
The node immediately preceding this node. |
java.lang.String |
getTextContent()
This attribute returns the text content of this node and its descendants. |
java.lang.Object |
getUserData(java.lang.String key)
Retrieves the object associated to a key on a this node. |
boolean |
isEqualNode(org.w3c.dom.Node arg,
boolean deep)
Tests whether two nodes are equal. |
boolean |
isSameNode(org.w3c.dom.Node other)
Returns whether this node is the same node as the given one. |
java.lang.String |
lookupNamespacePrefix(java.lang.String namespaceURI)
Look up the prefix associated to the given namespace URI, starting from this node. |
java.lang.String |
lookupNamespaceURI(java.lang.String prefix)
Look up the namespace URI associated to the given prefix, starting from this node. |
void |
setTextContent(java.lang.String textContent)
This attribute returns the text content of this node and its descendants. |
java.lang.Object |
setUserData(java.lang.String key,
java.lang.Object data,
org.w3c.dom.UserDataHandler handler)
Associate an object to a key on this node. |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.w3c.dom.Node |
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNodeName, getNodeType, getNodeValue, getParentNode, getPrefix, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix |
Constructor Detail |
protected NodeImpl(DocumentImpl doc, Node spartan)
Method Detail |
public org.w3c.dom.Document getOwnerDocument()
org.w3c.dom.Node
Document
object associated with this node. This is
also the Document
object used to create new nodes. When
this node is a Document
or a DocumentType
which is not used with any Document
yet, this is
null
.getOwnerDocument
in interface org.w3c.dom.Node
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public org.w3c.dom.Node getNextSibling()
org.w3c.dom.Node
null
.getNextSibling
in interface org.w3c.dom.Node
public org.w3c.dom.Node getPreviousSibling()
org.w3c.dom.Node
null
.getPreviousSibling
in interface org.w3c.dom.Node
public java.lang.String getBaseURI()
org.w3c.dom.Node
null
if undefined.
This value is computed according to . However, when the
Document
supports the feature "HTML" , the base URI is
computed using first the value of the href attribute of the HTML BASE
element if any, and the value of the documentURI
attribute from the Document
interface otherwise.
Element
, a Document
or a a ProcessingInstruction
, this attribute represents
the properties [base URI] defined in . When the node is a
Notation
, an Entity
, or an
EntityReference
, this attribute represents the
properties [declaration base URI] in the . How will this be affected
by resolution of relative namespace URIs issue?It's not.Should this
only be on Document, Element, ProcessingInstruction, Entity, and
Notation nodes, according to the infoset? If not, what is it equal to
on other nodes? Null? An empty string? I think it should be the
parent's.No.Should this be read-only and computed or and actual
read-write attribute?Read-only and computed (F2F 19 Jun 2000 and
teleconference 30 May 2001).If the base HTML element is not yet
attached to a document, does the insert change the Document.baseURI?
Yes. (F2F 26 Sep 2001)getBaseURI
in interface org.w3c.dom.Node
public short compareTreePosition(org.w3c.dom.Node other)
org.w3c.dom.Node
compareTreePosition
in interface org.w3c.dom.Node
org.w3c.dom.Node
other
- The node to compare against this node.public java.lang.String getTextContent() throws org.w3c.dom.DOMException
org.w3c.dom.Node
Text
node containing the string
this attribute is set to. On getting, no serialization is performed,
the returned string does not contain any markup. No whitespace
normalization is performed, the returned string does not contain the
element content whitespaces . Similarly, on setting, no parsing is
performed either, the input string is taken as pure textual content.
Node type | Content |
---|---|
ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE | concatenation of the textContent
attribute value of every child node, excluding COMMENT_NODE and
PROCESSING_INSTRUCTION_NODE nodes |
ATTRIBUTE_NODE, TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODE |
nodeValue |
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE | null |
getTextContent
in interface org.w3c.dom.Node
org.w3c.dom.Node
org.w3c.dom.DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.org.w3c.dom.DOMException
- DOMSTRING_SIZE_ERR: Raised when it would return more characters than
fit in a DOMString
variable on the implementation
platform.public void setTextContent(java.lang.String textContent) throws org.w3c.dom.DOMException
org.w3c.dom.Node
Text
node containing the string
this attribute is set to. On getting, no serialization is performed,
the returned string does not contain any markup. No whitespace
normalization is performed, the returned string does not contain the
element content whitespaces . Similarly, on setting, no parsing is
performed either, the input string is taken as pure textual content.
Node type | Content |
---|---|
ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE | concatenation of the textContent
attribute value of every child node, excluding COMMENT_NODE and
PROCESSING_INSTRUCTION_NODE nodes |
ATTRIBUTE_NODE, TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODE |
nodeValue |
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE | null |
setTextContent
in interface org.w3c.dom.Node
org.w3c.dom.Node
org.w3c.dom.DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.org.w3c.dom.DOMException
- DOMSTRING_SIZE_ERR: Raised when it would return more characters than
fit in a DOMString
variable on the implementation
platform.public boolean isSameNode(org.w3c.dom.Node other)
org.w3c.dom.Node
Node
references returned by the implementation reference
the same object. When two Node
references are references
to the same object, even if through a proxy, the references may be
used completely interchangeably, such that all attributes have the
same values and calling the same DOM method on either reference
always has exactly the same effect.Do we really want to make this
different from equals?Yes, change name from isIdentical to
isSameNode. (Telcon 4 Jul 2000).Is this really needed if we provide a
unique key?Yes, because the key is only unique within a document.
(F2F 2 Mar 2001).Definition of 'sameness' is needed.isSameNode
in interface org.w3c.dom.Node
org.w3c.dom.Node
other
- The node to test against.true
if the nodes are the same,
false
otherwise.public java.lang.String lookupNamespacePrefix(java.lang.String namespaceURI)
org.w3c.dom.Node
lookupNamespacePrefix
in interface org.w3c.dom.Node
org.w3c.dom.Node
namespaceURI
- The namespace URI to look for.null
if none is found. If more than one prefix are associated to the
namespace prefix, the returned namespace prefix is implementation
dependent.public java.lang.String lookupNamespaceURI(java.lang.String prefix)
org.w3c.dom.Node
lookupNamespaceURI
in interface org.w3c.dom.Node
org.w3c.dom.Node
prefix
- The prefix to look for.null
if
none is found.public boolean isEqualNode(org.w3c.dom.Node arg, boolean deep)
org.w3c.dom.Node
Node.isSameNode
. All nodes that are the same
will also be equal, though the reverse may not be true.
nodeName
, localName
,
namespaceURI
, prefix
, nodeValue
, baseURI
. This is: they are both null
, or
they have the same length and are character for character identical.
The attributes
NamedNodeMaps
are equal.
This is: they are both null
, or they have the same
length and for each node that exists in one map there is a node that
exists in the other map and is equal, although not necessarily at the
same index.The childNodes
NodeLists
are
equal. This is: they are both null
, or they have the
same length and contain equal nodes at the same index. This is true
for Attr
nodes as for any other type of node. Note that
normalization can affect equality; to avoid this, nodes should be
normalized before being compared.
DocumentType
nodes to be equal, the following
conditions must also be satisfied: The following string attributes
are equal: publicId
, systemId
,
internalSubset
.The entities
NamedNodeMaps
are equal.The notations
NamedNodeMaps
are equal.
ownerDocument
attribute, the specified
attribute for Attr
nodes, the
isWhitespaceInElementContent
attribute for
Text
nodes, as well as any user data or event listeners
registered on the nodes.Should this be optional?No.isEqualNode
in interface org.w3c.dom.Node
org.w3c.dom.Node
arg
- The node to compare equality with.deep
- If true
, recursively compare the subtrees; if
false
, compare only the nodes themselves (and its
attributes, if it is an Element
).true
otherwise false
.public org.w3c.dom.Node getInterface(java.lang.String feature)
org.w3c.dom.Node
Node
's specialized interface
(see ).What are the relations between Node.isSupported and
Node3.getInterface?Should we rename this method (and also
DOMImplementation.getInterface?)?getInterface can return a node that
doesn't actually support the requested interface and will lead to a
cast exception. Other solutions are returning null or throwing an
exception.getInterface
in interface org.w3c.dom.Node
org.w3c.dom.Node
feature
- The name of the feature requested (case-insensitive).Node
which implements the
specialized APIs of the specified feature, if any, or
null
if there is no alternate Node
which
implements interfaces associated with that feature. Any alternate
Node
returned by this method must delegate to the
primary core Node
and not return results inconsistent
with the primary core Node
such as key
,
attributes
, childNodes
, etc.public java.lang.Object setUserData(java.lang.String key, java.lang.Object data, org.w3c.dom.UserDataHandler handler)
org.w3c.dom.Node
getUserData
with the
same key.setUserData
in interface org.w3c.dom.Node
org.w3c.dom.Node
key
- The key to associate the object to.data
- The object to associate to the given key, or
null
to remove any existing association to that key.handler
- The handler to associate to that key, or
null
.DOMKeyObject
previously associated to
the given key on this node, or null
if there was none.public java.lang.Object getUserData(java.lang.String key)
org.w3c.dom.Node
setUserData
with the same key.getUserData
in interface org.w3c.dom.Node
org.w3c.dom.Node
key
- The key the object is associated to.DOMKeyObject
associated to the given
key on this node, or null
if there was none.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |