This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: xpath expression
- To: Alex Black <enigma at turingstudio dot com>
- Subject: Re: [xsl] xpath expression
- From: Jeni Tennison <mail at jenitennison dot com>
- Date: Fri, 18 May 2001 09:03:07 +0100
- CC: xsl-list at lists dot mulberrytech dot com
- Organization: Jeni Tennison Consulting Ltd
- References: <B729B45F.9F30%enigma@turingstudio.com>
- Reply-To: xsl-list at lists dot mulberrytech dot com
Hi Alex,
> "if I'm not last, and the next input/type isn't select"
I think you're searching for the following-sibling:: axis, which gets
the next node of a certain type after this one. In your case, you
want to go up a level to the input element, then on to the
immediately following input element that comes after it, and down to
its child type element:
parent::input/following-sibling::input[1]/type != 'select'
Or, shorter:
../following-sibling::input[1]/type != 'select'
You should be a bit careful about using position() = last() to test
whether a particular node is 'last' - this tests whether it's the last
node in the current node list - the last of the list of nodes that are
currently being processed. It doesn't necessarily test whether it's
(in this case) the type element within an input element that doesn't
have any more following siblings (it only does if the current node
list *is* the list of type elements). You may be safer using:
not(../following-sibling::input[1])
I hope that helps,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list