[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Setting Base URL For Resolivng xsl:include/xsl:import


Subject: Re: [xsl] Setting Base URL For Resolivng xsl:include/xsl:import
From: Eliot Kimber <ekimber@xxxxxxxxxxxxxxxxxxx>
Date: Sun, 23 May 2004 11:21:25 -0500

Eliot Kimber wrote:
Jeni Tennison wrote:

1. Was my expectation justified or have I misunderstood how URL
resolution works generally or in XSLT or in Saxon?

It should work in the way you expect, from what you've described.

Good to know. This suggests that it must be my error (it's my code that rewrites the original filesystem-based URLs to repository-specific URLs so it's possible I'm committing some error there).

The error was actually in my style sheet: I had failed to declare the input document's base namespace in the style sheet, which, because of the way I had defined the main template (match="*"), had the effect of not using the template in the included XSL file. My included style sheet only had a template for "xi:include", but the outter style sheet didn't declare the XInclude name space. In any case, the "*" matched xi:include (even though I put a higher priority on the xi:include template). Doh!


This was a side effect of my being new to Schemas--I had created a schema-based document, which of course requires the use of a root-level namespace (in this case defined as the default namespace). Because the input elements weren't themselves qualified in the XML instance I forgot that the namespace has to be declared in the style sheet and used in the match values.

Everything works now.

Cheers,

Eliot
--
W. Eliot Kimber
Professional Services
Innodata Isogen
9030 Research Blvd, #410
Austin, TX 78758
(512) 372-8122

eliot@xxxxxxxxxxxxxxxxxxx
www.innodata-isogen.com


Current Thread
Keywords