RE: [xsl] Finding Unique Nodes

Subject: RE: [xsl] Finding Unique Nodes
From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx>
Date: Tue, 2 Apr 2002 10:14:12 +0100
> I have a list of items, many with duplicate values. I'd like 
> to identify
> only those that are unique.
> 
> For example:
> 
> <list>
>  <item>Apple</item> 
>  <item>Apple</item> 
>  <item>Apple</item>
>  <item>Apple</item>
>  <item>Orange</item>
>  <item>Pear</item> 
>  <item>Pear</item>
>  <item>Pear</item>
> </list>
> 
> 
> <xsl:value-of select="count(list/items)"/>
> 
> The above XML has 8 entries but I only want to tally those 
> that are unique--
> 3.

For general advice on grouping, see www.jenitennison.com/xslt/grouping

For this particular case, the simplest solution is
count(list/item[not(.=preceding-sibling::item)])

Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx  

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


Current Thread