RE: [xsl] Using not(...a nd ... ) to select nodes

Subject: RE: [xsl] Using not(...a nd ... ) to select nodes
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 10 Jul 2003 23:22:05 +0100

this is a grouping problem (ask google for muenchian grouping)
assuming you want to distinguish on all those child elements and
attributes, and none of them have a : character (any character you can
use as a separator) then first build a key:

<xsl:key name="x" match="item" use="
concat(name,':',type,':',carried,':',cost/@name,':',cost/@value,':',weight)"/>

now step through all the items, just taking the first with each key
value

<xsl:for-each select="items/item[
generate-id(.)=generate-id(key('x',
concat(name,':',type,':',carried,':',cost/@name,':',cost@value,':',weight))[1])]">
<xsl:copy-of select="."/>
or whatever else you want to do with these items
</xsl:for-each>

Not tested

David

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


Current Thread