I am trying to construct an xpath expression which will select the
second matching node of a nodelist.
I have:
//org[(_at_)department='Foo'][2]
I expected that to select all //org nodes where @department =
'Foo' and
then give me the second within that set.
however this is behaving as
//org[(_at_)department='Foo'/self::node()[position() = 2] which
will always
be empty.
No, it is actually behaving as
/descendant-or-self::node/(child::org[(_at_)department='Foo'][2])
that is, it will select every org that is the second child of its parent
that has @department foo.
You probably want (//org)[(_at_)department='Foo'][2]
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list