Subject: Re: [xsl] Referring to stylesheet itself, possible in XSLT 1.0, but how in XSLT 2.0? From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx> Date: Tue, 17 Oct 2006 11:10:33 +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...).
Ahh that explains it. It also explains why document('') returns the stylesheet itself... (something I always thought was intentional, but I guess it was by "happy accident")
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Referring to stylesheet i, Michael Kay | Thread | Re: [xsl] Referring to stylesheet i, David Carlisle |
RE: [xsl] Referring to stylesheet i, Michael Kay | Date | Re: [xsl] Referring to stylesheet i, David Carlisle |
Month |