[xsl] [Xpath] Finding the *first* preceding sibling

Subject: [xsl] [Xpath] Finding the *first* preceding sibling
From: Stephane Bortzmeyer <bortzmeyer@xxxxxx>
Date: Fri, 4 Apr 2003 16:26:45 +0200
I try to extract a text if the *immediate* preceding sibling is a
given element (here, <blink>).

For instance, in this document:

<?xml version="1.0" ?>
<para>Foo <blink>bar</blink> baz <invisible>bol</invisible>end.</para>

The Xpath expression '/para/node()[preceding-sibling::blink]' yields:

Found 3 nodes in simple.xml:
-- NODE --
 baz 
-- NODE --
<invisible>bol</invisible>
-- NODE --
end.

which seems fine. But I would like to retrieve only the node with
content "baz". I tried '/para/node()[preceding-sibling::blink[1]]' but
it gives exactly the same set of nodes. 

What did I miss in the Xpath specification?

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


Current Thread