Re: [xsl] Using variables in xpath attribute matches

Subject: Re: [xsl] 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

Current Thread