Class Namespace
Represents a namespace in scope. It is used by XOM's XPath implementation for the namespace axis. However, it is not really part of the XOM data model. Namespace objects are only created as needed when evaluating XPath. While a namespace node has a parent element (which may be null), that element does not know about these namespace nodes and cannot remove them. (This is an inconsistency in the XPath data model, and is shared with attributes which also have parents but are not children.)
- Version:
- 1.3.0
- Author:
- Elliotte Rusty Harold
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncopy()
Returns a copy of this namespace which has the same prefix and URI, but no parent.void
detach()
Removes this namespace node from its parent.getChild
(int position) ThrowsIndexOutOfBoundsException
because namespaces do not have children.int
Returns 0 because namespaces do not have children.Returns the namespace prefix, or the empty string if this node is the default namespace.getValue()
Returns the namespace URI.toString()
Returns a string form of theNamespace
suitable for debugging and diagnosis.toXML()
Returns a string containing the actual XML form of the namespace declaration represented by this object.Methods inherited from class nu.xom.Node
equals, getBaseURI, getDocument, getParent, hashCode, query, query
-
Field Details
-
XML_NAMESPACE
Namespace URI specified forxml
prefix- See Also:
-
-
Constructor Details
-
Namespace
Create a new namespace node.
- Parameters:
prefix
- the prefix for the namespace; may be the empty string or a non-colonized nameURI
- the namespace URIparent
- the element that possesses this namespace node- Throws:
MalformedURIException
- ifURI
is not an RFC 3986 URI referenceIllegalNameException
- if- The prefix is
xmlns
. - The prefix is not the empty string, and the URI is null or the empty string.
- The prefix is
NamespaceConflictException
- if- The prefix is the empty string, and the URI is null or the empty string.
- The prefix is
xml
, and the URI is nothttp://www.w3.org/XML/1998/namespace
. - The prefix is not
xml
, and the URI ishttp://www.w3.org/XML/1998/namespace
.
-
-
Method Details
-
getPrefix
Returns the namespace prefix, or the empty string if this node is the default namespace.
- Returns:
- the namespace prefix
-
getValue
Returns the namespace URI.
-
getChild
Throws
IndexOutOfBoundsException
because namespaces do not have children.- Specified by:
getChild
in classNode
- Parameters:
position
- the index of the child node to return- Returns:
- never returns because document type declarations do not have children. Always throws an exception.
- Throws:
IndexOutOfBoundsException
- because document type declarations do not have children
-
getChildCount
public int getChildCount()Returns 0 because namespaces do not have children.
- Specified by:
getChildCount
in classNode
- Returns:
- zero
-
copy
Returns a copy of this namespace which has the same prefix and URI, but no parent.
-
detach
public void detach()Removes this namespace node from its parent.
-
toXML
Returns a string containing the actual XML form of the namespace declaration represented by this object. For example,
xmlns:pre="http://www.example.org/"
. -
toString
Returns a string form of the
Namespace
suitable for debugging and diagnosis. It deliberately does not return an actual XML namespace declaration.
-