On 11/12/03 10:48 PM, "David Carlisle" <davidc(_at_)nag(_dot_)co(_dot_)uk>
wrote:
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)]"/>
LOL, like "duh" (me)... Looks like I need to spend more time at ZVON's XLab.
Tonight I've really thought about how I still think "procedurally" and not
"declaratively" when using XSL...
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.
Oh... Thanks... I was going to look up the Saxon extension but haven't had
time... For some reason I assumed "P" was the block you chose because of the
HTML <p> tag... Right before you wrote back I noticed there were two P's in
the expression--and that's what I didn't change before. But now I know I
don't have to change it at all.
Super-thanks again,
/johnny :)
--
"You'll see it when you believe it."
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list