Subject: Re: sort, count, number, group From: Michel CASABIANCA <casa@xxxxxx> Date: 12 Mar 2000 14:39:30 +0100 |
Hello quagly <quagly@xxxxxxxx> writes: > After perusing the FAQ I can sort, count, number, and group. > But I cannot do them all at once. Please help. > > Example: > > xml: > > <root> > <foo> > <bar>bard</bar> > <bar>bark</bar> > </foo> > <foo> > <bar>bark</bar> > <bar>barb</bar> > </foo> > </root> > > Sample xsl that selects distinct <bar> > > <xsl:template match="//bar[not(. = following::bar)]"> > <xsl:value-of select="."/> > </xsl:template> > > produces: > > bard bark barb > > what I want is to number these, sort them, and count the number of times > they appear in the xml source > > Desired output: > > 1. barb -1 > 2. bard -1 > 3. bark -2 > > I can't seem to get there from here. Do I need to use for-each? I did it with this stylesheet : --------------------------- <?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> <xsl:template match="/"> <xsl:for-each select="//bar"> <xsl:variable name="value" select="."/> <xsl:if test="count(preceding::bar[.=$value]) = 0"> <xsl:value-of select="."/><xsl:text> : </xsl:text> <xsl:value-of select="count(//bar[.=$value])"/> <xsl:text>
</xsl:text> </xsl:if> </xsl:for-each> </xsl:template> </xsl:stylesheet> ---------------------------- producing the following output : bard : 1 bark : 2 barb : 1 -- +---------------------------+--------------------------------+ | Michel CASABIANCA | http://www.sdv.fr/pages/casa | | mailto:casa@xxxxxx | Articles sur Java et XML | | Développement Java et XML | Applications et Applets de Jeu | +---------------------------+--------------------------------+ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
sort, count, number, group, quagly | Thread | Re: sort, count, number, group, violet wright |
Re: Newbie question: copying almost, Nikolai Grigoriev | Date | Anyone got Inlogix NS 4.x XML/XSL p, Randall J. Parr |
Month |