In my view the spec is ambiguous in this area. The spec for
setURIResolver() on the TransformerFactory says that the URIResolver is
used for xsl:import and xsl:include; the spec for getURIResolver()
implies that it is also used for the document() function.
I have asked for the spec to be clarified in this area and I believe
that Sun are aware of the problem.
Meanwhile, setting the URIResolver on both the TransformerFactory and
the Transformer should work with every processor.
Michael Kay
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Robert Koberg
Sent: 31 May 2003 16:32
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Cc: resin-interest(_at_)caucho(_dot_)com
Subject: [xsl] setting an URIResolver - who is correct, saxon or xalan
Hi,
I just figured out why I am having problems switching between
XSL processors, namely Xalan, Saxon and the Resin servlet
container's own Impl.
With Saxon I can set the URIResolver once on the
TransformerFactory and it is also used by the Transformer.
But with Xalan, I need to set the URIResolver on both the
TransformerFactory and the Transformer.
I haven't tested Resin yet, but I would bet is the same as Xalan.
I can see benefits to both approaches, but I would hope for
standard way to do it. I will set them both, which works in
Saxon regardless. It seems correct to me that the Transformer
should inherit it's factory's resolver. It seems overkill to
set it twice since the transformer comes from the factory.
Have I simply stumbled on a Saxon 'feature' but really been
doing it wrong all this time?
Who is right? Or if there is no right way, what are your thoughts?
Best,
-Rob
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list