net.sf.saxon.tree.util
Class NamespaceResolverWithDefault

java.lang.Object
  extended by net.sf.saxon.tree.util.NamespaceResolverWithDefault
All Implemented Interfaces:
NamespaceResolver

public class NamespaceResolverWithDefault
extends Object
implements NamespaceResolver

This class is a NamespaceResolver that modifies an underyling NamespaceResolver by changing the mapping of the null prefix to be a specified namespace, rather than the one used by the underlying namespace resolver.


Constructor Summary
NamespaceResolverWithDefault(NamespaceResolver base, String defaultNamespace)
           
 
Method Summary
 String getURIForPrefix(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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NamespaceResolverWithDefault

public NamespaceResolverWithDefault(NamespaceResolver base,
                                    String defaultNamespace)
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:
getURIForPrefix in interface NamespaceResolver
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:
iteratePrefixes in interface NamespaceResolver
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


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.