Package net.sf.saxon.om
Class InscopeNamespaceResolver
- java.lang.Object
-
- net.sf.saxon.om.InscopeNamespaceResolver
-
- All Implemented Interfaces:
NamespaceResolver
public class InscopeNamespaceResolver extends Object implements NamespaceResolver
A NamespaceResolver that resolves namespace prefixes by reference to a node in a document for which those namespaces are in-scope.
-
-
Constructor Summary
Constructors Constructor Description InscopeNamespaceResolver(NodeInfo node)Create a NamespaceResolver that resolves according to the in-scope namespaces of a given node
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NodeInfogetNode()Get the node on which this namespace resolver is basedStringgetURIForPrefix(String prefix, boolean useDefault)Get the namespace URI corresponding to a given prefix.Iterator<String>iteratePrefixes()Get an iterator over all the prefixes declared in this namespace context.
-
-
-
Constructor Detail
-
InscopeNamespaceResolver
public InscopeNamespaceResolver(NodeInfo node)
Create a NamespaceResolver that resolves according to the in-scope namespaces of a given node- Parameters:
node- the given node. Must not be null. If this is an element node, the resolver uses the in-scope namespaces of that element. If it is a document node, the only in-scope namespace is the XML namespace. If it is any other kind of node, then if the node has a parent element, the resolver uses the in-scope namespaces of the parent element, otherwise ithe only in-scope namespace is the XML namespace.
-
-
Method Detail
-
getURIForPrefix
public String getURIForPrefix(String prefix, boolean useDefault)
Get the namespace URI corresponding to a given prefix. Return null if the prefix is not in scope.- Specified by:
getURIForPrefixin interfaceNamespaceResolver- Parameters:
prefix- the namespace prefix. May be the zero-length string, indicating that there is no prefix. This indicates either the default namespace or the null namespace, depending on the value of useDefault.useDefault- true if the default namespace is to be used when the prefix is "". If false, the method returns "" when the prefix is "".- Returns:
- the uri for the namespace, or null if the prefix is not in scope. The "null namespace" is represented by the pseudo-URI "".
-
iteratePrefixes
public Iterator<String> iteratePrefixes()
Get an iterator over all the prefixes declared in this namespace context. This will include the default namespace (prefix="") and the XML namespace where appropriate- Specified by:
iteratePrefixesin interfaceNamespaceResolver- Returns:
- an iterator over all the prefixes for which a namespace binding exists, including the zero-length string to represent the null/absent prefix if it is bound
-
getNode
public NodeInfo getNode()
Get the node on which this namespace resolver is based- Returns:
- the node on which this namespace resolver is based
-
-