Hi,
You have an incorrect expression in the select attribute of:
<xsl:apply-templates select="current()[position() mode 3 = 1"
mode="hits_page" />
--> '[position() mode 3 = 1'
^ ^
| |
could be '[position() mod 3]'
But not '[position() mod 3 = 1]' not, as this would return a true or false
and would normally be used in a xsl:if test.
If your expression works correctly after having corrected it, I can't tell
because I don't know what the input XML is like.
Anyway, I hope this helps :-)
Cheers,
<prs/>
-----Original Message-----
From: lsl(_at_)btconnect(_dot_)com [mailto:lsl(_at_)btconnect(_dot_)com]
Sent: Friday, July 09, 2004 5:36 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Working through a sorted nodeset 3 at a time
Hi,
I have some XSLT that looks like :
<xsl:apply-templates select="DATA/ROWS/ROW" mode="sorted_list">
<xsl:sort select="FIELD[(_at_)ID='1']/VALUE" order="ascending" />
</xsl:apply-templates>
<xsl:template match="ROW" mode="sorted_list">
<xsl:apply-templates select="current()[position() mode 3 = 1"
mode="hits_page" />
</xsl:template>
<xsl:template match="ROW" mode="hits_page">
hits_page : <xsl:value-of select="." />
</xsl:template>
I don't get anything output by the hits_page template. I don't think using
'current()' is correct here, I've tried ".[position() ......]" (and a few
others) but this gives me 'invalid XPath expression'.
Hopefully there's just a bit of syntax I don't know about.
Thanks
Steve
--+------------------------------------------------------------------
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>
--+--