This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: positional predicates in XPath vs XQL
- From: "Christopher R. Maden" <crism at maden dot org>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Fri, 23 Nov 2001 21:29:49 -0800
- Subject: RE: [xsl] positional predicates in XPath vs XQL
- References: <5.1.0.14.0.20011123194402.00a804b0@mail.maden.org>
- Reply-to: xsl-list at lists dot mulberrytech dot com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
At 21:10 23-11-2001, Howard Katz wrote:
> > From: owner-xsl-list@lists.mulberrytech.com
> > [mailto:owner-xsl-list@lists.mulberrytech.com]On Behalf Of Christopher
> > R. Maden
> >
> > At 15:35 23-11-2001, Howard Katz wrote:
> > >To my understanding, the same location path in XPath only
> > returns a single
> > >node, <2>. Is my understanding correct?
> >
> > No. Whence did you acquire it?
>
>Fallacious raciotination obviously.
>
>I'll bite. What is the correct result in the XPath case??
Nodes 2, 5, and 7.
The predicate filters its context node set, selecting the nodes for which
the predicate is true. A numeric predicate n is equivalent to the full
predicate position() = n.
Your example was the XPath /section/para[1] and the tree
1 section
2 para
3 para
4 section
5 para
6 section
7 para
8 para
9 para
[Note that this is not a well-formed XML document, though XPath can work on
well-formed text entities such as this.]
The XPath is equivalent to the expanded syntax
/child::section/child::para[position()=1]. The first / selects the root
node. The next expression selects all <section> children of the root -
nodes 1, 4, and 6 in your example. The next expression, child::para,
selects nodes for each node in its context. For node 1, nodes 2 and 3 are
selected; for node 4, node 5 is selected; for node 6, nodes 7, 8, and 9 are
selected. For each node set, the predicate is evaluated, returning true
for nodes 2, 5, and 7, as they are each the first in their node set.
~Chris
P.S. YM "ratiocination". HTH. HAND.
- --
Christopher R. Maden, Principal Consultant, HMM Consulting Int'l, Inc.
DTDs/schemas - conversion - ebooks - publishing - Web - B2B - training
<URL: http://www.hmmci.com/ > <URL: http://crism.maden.org/consulting/ >
PGP Fingerprint: BBA6 4085 DED0 E176 D6D4 5DFC AC52 F825 AFEC 58DA
-----BEGIN PGP SIGNATURE-----
Version: PGP Personal Privacy 6.5.8
iQA/AwUBO/8wTaxS+CWv7FjaEQJSvgCeL1eRdbrzxfoi/rAWDuzfGJoy9HAAoJOV
v2cdG8esH2X3eFyNY6/05Y3g
=veO5
-----END PGP SIGNATURE-----
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list