RE: [xsl] XSLT2.0 modes

Subject: RE: [xsl] XSLT2.0 modes
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 4 Jan 2006 15:29:23 -0000
See

http://www.w3.org/TR/xslt20/#additional-dynamic-context

The third entry in the table states that:

* the initial setting of "current mode" is the initial mode (this is usually
the unnamed or #default mode)

* the current mode changes (in general) when you do apply-templates

* the current mode is cleared (becomes null) when you do a function call

By implication it isn't changed by call-template, for-each, or anything
else.

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

 

> -----Original Message-----
> From: Soren Kuula [mailto:dongfang@xxxxxxxxxxx] 
> Sent: 04 January 2006 16:08
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] XSLT2.0 modes
> 
> Hi,
> 
> If I do
> 
> <template match="/" mode="#default">
>   <call-template name="foo"/>
> </template>
> 
> <template name="foo">
>   <apply-templates mode="#current"/>
> </template>
> 
> --- what is the mode, in the apply-templates inst.? I'm inclined to 
> believe that it is #default, since it appears that calling named 
> templates does not change the current mode, and that was 
> #default at the 
> time of the call. On the other hand, I can't find the place where the 
> spec is explicit about that (I can only see that mode doesn't affect 
> template calls -- not the other way round).
> 
> Soren

Current Thread