Your solution presented some interesting results. The first, most notable,
was that the paths were not in the order of the XML tree-
well they are, but when removing duplicates I only kept the _last_:
<xsl:copy-of select="saxon:node-set($x)/p[not(.=following-sibling::p)]"/>
sounds like you want to keep the first:
<xsl:copy-of
select="saxon:node-set($x)/p[not(.=preceding--sibling::p)]"/>
And last but not least, I tried to substitute the <p> element in your
p was a random letter I happened to hit on a keyboard, you should be
able to have any element/attribute combination you want there (so long
as you test for that element rather than p in the second pass that
removes duplicates. ie the two p's in the line quoted above.
David
--
http://www.dcarlisle.demon.co.uk/matthew
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list