|
Subject: RE: [xsl] how to convert from list to grid ? From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Sun, 30 Oct 2005 23:48:16 -0000 |
In 2.0, with <list> as the context node, it's something like this:
<xsl:variable name="list" select="."/>
<table>
<xsl:for-each select="1 to max(item/@x)">
<xsl:variable name="x" select="."/>
<tr>
<xsl:for-each select="1 to max(item/@y)">
<xsl:variable name="y" select="."/>
<td>
<xsl:value-of select="count($list/item[@x=$x and @y=$y])"/>
</td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
In 1.0, you can replace the for-each loops with a recursion, or with
something like
<xsl:for-each select="//node()[position() <= $max-x]">
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Bru, Pierre [mailto:Pierre.Bru@xxxxxxxxxxxx]
> Sent: 30 October 2005 22:48
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] how to convert from list to grid ?
>
> hello,
>
> I've been racking my brains for a couple of weeks now but I
> can not find
> a way to do the folowing: I have a list reprenting the type
> and integer
> coordinate of various items on a square grid like this one:
>
> <list>
> <item id="1" type="foo" x="1" y="7" />
> <item id="2" type="bar" x="8" y="2" />
> <item id="3" type="foo" x="8" y="2" />
> <item id="4" type="bar" x="8" y="3" />
> <item id="5" type="bar" x="8" y="3" />
> <item id="6" type="bar" x="8" y="3" />
> ...
> </list>
>
> - "id" are unique
> - each cell may contain any number of item (including 0).
> - there are as many lines as needed for each cell (see [8,2] or [8,3])
> - the cell are in no particular order for now but this can be
> changed as
> needed
>
> I would like to transform this list into a square grid (table?) with :
> - if the cell contains no item, an empry cell
> - otherwise, the count of item(s) of each type (one value for
> each type
> present on the cell)
>
> is this feasable with XSLT ?
>
> TIA,
> Pierre.
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] how to convert from list to g, Bru, Pierre | Thread | Re: [xsl] how to convert from list , David Carlisle |
| [xsl] how to convert from list to g, Bru, Pierre | Date | Re: [xsl] how to convert from list , David Carlisle |
| Month |