Subject: Re: Using variables in xpath attribute matches
From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx>
Date: Fri, 22 Aug 2008 17:58:36 +0530
|
On Fri, Aug 22, 2008 at 2:50 PM, Andrew Welch <andrew.j.welch@xxxxxxxxx> wrote:
> Remember one of the golden rules for people learning XSLT - don't use
> named templates!
>
> One of the worst sins of XSLT is not understanding the recursive
> descent processing model (apply-templates and template matching) and
> instead just using named templates passing around the context as
> param:
My personal opinion is, this is a bit over statement ...
Please consider this example,
<xsl:variable name="temp">
<xsl:call-template name="handleSomeElem">
<xsl:with-param select="$current/elem"/>
</xsl:call-template>
</xsl:variable>
<!-- do something with $temp, after the previous call -->
<xsl:template name="handleSomeElem">
<xsl:param name="elem">
<!--
Generate some XML fragment. Could be
a big one.
e.g.
<x>
<y/>
</x>
-->
</xsl:template>
Many a times, I like the above style (for a requirement like this), as
compared to using xsl:apply-templates or xsl:function.
--
Regards,
Mukul Gandhi
|