Class NamespaceContextImpl

java.lang.Object
net.sf.saxon.pull.NamespaceContextImpl
All Implemented Interfaces:
NamespaceContext, NamespaceResolver

public class NamespaceContextImpl extends Object implements NamespaceResolver, NamespaceContext
This class bridges between the JAXP 1.3 NamespaceContext interface and Saxon's equivalent NamespaceResolver interface. It allows any implementation of the Saxon NamespaceResolver to be wrapped as a JAXP NamespaceContext.
  • Constructor Details

    • NamespaceContextImpl

      public NamespaceContextImpl(NamespaceResolver resolver)
      Constructor: wrap a Saxon NamespaceResolver as a JAXP NamespaceContext
      Parameters:
      resolver - the Saxon NamespaceResolver
  • Method Details

    • getURIForPrefix

      public NamespaceUri 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
    • 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
    • getNamespaceURI

      public String getNamespaceURI(String prefix)
      Implement the JAXP getNamespaceURI() method in terms of the Saxon-specific methods
      Specified by:
      getNamespaceURI in interface NamespaceContext
      Parameters:
      prefix - a namespace prefix
      Returns:
      the corresponding URI, if the prefix is bound, or "" otherwise
    • getPrefix

      public String getPrefix(String uri)
      Get the prefix bound to a particular namespace URI, if there is one, or null if not (JAXP method)
      Specified by:
      getPrefix in interface NamespaceContext
      Parameters:
      uri - the namespace URI
      Returns:
      the prefix bound to the URI if there is one, or null if not
    • getPrefixes

      public Iterator<String> getPrefixes(String uri)
      Get all the prefixes mapped to a given namespace URI (JAXP method)
      Specified by:
      getPrefixes in interface NamespaceContext
      Parameters:
      uri - the namespace URI
      Returns:
      an iterator over all the prefixes bound to this namespace URI