net.sf.saxon
public interface RelativeURIResolver extends URIResolver
This extended interface defines a URIResolver that separates the two functions of resolving a relative URI against a base URI, and fetching a resource with that absolute URI. If the URI resolver supplied to Saxon implements this interface, the absolute URI associated with a loaded document will be the URI returned by this resolver.
The particular motivation for providing this interface is to allow a URIResolver to wrap a .NET XmlResolver, which has additional capability not present in the JAXP interface.
Method Summary | |
---|---|
String | makeAbsolute(String href, String base)
Create an absolute URI from a relative URI and a base URI. |
Source | resolve(String href, String base)
Called by the processor when it encounters
an xsl:include, xsl:import, or document() function.
|
void | setExpectedMediaType(String mediaType)
Specify the media type of the resource that is expected to be delivered. |
Parameters: href A relative or absolute URI, to be resolved against the specified base URI base The base URI against which the first argument will be made absolute if the absolute URI is required.
Returns: A string containing the absolute URI that results from URI resolution. If the resource
needs to be fetched, this absolute URI will be supplied as the href parameter in a subsequent
call to the resolve
method.
Parameters: href An href attribute, which may be relative or absolute. base The base URI against which the first argument will be made absolute if the absolute URI is required.
Returns: A Source object, or null if the href cannot be resolved, and the processor should try to resolve the URI itself.
Throws: javax.xml.transform.TransformerException if an error occurs when trying to resolve the URI.