Re: [xsl] Why Are My Tunnel Parameters Not Working?

Subject: Re: [xsl] Why Are My Tunnel Parameters Not Working?
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Thu, 6 Mar 2008 15:39:23 +0000
On 06/03/2008, Florent Georges <lists@xxxxxxxxxxxx> wrote:
> Andrew Welch wrote:
>
>  > <xsl:apply-templates select="@*"/>
>  > <xsl:apply-templates/>
>
>  > which is the same as:
>
>  > <xsl:apply-templates select="(@*, node())"/>
>
>   Which is the same as:
>
>
>     <xsl:apply-templates select="@*, node()"/>
>
>
>  which is the same as:
>
>
>     <xsl:apply-templates select="@*|node()"/>
>
>  or even as:
>
>     <xsl:apply-templates select="node()|@*"/>
>
>  :-)
>

Not quite....

As Mike Kay pointed out recently, with union "node()|@*" the nodes
will be de-duplicated and sorted into document order, but with a
sequence "@*,node()" the nodes are processed in sequential order.

So using the sequence constructor instead of union you save the
unnecessary step of sorting and de-duping.

http://ajwelch.blogspot.com/2008/01/indentity-transform-for-xslt-20.html


cheers
-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

Current Thread