org.apache.xml.utils
Interface PrefixResolver

All Known Implementing Classes:
ElemNumber.MyPrefixResolver, ElemTemplateElement, PrefixResolverDefault, StylesheetHandler, XPathEvaluatorImpl.DummyPrefixResolver

public interface PrefixResolver

The class that implements this interface can resolve prefixes to namespaces. Examples would include resolving the meaning of a prefix at a particular point in a document, or mapping the prefixes used in an XPath expression.


Method Summary
 String getBaseIdentifier()
          Return the base identifier.
 String getNamespaceForPrefix(String prefix)
          Given a namespace, get the corrisponding prefix.
 String getNamespaceForPrefix(String prefix, org.w3c.dom.Node context)
          Given a namespace, get the corresponding prefix, based on the context node.
 boolean handlesNullPrefixes()
           
 

Method Detail

getNamespaceForPrefix

public String getNamespaceForPrefix(String prefix)
Given a namespace, get the corrisponding prefix. This assumes that the PrefixResolver holds its own namespace context, or is a namespace context itself.

Parameters:
prefix - The prefix to look up, which may be an empty string ("") for the default Namespace.
Returns:
The associated Namespace URI, or null if the prefix is undeclared in this context.

getNamespaceForPrefix

public String getNamespaceForPrefix(String prefix,
                                    org.w3c.dom.Node context)
Given a namespace, get the corresponding prefix, based on the context node.

Parameters:
prefix - The prefix to look up, which may be an empty string ("") for the default Namespace.
context - The node context from which to look up the URI.
Returns:
The associated Namespace URI as a string, or null if the prefix is undeclared in this context.

getBaseIdentifier

public String getBaseIdentifier()
Return the base identifier.

Returns:
The base identifier from where relative URIs should be absolutized, or null if the base ID is unknown.

CAVEAT: Note that the base URI in an XML document may vary with where you are in the document, if part of the doc's contents were brought in via an external entity reference or if mechanisms such as xml:base have been used. Unless this PrefixResolver is bound to a specific portion of the document, or has been kept up to date via some other mechanism, it may not accurately reflect that context information.


handlesNullPrefixes

public boolean handlesNullPrefixes()