net.sf.saxon.om

Class InscopeNamespaceResolver

Implemented Interfaces:
NamespaceResolver

public class InscopeNamespaceResolver
extends java.lang.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

InscopeNamespaceResolver(NodeInfo node)
Create a NamespaceResolver that resolves according to the in-scope namespaces of a given node

Method Summary

NodeInfo
getNode()
Get the node on which this namespace resolver is based
String
getURIForPrefix(String prefix, boolean useDefault)
Get the namespace URI corresponding to a given prefix.
Iterator
iteratePrefixes()
Get an iterator over all the prefixes declared in this namespace context.

Constructor Details

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

Method Details

getNode

public NodeInfo getNode()
Get the node on which this namespace resolver is based
Returns:
the node on which this namespace resolver is based

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:
getURIForPrefix in interface NamespaceResolver
Parameters:
prefix - the namespace prefix
useDefault - true if the default namespace is to be used when the prefix is ""
Returns:
the uri for the namespace, or null if the prefix is not in scope Return "" for the no-namespace.

iteratePrefixes

public Iterator 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:
iteratePrefixes in interface NamespaceResolver