Interface ModuleURIResolver

  • All Superinterfaces:
    java.io.Serializable
    All Known Implementing Classes:
    StandardModuleURIResolver

    public interface ModuleURIResolver
    extends java.io.Serializable
    A ModuleURIResolver is used when resolving references to query modules. It takes as input a URI that identifies the module to be loaded, and a set of location hints as input, and returns one or more StreamSource obects containing the queries to be imported.
    Author:
    Michael H. Kay
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      javax.xml.transform.stream.StreamSource[] resolve​(java.lang.String moduleURI, java.lang.String baseURI, java.lang.String[] locations)
      Resolve a identifying a query module, given the identifying URI and a set of associated location hints.
    • Method Detail

      • resolve

        javax.xml.transform.stream.StreamSource[] resolve​(java.lang.String moduleURI,
                                                          java.lang.String baseURI,
                                                          java.lang.String[] locations)
                                                   throws XPathException
        Resolve a identifying a query module, given the identifying URI and a set of associated location hints.
        Parameters:
        moduleURI - the module URI of the module to be imported; or null when loading a non-library module.
        baseURI - The base URI of the module containing the "import module" declaration; null if no base URI is known
        locations - The set of URIs specified in the "at" clause of "import module", which serve as location hints for the module
        Returns:
        an array of StreamSource objects each identifying the contents of a query module to be imported. Each StreamSource must contain a non-null absolute System ID which will be used as the base URI of the imported module, and either an InputStream or an Reader representing the text of the module. The method may also return null, in which case the system attempts to resolve the URI using the standard module URI resolver. The contained InputStream or Reader must be positioned at the start of the content to be read; it will be consumed by the system and will be closed after use.
        Throws:
        XPathException - if the module cannot be located, and if delegation to the default module resolver is not required.