This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Difference between preceding::foo[1] and (preceding::foo)[1]
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re: [xsl] Difference between preceding::foo[1] and (preceding::foo)[1]
- From: Oleg Tkachenko <olegt at multiconn dot com>
- Date: Thu, 06 Sep 2001 17:13:41 +0200
- Organization: Multiconn International
- References: <85CF1C4ED1C6D411A8AE00508B682BD2042C1AA4@DBCFAA73>
- Reply-To: xsl-list at lists dot mulberrytech dot com
Zwetselaar M. van (Marco) wrote:
> Now, I understand the syntactic difference between preceding::foo[1] and
> (preceding::foo)[1]. In the first expression, the predicate is part of
> a location path, whereas in the second it is applied to an expression.
> The fact that these two expressions select different nodes is also clear
> to me. What I don't understand is how the predicate could apply to a
> CHILD axis. WHOSE child axis?
I dont't think an axis can belong to something, it's only direction.
See section 2.4 of XPath spec to grasp how predicate filters a nodeset.
Axis is have to be known to evaluate proximity position of every node
being filtered. So, filtering with respect to child axis implies
document ordered sorting and taking into account elements only (because
of child axis' principal node type).
--
Oleg Tkachenko
Multiconn International
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list