This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
count of element occurrences
- To: xsl-list at mulberrytech dot com
- Subject: count of element occurrences
- From: Sebastian Rahtz <sebastian dot rahtz at computing-services dot oxford dot ac dot uk>
- Date: Tue, 19 Sep 2000 10:56:23 +0100
- Reply-To: xsl-list at mulberrytech dot com
I want a list of all the elements used in my document, with a count of
how many times they occur. My Muenchian solution is appended, but its
fairly ugly. Can someone suggest a more elegant method?
Sebastian Rahtz
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:key name="gis" match="*" use="name()"/>
<xsl:template match="/">
<xsl:apply-templates/>
<xsl:message>done reading</xsl:message>
<xsl:for-each select="//*[generate-id(.)=generate-id(key('gis',name(.))[1])]">
<xsl:sort select="name()"/>
<xsl:value-of select="name(.)"/>
<xsl:text> </xsl:text>
<xsl:value-of select="count(key('gis',name(.)))"/>
<xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
<xsl:template match="text()"/>
</xsl:stylesheet>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list