RE: [xsl] URIResover question

Subject: RE: [xsl] URIResover question
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 25 Aug 2009 11:06:01 +0100
> For example here is an example of how it would fail
> 
> main.xsl  (imports both include/utils-a, and include/utils-b) include/
>   utils-a.xsl  (no imports here)
>   utils-b.xsl  (imports utils-a)
> 
> utils-b has the following
> 
> <xsl:import href="utils-a.xsl"/>
> 
> When resolve gets called, base="", and href="utils-a.xsl" so 
> my URIResolver doesn't know that it should look in the 
> include directory to find utils-a.xsl
> 

The value of base should be the absolute URI of utils-b.xsl.

Check that when your URIResolver selects utils-b.xsl, the Source object that
you return has its SystemId property set to the base URI of utils-b.xsl. It
might be that you are returning a Source with a null SystemId, and the
processor is using this as the base for the next call on the URIResolver.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 

Current Thread