xsl-list
[Top] [All Lists]

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

2006-10-17 03:10:47
On 10/17/06, Michael Kay <mike(_at_)saxonica(_dot_)com> wrote:
> 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")

thanks.

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>