@FunctionalInterface
public interface ResourceResolver
It is a common feature of existing resolver APIs that they chain together. For example,
it is often the case that when a new EntityResolver is added to an XMLReader,
it is configured so that the existing (possibly underlying, implementation defined) resolver will be called
if the newly specified resolver fails to resolve the URI. Two ResourceResolvers can be chained
together into a single ResourceResolver by using the ChainedResourceResolver class.
The resolver methods in this class will generally return null if the requested resource
could not be found. If instead the caller wants a failure to get the resource to be treated as an error,
it is possible to request this by setting a property on the CatalogResourceResolver.
The usual mechanism for resolving a URI is to create a ResourceRequest, and pass it to a sequence
of ResourceResolvers using the method ResourceRequest.resolve(net.sf.saxon.lib.ResourceResolver...). This will invoke each resolver
in turn until one of them returns a non-null result.
| Modifier and Type | Method and Description |
|---|---|
javax.xml.transform.Source |
resolve(ResourceRequest request)
Process a resource request to deliver a resource
|
javax.xml.transform.Source resolve(ResourceRequest request) throws XPathException
request - the resource requestStreamSource.XPathException - if the request is invalid in some way, or if the identified resource is unsuitable,
or if resolution is to fail rather than being delegated to another resolver.Copyright (c) 2004-2022 Saxonica Limited. All rights reserved.