Subject: Re: [xsl] Grouping question From: Joerg Heinicke <joerg.heinicke@xxxxxx> Date: Tue, 21 May 2002 21:51:25 +0200 |
<xsl:template match="n" mode="cell"> <td><xsl:value-of select="."/></td> </xsl:template>
While we wait for Jeni to give us the well-thought-out XSLT 1.0 Meunchian method, here's some fun to consider with XSLT 2.0.
Assuming your input is well formed (not </color>): <data> <n color="R">1</n> <n color="R">2</n> <n color="R">3</n> <n color="Y">4</n> <n color="Y">5</n> <n color="Y">6</n> <n color="W">7</n> <n color="W">8</n> <n color="W">9</n> </data>
Something like this would work:
<xsl:template match="data"> <tables> <xsl:for-each-group select="n" group-by="@color"> <xsl:sort select="." /> <table> <xsl:for-each select="current-group()"> <xsl:if test="position() mod 2"> <xsl:variable name="color" select="@color" /> <tr> <td> <xsl:value-of select="." /> </td> <xsl:if test="following-sibling::n[@color=$color]"> <td> <xsl:value-of select="following-sibling::n[@color=$color]" /> </td> </xsl:if> </tr> </xsl:if> </xsl:for-each> </table> </xsl:for-each-group> </tables> </xsl:template>
Bryan
-----Original Message----- From: Spectron International, Inc. [mailto:spectron@xxxxxxxxx] Sent: Tuesday, May 21, 2002 7:05 AM To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx Subject: [xsl] Grouping question
I have the following XML:
<data> <n color="R">1</color> <n color="R">2</color> <n color="R">3</color> <n color="Y">4</color> <n color="Y">5</color> <n color="Y">6</color> <n color="W">7</color> <n color="W">8</color> <n color="W">9</color> </data>
and I want to create 3 tables (one for each color) with 2 columns each:
<table> <tr><td>1</td><td>2</td></tr> <tr><td>3</td></tr> </table> <table> <tr><td>4</td><td>5</td></tr> <tr><td>6</td></tr> </table>
<table> <tr><td>7</td><td>8</td></tr> <tr><td>9</td></tr> </table>
I have checked the grouping section in http://www.dpawson.co.uk/xsl/ but none of the samples do what I need. How can I do that?
Faw
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Grouping question, bryan . s . schnabel | Thread | Re: [xsl] Grouping question, Spectron Internation |
[xsl] Testing for presence of node,, Joel Konkle-Parker | Date | Re: [xsl] Parsing a List, Joerg Heinicke |
Month |