/*
* Copyright (c) 2004 World Wide Web Consortium,
*
* (Massachusetts Institute of Technology, European Research Consortium for
* Informatics and Mathematics, Keio University). All Rights Reserved. This
* work is distributed under the W3C(r) Software License [1] 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.
*
* [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
*/
package org.w3c.dom.xpath;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
The XPathNamespace
interface is returned by
XPathResult
interfaces to represent the XPath namespace node
type that DOM lacks. There is no public constructor for this node type.
Attempts to place it into a hierarchy or a NamedNodeMap result in a
DOMException
with the code HIERARCHY_REQUEST_ERR
. This node is read only, so methods or setting of attributes that would
mutate the node result in a DOMException with the code
NO_MODIFICATION_ALLOWED_ERR
.
The core specification describes attributes of the Node
interface that are different for different node types but does not
describe XPATH_NAMESPACE_NODE
, so here is a description of
those attributes for this node type. All attributes of Node
not described in this section have a null
or
false
value.
ownerDocument
matches the ownerDocument
of the
ownerElement
even if the element is later adopted.
nodeName
is always the string "#namespace
".
prefix
is the prefix of the namespace represented by the
node.
localName
is the same as prefix
.
nodeType
is equal to XPATH_NAMESPACE_NODE
.
namespaceURI
is the namespace URI of the namespace
represented by the node.
nodeValue
is the same as namespaceURI
.
adoptNode
, cloneNode
, and
importNode
fail on this node type by raising a
DOMException
with the code NOT_SUPPORTED_ERR
.
Note: In future versions of the XPath specification, the
definition of a namespace node may be changed incomatibly, in which case
incompatible changes to field values may be required to implement
versions beyond XPath 1.0.
See also the Document Object Model (DOM) Level 3 XPath Specification.
/**
* The <code>XPathNamespace</code> interface is returned by
* <code>XPathResult</code> interfaces to represent the XPath namespace node
* type that DOM lacks. There is no public constructor for this node type.
* Attempts to place it into a hierarchy or a NamedNodeMap result in a
* <code>DOMException</code> with the code <code>HIERARCHY_REQUEST_ERR</code>
* . This node is read only, so methods or setting of attributes that would
* mutate the node result in a DOMException with the code
* <code>NO_MODIFICATION_ALLOWED_ERR</code>.
* <p>The core specification describes attributes of the <code>Node</code>
* interface that are different for different node types but does not
* describe <code>XPATH_NAMESPACE_NODE</code>, so here is a description of
* those attributes for this node type. All attributes of <code>Node</code>
* not described in this section have a <code>null</code> or
* <code>false</code> value.
* <p><code>ownerDocument</code> matches the <code>ownerDocument</code> of the
* <code>ownerElement</code> even if the element is later adopted.
* <p><code>nodeName</code> is always the string "<code>#namespace</code>".
* <p><code>prefix</code> is the prefix of the namespace represented by the
* node.
* <p><code>localName</code> is the same as <code>prefix</code>.
* <p><code>nodeType</code> is equal to <code>XPATH_NAMESPACE_NODE</code>.
* <p><code>namespaceURI</code> is the namespace URI of the namespace
* represented by the node.
* <p><code>nodeValue</code> is the same as <code>namespaceURI</code>.
* <p><code>adoptNode</code>, <code>cloneNode</code>, and
* <code>importNode</code> fail on this node type by raising a
* <code>DOMException</code> with the code <code>NOT_SUPPORTED_ERR</code>.
* <p ><b>Note:</b> In future versions of the XPath specification, the
* definition of a namespace node may be changed incomatibly, in which case
* incompatible changes to field values may be required to implement
* versions beyond XPath 1.0.
* <p>See also the <a href='http://www.w3.org/TR/2004/NOTE-DOM-Level-3-XPath-20040226'>Document Object Model (DOM) Level 3 XPath Specification</a>.
*/
public interface XPathNamespace extends Node {
// XPathNodeType
The node is a Namespace
.
/**
* The node is a <code>Namespace</code>.
*/
public static final short XPATH_NAMESPACE_NODE = 13;
The Element
on which the namespace was in scope when it
was requested. This does not change on a returned namespace node even
if the document changes such that the namespace goes out of scope on
that element and this node is no longer found there by XPath.
/**
* The <code>Element</code> on which the namespace was in scope when it
* was requested. This does not change on a returned namespace node even
* if the document changes such that the namespace goes out of scope on
* that element and this node is no longer found there by XPath.
*/
public Element getOwnerElement();
}