|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jaxen.dom.NamespaceNode
Extension DOM2/DOM3 node type for a namespace node.
This class implements the DOM2 and DOM3 Node
interface
to allow namespace nodes to be included in the result
set of an XPath selectNodes operation, even though DOM does
not model namespaces in scope as separate nodes.
While all of the DOM2 methods are implemented with reasonable defaults, there will be some unexpected surprises, so users are advised to test for NamespaceNodes and filter them out from the result sets as early as possible.
getNodeType()
method returns NAMESPACE_NODE
,
which is not one of the usual DOM2 node types. Generic code may
fall unexpectedly out of switch statements, for example.getOwnerDocument()
method returns the owner document
of the parent node, but that owner document will know nothing about
the namespace node.
isSupported(java.lang.String, java.lang.String)
method always returns false.All attempts to modify a NamespaceNode
will fail with a DOMException
(DOMException.NO_MODIFICATION_ALLOWED_ERR
).
DocumentNavigator
Field Summary | |
static short |
NAMESPACE_NODE
Constant: this is a NamespaceNode. |
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 |
Constructor Summary | |
NamespaceNode(Node parent,
String name,
String value)
Create a new NamespaceNode. |
Method Summary | |
Node |
appendChild(Node newChild)
Append a new child node (always fails). |
Node |
cloneNode(boolean deep)
Create a copy of this node. |
short |
compareDocumentPosition(Node other)
Compare relative position of this node to another nbode. |
boolean |
equals(Object o)
Test for equivalence with another object. |
NamedNodeMap |
getAttributes()
Get the attribute nodes. |
String |
getBaseURI()
Return the base URI of the document containing this node. |
NodeList |
getChildNodes()
Get the list of child nodes. |
Object |
getFeature(String feature,
String version)
Returns the value of the requested feature. |
Node |
getFirstChild()
Get the first child node. |
Node |
getLastChild()
Get the last child node. |
String |
getLocalName()
Get the XPath name of the namespace node;; i.e. |
String |
getNamespaceURI()
Get the namespace URI of this node. |
Node |
getNextSibling()
Get the next sibling node. |
String |
getNodeName()
Get the namespace prefix. |
short |
getNodeType()
Get the node type. |
String |
getNodeValue()
Get the namespace URI. |
Document |
getOwnerDocument()
Get the owner document. |
Node |
getParentNode()
Get the parent node. |
String |
getPrefix()
Get the namespace prefix of this node. |
Node |
getPreviousSibling()
Get the previous sibling node. |
String |
getTextContent()
Return the namespace URI. |
Object |
getUserData(String key)
Returns the user data associated with the given key. |
boolean |
hasAttributes()
Test if this node has attributes. |
boolean |
hasChildNodes()
Test for child nodes. |
int |
hashCode()
Generate a hash code for a namespace node. |
Node |
insertBefore(Node newChild,
Node refChild)
Insert a new child node (always fails). |
boolean |
isDefaultNamespace(String namespaceURI)
Return true if the specified URI is the default namespace in scope (always fails). |
boolean |
isEqualNode(Node arg)
Returns true if this object binds the same prefix to the same URI. |
boolean |
isSameNode(Node other)
Returns true if and only if this object represents the same XPath namespace node as the argument; that is, they have the same parent, the same prefix, and the same URI. |
boolean |
isSupported(String feature,
String version)
Test if a DOM2 feature is supported. |
String |
lookupNamespaceURI(String prefix)
Return the namespace URI mapped to the specified prefix within the scope of this namespace node. |
String |
lookupPrefix(String namespaceURI)
Return the prefix bound to this namespace URI within the scope of this node. |
void |
normalize()
Normalize the text descendants of this node. |
Node |
removeChild(Node oldChild)
Remove a child node (always fails). |
Node |
replaceChild(Node newChild,
Node oldChild)
Replace a child node (always fails). |
void |
setNodeValue(String value)
Change the namespace URI (always fails). |
void |
setPrefix(String prefix)
Change the namespace prefix of this node (always fails). |
void |
setTextContent(String textContent)
Change the value of this node (always fails). |
Object |
setUserData(String key,
Object data,
UserDataHandler handler)
Associates an object with a key. |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final short NAMESPACE_NODE
getNodeType()
,
Constant Field ValuesConstructor Detail |
public NamespaceNode(Node parent, String name, String value)
parent
- the DOM node to which the namespace is attachedname
- the namespace prefixvalue
- the namespace URIMethod Detail |
public String getNodeName()
getNodeName
in interface Node
public String getNodeValue()
getNodeValue
in interface Node
public void setNodeValue(String value) throws DOMException
setNodeValue
in interface Node
value
- the new URI
DOMException
- alwayspublic short getNodeType()
getNodeType
in interface Node
NAMESPACE_NODE
.public Node getParentNode()
This method returns the element that was queried for Namespaces in effect, not necessarily the actual element containing the Namespace declaration.
getParentNode
in interface Node
public NodeList getChildNodes()
getChildNodes
in interface Node
public Node getFirstChild()
getFirstChild
in interface Node
public Node getLastChild()
getLastChild
in interface Node
public Node getPreviousSibling()
getPreviousSibling
in interface Node
public Node getNextSibling()
getNextSibling
in interface Node
public NamedNodeMap getAttributes()
getAttributes
in interface Node
public Document getOwnerDocument()
getOwnerDocument
in interface Node
public Node insertBefore(Node newChild, Node refChild) throws DOMException
insertBefore
in interface Node
newChild
- the node to addrefChild
- ignored
DOMException
- alwaysNode.insertBefore(org.w3c.dom.Node, org.w3c.dom.Node)
public Node replaceChild(Node newChild, Node oldChild) throws DOMException
replaceChild
in interface Node
newChild
- the node to addoldChild
- the child node to replace
DOMException
- alwaysNode.replaceChild(org.w3c.dom.Node, org.w3c.dom.Node)
public Node removeChild(Node oldChild) throws DOMException
removeChild
in interface Node
oldChild
- the child node to remove
DOMException
- alwaysNode.removeChild(org.w3c.dom.Node)
public Node appendChild(Node newChild) throws DOMException
appendChild
in interface Node
newChild
- the node to add
DOMException
- alwaysNode.appendChild(org.w3c.dom.Node)
public boolean hasChildNodes()
hasChildNodes
in interface Node
public Node cloneNode(boolean deep)
cloneNode
in interface Node
deep
- make a deep copy (no effect, since namespace nodes
don't have children).
public void normalize()
This method has no effect, since namespace nodes have no descendants.
normalize
in interface Node
public boolean isSupported(String feature, String version)
isSupported
in interface Node
feature
- the feature nameversion
- the feature version
public String getNamespaceURI()
Namespace declarations are not themselves Namespace-qualified.
getNamespaceURI
in interface Node
public String getPrefix()
Namespace declarations are not themselves namespace-qualified.
getPrefix
in interface Node
getLocalName()
public void setPrefix(String prefix) throws DOMException
setPrefix
in interface Node
prefix
- the new prefix
DOMException
- always thrownpublic String getLocalName()
getLocalName
in interface Node
public boolean hasAttributes()
hasAttributes
in interface Node
public int hashCode()
public boolean equals(Object o)
Two Namespace nodes are considered equivalent if their parents, names, and values are equal.
o
- the object to test for equality
public String getBaseURI()
public short compareDocumentPosition(Node other) throws DOMException
other
- the node to compare to
DOMException
- NOT_SUPPORTED_ERRpublic String getTextContent()
getNodeValue()
public void setTextContent(String textContent) throws DOMException
textContent
- the new content
DOMException
- alwayspublic boolean isSameNode(Node other)
other
- the node to compare to
public String lookupPrefix(String namespaceURI)
namespaceURI
- the URI to find a prefix binding for
UnsupportedOperationException
- in DOM 2public boolean isDefaultNamespace(String namespaceURI)
namespaceURI
- the URI to check
UnsupportedOperationException
- alwayspublic String lookupNamespaceURI(String prefix)
prefix
- the prefix to search for
UnsupportedOperationException
- in DOM 2public boolean isEqualNode(Node arg)
arg
- the node to compare to
public Object getFeature(String feature, String version)
public Object setUserData(String key, Object data, UserDataHandler handler)
key
- the key by which the data will be retrieveddata
- the object to store with the keyhandler
- ignored since namespace nodes cannot be imported, cloned, or renamed
public Object getUserData(String key)
key
- the lookup key
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |