Ignore the previous message please.
n2 was whitespace.

/Mattias

> -----Original Message-----
> From: [EMAIL PROTECTED]
[mailto:jaxen-interest-
> [EMAIL PROTECTED]] On Behalf Of Mattias Reichel
> Sent: den 22 april 2002 08:54
> To: 'James Strachan'
> Cc: [EMAIL PROTECTED]
> Subject: RE: [Jaxen] Possible bug with processing instructions
> 
> Hi again,
> After testing the patch I've found that it is still a bit erroneous.
> 
> <a>
>   <b>foo</b>
>   <?toc order-by="x"?>
>   <c>bar</c>
> </a>
> 
> Node n1 = c.selectSingleNode("preceding-sibling::*");
> Node n2 = c.selectSingleNode("preceding-sibling::node()");
> Node n3 =
> c.selectSingleNode("preceding-sibling::processing-instruction()");
> 
> n1.getName() returns 'b'
> n1.getText() returns 'foo'
> 
> n2.getName() returns null
> n2.getText() returns an empty string
> 
> n3.getName() returns 'toc'
> n3.getText() returns 'order-by="x"'
> 
> I would expect that n2 would return the same values as n3.
> 
> /Mattias
> 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> [mailto:jaxen-interest-
> > [EMAIL PROTECTED]] On Behalf Of James Strachan
> > Sent: den 19 april 2002 13:43
> > To: Mattias Reichel
> > Cc: [EMAIL PROTECTED]
> > Subject: Re: [Jaxen] Possible bug with processing instructions
> >
> > OK all my patches are now in CVS and the test cases are all working
> > correctly now.
> >
> > James
> > ----- Original Message -----
> > From: "James Strachan" <[EMAIL PROTECTED]>
> > To: "Mattias Reichel" <[EMAIL PROTECTED]>; "'bob mcwhirter'"
> > <[EMAIL PROTECTED]>
> > Cc: <[EMAIL PROTECTED]>
> > Sent: Friday, April 19, 2002 1:14 PM
> > Subject: Re: [Jaxen] Possible bug with processing instructions
> >
> >
> > > I've fixed that locally so it should work fine. Will be checking
it
> in
> > > shortly - will let you know when. I just wanted to check I'd
> interpreted
> > the
> > > spec right first.
> > >
> > > Here's the test cases that work locally for me now - I think these
> look
> > > right... Lemme know if I've missed anything
> > >
> > > Its using your example XML doc with some text in the elements to
> make
> > the
> > > tests a bit easier...
> > >
> > > <a>
> > >   <b>foo</b>
> > >   <?toc order-by="x"?>
> > >   <c>bar</c>
> > > </a>
> > >
> > >
> > >   <document url="xml/pi2.xml">
> > >     <context select="/a/c">
> > >       <test select="//processing-instruction()" count="1"/>
> > >       <test select="preceding-sibling::*" count="1"/>
> > >       <test select="preceding-sibling::node()" count="5"/>
> > >       <test select="preceding-sibling::*[1]" count="1"/>
> > >       <test select="preceding-sibling::processing-instruction()"
> > count="1"/>
> > >       <valueOf
> > >
> > select="preceding-sibling::processing-instruction()">order-
> > by="x"</valueOf>
> > >       <valueOf select="preceding-sibling::*[1]">foo</valueOf>
> > >       <valueOf
> > select="preceding-sibling::node()[2]">order-by="x"</valueOf>
> > >     </context>
> > >   </document>
> > >
> > >
> > > James
> > > ----- Original Message -----
> > > From: "Mattias Reichel" <[EMAIL PROTECTED]>
> > > To: "'James Strachan'" <[EMAIL PROTECTED]>; "'bob
> mcwhirter'"
> > > <[EMAIL PROTECTED]>
> > > Cc: <[EMAIL PROTECTED]>
> > > Sent: Friday, April 19, 2002 1:16 PM
> > > Subject: RE: [Jaxen] Possible bug with processing instructions
> > >
> > >
> > > > Ok, but it doesn't work with node() or processing-instruction()
> either
> > > >
> > > > <a>
> > > >   <b/>
> > > >   <?toc order-by="x"?>
> > > >   <c/>
> > > > </a>
> > > >
> > > > c.selectSingleNode("preceding-sibling::*") returns b
> > > > c.selectSingleNode("preceding-sibling::node()") returns b
> > > >
c.selectSingleNode("preceding-sibling::processing-instruction()")
> > > > returns null
> > > >
> > > > /Mattias
> > > >
> > > > > -----Original Message-----
> > > > > From: [EMAIL PROTECTED]
> > > > [mailto:jaxen-interest-
> > > > > [EMAIL PROTECTED]] On Behalf Of James Strachan
> > > > > Sent: den 19 april 2002 12:44
> > > > > To: Mattias Reichel; 'bob mcwhirter'
> > > > > Cc: [EMAIL PROTECTED]
> > > > > Subject: Re: [Jaxen] Possible bug with processing instructions
> > > > >
> > > > > From: "Mattias Reichel" <[EMAIL PROTECTED]>
> > > > > > Hmm,
> > > > > >
> > > > > > Switching to preceding axis for clarity, but issue is the
> same.
> > > > > >
> > > > > > From Michael Kay's XSLT Programmers Reference 2nd Edition by
> Wrox
> > > > Press,
> > > > > > page 364:
> > > > > >
> > > > > > preceding:
> > > > > > This selects all the nodes that appear before the origin
node,
> > > > excluding
> > > > > > the ancestors of the origin, in reverse document order. If
the
> > > > origin is
> > > > > > an element node, this effectively means that it contains all
> the
> > > > text
> > > > > > nodes, element nodes, comments, and processing instructions
in
> the
> > > > > > document that finish before the start tag of the origin
> element.
> > The
> > > > > > preceding axis will never contain attribute or namespace
> nodes.
> > > > > >
> > > > > > Is he dead wrong here or what?
> > > > >
> > > > > The XPath spec also says...
> > > > >
> > > > > the preceding-sibling axis contains all the preceding siblings
> of
> > the
> > > > > context node; if the context node is an attribute node or
> namespace
> > > > node,
> > > > > the preceding-sibling axis is empty
> > > > >
> > > > >
> > > > > The issue is how does the '*' node test filter the axis.
> > > > >
> > > > > So the preceding-sibling axis contains all previous nodes of
any
> > type.
> > > > > Though using "*" filters the axis to just elements. Using
node()
> > will
> > > > see
> > > > > all node types. Using processsing-instruction() will only see
> PIs
> > etc.
> > > > >
> > > > > I think this is correct. Am about to build some more test
cases
> to
> > > > check
> > > > > this is how Jaxen behaves...
> > > > >
> > > > > James
> > > > >
> > > > >
> > > > > _________________________________________________________
> > > > > Do You Yahoo!?
> > > > > Get your free @yahoo.com address at http://mail.yahoo.com
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Jaxen-interest mailing list
> > > > > [EMAIL PROTECTED]
> > > > > https://lists.sourceforge.net/lists/listinfo/jaxen-interest
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Jaxen-interest mailing list
> > > > [EMAIL PROTECTED]
> > > > https://lists.sourceforge.net/lists/listinfo/jaxen-interest
> > >
> > >
> > > _________________________________________________________
> > > Do You Yahoo!?
> > > Get your free @yahoo.com address at http://mail.yahoo.com
> > >
> > >
> > > _______________________________________________
> > > Jaxen-interest mailing list
> > > [EMAIL PROTECTED]
> > > https://lists.sourceforge.net/lists/listinfo/jaxen-interest
> >
> >
> > _________________________________________________________
> > Do You Yahoo!?
> > Get your free @yahoo.com address at http://mail.yahoo.com
> >
> >
> > _______________________________________________
> > Jaxen-interest mailing list
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/jaxen-interest
> 
> 
> 
> _______________________________________________
> Jaxen-interest mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jaxen-interest



_______________________________________________
Jaxen-interest mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jaxen-interest

Reply via email to