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

RE: [xsl] Referring to stylesheet itself, possible in XSLT 1.0, but how in XSLT 2.0?


Subject: RE: [xsl] Referring to stylesheet itself, possible in XSLT 1.0, but how in XSLT 2.0?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 17 Oct 2006 11:02:45 +0100

> That works - which makes me wonder why the following doesnt:
> 
> <xsl:template match="/" xml:base="foo">
> 	<xsl:value-of select="document-uri(document(''))"/>
> </xsl:template>
> 
> With xml:base on the root matching matching template, why does calling
> document('') return that base (the same goes for 
> xsl:stylesheet).  I would've thought the root *node* returned 
> from document('') was outside the scope of the xml:base 
> change, and so would return the original base...

'' is a relative URI and is therefore expanded relative to the base URI of
the stylesheet element where the call on document() appears. That base URI
in this case is "foo" (which being itself a relative URI, should be further
resolved...).

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


Current Thread