xsl-list
[Top] [All Lists]

Re: [xsl] Slow XSLT

2008-03-03 12:45:18
Cleyton Jordan schrieb:
Hi Manfread,

I truly appreciate your help. You are real star :)

I have just seen your post and before I try your
changes I would like to ask you what this line does
i.e. which template does it call?

<xsl:apply-templates select="$set"/>

It "calls" whatever matches the contents of $set. What is in
$set depends on the context. At the place you extracted this
line from, a template by the name "apply-set", there is an
xsl:param named "set". The template "apply-set" is indeed
called (using xsl:call-template), as it is a named template.
Other templates are matching templates - these go without
names. They are applied to nodes (using xsl:apply-templates)
based on whether or not they match.

Where is this template being called from?

<xsl:template match="Col">
  <td colspan="{$msrs}">
   <div><xsl:value-of select="@heading"/></div>
  </td>
</xsl:template>

Incidentally, it is "called", or rather applied, by the
xsl:apply-templates above that has caught your intention.
It may not be obvious at first glance, but it happens in
recursion. See the following snippet from Manfred's example.

                <xsl:when test="$set/*">
                        <xsl:call-template name="apply-set">
                                <xsl:with-param name="set" select="$set/*"/>
                        </xsl:call-template>
                </xsl:when>

Michael

--~------------------------------------------------------------------
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>