number count="manufacturer|car" level="multiple" format="1.1. "
File: Data.xml <?xml version="1.0" encoding="utf-8"?> <cars> <manufacturer name="Chevrolet"> <car>Cavalier</car> <car>Corvette</car> <car>Impala</car> <car>Malibu</car> </manufacturer> <manufacturer name="Ford"> <car>Pinto</car> <car>Mustang</car> <car>Taurus</car> </manufacturer> <manufacturer name="Volkswagen"> <car>Beetle</car> <car>Jetta</car> <car>Passat</car> <car>Touraeg</car> </manufacturer> </cars> File: Transform.xslt <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> <xsl:template match="/"> <xsl:text>Automobile manufacturers and their cars
</xsl:text> <xsl:for-each select="cars/manufacturer"> <xsl:value-of select="@name"/> <xsl:text>
</xsl:text> <xsl:for-each select="car"> <xsl:sort select="."/> <xsl:text> </xsl:text> <xsl:if test="(position() mod 2) = 0"> <xsl:number count="manufacturer|car" level="multiple" format="1.1. "/> </xsl:if> <xsl:value-of select="."/> <xsl:text>
</xsl:text> </xsl:for-each> </xsl:for-each> </xsl:template> </xsl:stylesheet> Output: Automobile manufacturers and their cars Chevrolet Cavalier 1.2. Corvette Impala 1.4. Malibu Ford Mustang 2.1. Pinto Taurus Volkswagen Beetle 3.2. Jetta Passat 3.4. Touraeg