#5 URIResolver not used by document()

Michael Kay

When the Transformer is created using
Templates#newTransformer() (as is done when using the
com.icl.saxon.StyleSheet command line API), the
URIResolver registered with the TransformerFactory is
not passed to the Transformer and is therefore not
used when the document() function is invoked. The
URIResolver is used only when the Transformer is
create using TransformerFactory#newTransformer(source).

Applies to all releases since JAXP support was


  • Michael Kay

    Michael Kay - 2001-07-05

    Logged In: YES

    Fixed in 6.4.2. Not yet tested. The Controller's
    userURIResolver is now set up from the TransformerFactory
    in the constructor for the Controller class.

  • Nobody/Anonymous

    Logged In: NO

    the generally avaulable documentation for javax.xml.transform.TransformerFactory#setURIResolver says:
    "Set an object that is used by default during the transformation to resolve URIs used in xsl:import, or
    xsl:include." and the documentation for javax.xml.transform.Transformer#setURIResolver says:
    "Set an object that will be used to resolve URIs used in document()."
    I understand this in a way that an URI-resolver registered with a transformer factory should not
    be passed to the transformers created by the transformer factory. If i misunderstand this,
    a request for clarification of the documentation should be issued to the JAXP people.


Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks