Subject: Re: [xsl] Selecting similar XML nodes by a sort criteria From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 4 Oct 2007 22:41:56 +0100 |
so this is a grouping problem (where you want to colour each group the same colour) as always they are easier in xslt2 but easy enough in xslt1 using a standard idiom such as muenchiam grouping. <xsl:for-each select="zipcode/book[generate-id()=generate-id(key('b',@areacode)[1])]"> <xsl:variable name="color"> <xsl:choose> <xsl:when test="position() mod 2=1">blue</xsl:when> <xsl:otherwise>grey</xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:for-each select="key('b',@areacode)"> <tr bgcolor="{$color}">... </tr> </xsl:for-each> <xsl:for-each> or in xslt2 the same but with more natural looking instructions <xsl:for-each-group select="zipcode/book" group-by="@areacode"> <xsl:variable name="color" select="if (position() mod 2 = 1) then 'blue' else 'grey'"/> <xsl:for-each select="current-group()"> <tr bgcolor="{$color}">... </xsl:for-each> </xsl:for-each-group> David ________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Selecting similar XML nod, Wendell Piez | Thread | RE: [xsl] selecting a node to conca, cknell |
[xsl] New markup conference, Wendell Piez | Date | RE: [xsl] Transforming RDF with XSL, Michael Kay |
Month |