[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] XQuery Puzzle
- From: "Fraser Goffin" <goffinf@googlemail.com>
- To: xml-dev <xml-dev@lists.xml.org>
- Date: Thu, 17 Apr 2008 19:12:20 +0100
Is there any difference in the way that XPath 1.0 and 2.0 evaluate
multiple predicates like this (there was a different result between
some of the XQuery processors used and it wasn't clear whether these
implemented XPath 1.0 or 2.0) ?
Fraser.
On 17/04/2008, Michael Kay <mike@saxonica.com> wrote:
> > Thanks. Does Andrews point above still hold though, that is,
> > gotcha and div1 nodes are NOT siblings since they don't share
> > a common parent ??
>
> Yes, the expression was void on both counts - Andrew spotted one mistake, I
> spotted another.
>
> Michael Kay
> http://www.saxonica.com/
>
> >
> > Fraser
> >
> > On 17/04/2008, Michael Kay <mike@saxonica.com> wrote:
> > >
> > > > Sorry for asking an XQuery question here, if there is a more
> > > > appropriate forum please let me know.
> > >
> > > talk at x-query.com
> > >
> > > >
> > > > Anyway, a question relating to this simple XQuery has been
> > > > circulating on another group, but I am puzzled as to
> > whether using
> > > > // on a sequence is valid (see the return clause below).
> > I tried in
> > > > a couple of XQuery parsers (Saxon9 + the one built into
> > XML Spy) and
> > > > both return no results ??
> > > >
> > > > let $set := (
> > > > <div1>one </div1>,
> > > > <div1 class="doc">two </div1>,
> > > > <div1>three </div1>,
> > > > <div1 class="doc">four </div1>,
> > > > <gotcha>START</gotcha>,
> > > > <div1>five </div1>
> > > > )
> > > > return $set//gotcha/preceding-sibling::div1[@class="doc"][1]
> > >
> > > This is actually an XPath question. This path expands to
> > >
> > >
> > $set/descendant-or-self::node()/child::gotcha/preceding-sibling::div1[
> > > @class
> > > ="doc"][1]
> > >
> > > Now, one of the elements in $set is a gotcha element, but
> > none of them
> > > has a child, or has a descendant with a child, named
> > gotcha. Therefore
> > > the expression selects nothing.
> > >
> > > You want $set/self::gotcha/....
> > >
> > > Michael Kay
> > > http://www.saxonica.com/
> > >
> > >
> >
> > ______________________________________________________________
> > _________
> >
> > XML-DEV is a publicly archived, unmoderated list hosted by
> > OASIS to support XML implementation and development. To
> > minimize spam in the archives, you must subscribe before posting.
> >
> > [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> > Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> > subscribe: xml-dev-subscribe@lists.xml.org List archive:
> > http://lists.xml.org/archives/xml-dev/
> > List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
> >
>
>
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]