net.sf.saxon.type
Interface SchemaURIResolver

All Superinterfaces:
Serializable
All Known Implementing Classes:
LSSchemaResolver, StandardSchemaResolver

public interface SchemaURIResolver
extends Serializable

A SchemaURIResolver is used when resolving references to schema documents. It takes as input the target namespace of the schema to be loaded, and a set of location hints as input, and returns one or more Source obects containing the schema documents to be imported.

Author:
Michael H. Kay

Method Summary
 Source[] resolve(String targetNamespace, String baseURI, String[] locations)
          Resolve a URI identifying a schema document, given the target namespace URI and a set of associated location hints.
 

Method Detail

resolve

Source[] resolve(String targetNamespace,
                 String baseURI,
                 String[] locations)
                 throws XPathException
Resolve a URI identifying a schema document, given the target namespace URI and a set of associated location hints.

Parameters:
targetNamespace - the target namespaces of the schema to be imported. The "null namesapce" is identified by a zero-length string. In the case of an xsd:include directive, where no target namespace is specified, the parameter is null.
baseURI - The base URI of the module containing the "import schema" declaration; null if no base URI is known
locations - The set of URIs identified as schema location hints. In most cases (xsd:include, xsd:import, xsi:schemaLocation, xsl:import-schema) there is only one URI in this list. With an XQuery "import module" declaration, however, a list of URIs may be specified.
Returns:
an array of Source objects each identifying a schema document to be loaded. These need not necessarily correspond one-to-one with the location hints provided.
Throws:
XPathException - if the module cannot be located, and if delegation to the default module resolver is not required.


Copyright (C) Michael H. Kay. All rights reserved.