[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Counting Duplicates in XSLT 2.0

Subject: RE: Counting Duplicates in XSLT 2.0
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 30 Aug 2006 13:50:33 +0100
find duplicates with xslt
I would do two levels of grouping. First use xsl:for-each to group on some
calculated grouping key that's equal if the nodes are deep-equal
(essentially a hash code). You could use the string value of the nodes as
the hash key, or something more subtle, depending on your data. Then within
each group, compare each item with all the preceding items using deep-equal
to create the refined groups.

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Felix Breuer [mailto:felix@xxxxxxxxxx] 
> Sent: 29 August 2006 23:58
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  Counting Duplicates in XSLT 2.0
> 
> Hello everyone!
> 
> I have an element with a large number of complex 
> child-elements and for each child I want to know how many 
> duplicates there are (considering two elements as identical 
> iff they are deep-equal). Initially I thought 
> 
>   <for-each-group group-by="."> ... 
> 
> to be the way to go, but then I noticed in the XSLT 2.0 spec 
> that the value of the group-by expression is atomized after 
> evaluation. So, how do I go about this task?
> 
> Going further:
> 
> * How can I remove all the duplicates of a given child element,
>   retaining exactly one copy?
> * How can I keep exactly one copy iff the number of identical 
> copies is
>   odd, and remove all copies iff the number is even?
> 
> 
> Thanks,
> Felix

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.