The order in which an XSLT processor does things is not defined. But it
is defined that position() refers to the position in the sorted
sequence.
Michael Kay
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Ragulf Pickaxe
Sent: 13 June 2003 09:23
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] When does sort occur?
Hello all,
I know this has been said, but I can't find it among those
thousands of
questions about sorting.
If I apply a template with a sort, as:
<xsl:apply-templates select="node" mode="getmax">
<xsl:sort select="@num" order="descending"
data-type="number"/> </xsl:apply-templates>
will the sorting occur during the select, before the matching
template is
called, so I can do:
<xsl:template match="node" mode="getmax">
<!-- I want only the <node> element that has the @num with
the highest
numerical value -->
<xsl:if test="position()=1"><xsl:value-of
select="."/></xsl:if> </xsl:template>
or will the sorting occur after all the nodes have been
processed in the
matching template?
I hope that the question is understandable.
Ragulf Pickaxe :)
_________________________________________________________________
Protect your PC - get McAfee.com VirusScan Online
http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list