[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: XPath: position of the parent ?
- From: Jeni Tennison <mail@jenitennison.com>
- To: Gerd Mueller <gerd@smb-tec.com>
- Date: Fri, 17 Aug 2001 10:25:36 +0100
Hi Gerd,
> How do I express in XPath the position of the parent of a node ? I
> guess it must be something like '../position()', but this don't
> work.
The terminology that's used in XPath can be a little confusing here.
In XPath, the only node that has a position is the context node - the
node you're currently looking at - within the context node list - the
list of nodes that you've selected. If you think about it like that,
then the position of a node's parent is always 1, because when you
select the parent of a node you only select one node.
But I think you're probably after the position of a node's parent node
*in the list of its siblings*. You can get this by counting how many
preceding siblings the parent node has, and adding 1:
count(../preceding-sibling::node()) + 1
(You may want to narrow down the types of preceding siblings that you
count, to prevent yourself from counting whitespace.)
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/