RE: counting and displaying with xsl?

Subject: RE: counting and displaying with xsl?
From: Kay Michael <Michael.Kay@xxxxxxx>
Date: Thu, 8 Jun 2000 11:14:02 +0100
> Is there any way to use xsl to count the number of items in my 
> xml? I'd like to know this so I could arrange them according to their 
> number (e.g. have a line break every 5 items).

Outputting a line break is easy:

<xsl:if test="position() mod 5 = 1"><br/></xsl:if>

Other kinds of "grouping into sets of 5" are a bit more tricky, you need
something like

<xsl:template match="item[position() mod 5 = 1]">
<h2>Here are five items</h2>
<ul>
<xsl:apply-templates select="self::item | following-sibling::item[position()
&lt; 5]"
   mode="one-of-five"/>
</ul>
</xsl:template>

<xsl:template match="item" mode="one-of-five">
<li><xsl:value-of select="."/></li>
</xsl:template>

Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread