## 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.