|
Subject: Re: [xsl] Re: Re: Using XSL for a "world records" table From: Ryan Heise <rheise@xxxxxxxxxxxxx> Date: Sun, 18 May 2003 19:01:13 +1000 |
On Sun, May 18, 2003 at 10:35:18AM +0200, Dimitre Novatchev wrote:
> <xsl:value-of select="position() + count(/*/record[time <
> current()/time])"/>
This looks nifty. If you just use the count() idea, keys are not
required:
<xsl:for-each select="record">
<xsl:sort data-type="number" select="time"/>
<xsl:apply-templates select=".">
<xsl:with-param name="place" select="1 + count(/*/record[time < current()/time])"/>
</xsl:apply-templates>
</xsl:for-each>
I also just figured out another approach that just uses keys and not
count:
<xsl:for-each select="record">
<xsl:if test="not(preceding-sibling::record/time = time)">
<xsl:apply-templates select="key('records-by-time', time)">
<xsl:with-param name="place" select="position()"/>
</xsl:apply-templates>
</xsl:if>
</xsl:for-each>
I don't know which way is best, though. I guess whichever way runs the
fastest :-)
Thanks!
Ryan
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Re: Re: Using XSL for a "worl, Dimitre Novatchev | Thread | [xsl] Re: Re: Re: Using XSL for a ", Dimitre Novatchev |
| [xsl] Re: Re: Using XSL for a "worl, Dimitre Novatchev | Date | [xsl] Re: Re: Re: Using XSL for a ", Dimitre Novatchev |
| Month |