http://onionworks.net/2004/renderengine/utility
createIterationBlocks (itemCount : int, blockSize : int) : nodeset
Mit der Methode createIterationBlocks kann eine Anzahl von Elementen itemCount in Einheiten aufgeteilt werden. Diese Einheiten enthalten dabei jeweils blockSize Items.
<xsl:stylesheet version="1.0">
<xsl:template match="/">
</xsl:stylesheet><xsl:variable name="items" c.as="Node">
<item>Nummer 1</item>
<item>Nummer 2</item>
<item>Nummer 3</item>
<item>Nummer 4</item>
<item>Nummer 5</item>
<item>Nummer 6</item>
<item>Nummer 7</item>
</xsl:variable><table>
</xsl:template><xsl:for-each select="util:createIterationBlocks(count($items/item), 3)">
</table><tr>
</xsl:for-each><xsl:for-each select="item">
</tr><td>
</xsl:for-each><xsl:variable name="index" select="number(@index)" />
<xsl:value-of select="@index" />
: <xsl:value-of select="$items/item[$index]" />
</td>Ausgabe von Elementen in einer Tabelle
Ausgabe:
1: Nummer 1 | 2: Nummer 2 | 3: Nummer 3 |
4: Nummer 4 | 5: Nummer 5 | 6: Nummer 6 |
7: Nummer 7 |
In dem Beispiel werden sieben Elemente in eine Tabelle geschrieben, wobei festgelegt ist, dass jede Spalte eine Einheit von drei Elementen enthält.