[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Question for the XPath and DOM folks
I think that the answer to your question is: It should return the first non-empty TEXT DOM node ("bar") (!!!) I'm based on this from DOM3-Xpath Quote "The XPath model relies on the XML Information Set [XML Information set] ands represents Character Information Items in a single logical text node where DOM may have multiple fragmented Text nodes due to cdata sections, entity references, etc. Instead of returning multiple nodes where XPath sees a single logical text node, only the first non-empty DOM Text or CDATASection node of any logical XPath text will be returned in the node set. Applications using XPath in an environment with fragmented text nodes must manually gather the text of a single logical text node possibly from multiple nodes beginning with the first Text node or CDATASection node returned by the implementation." So if applied to a DOM tree fo the Document Xpath returns something different that applying the same query to an XML document directly this is really obscure and confusing. Garland ----- Original Message ----- From: Dare Obasanjo <dareo@m...> To: <veillard@r...> Cc: <xml-dev@l...> Sent: Saturday, July 20, 2002 4:53 PM Subject: RE: Question for the XPath and DOM folks > Ahhh. But many vendors (including Microsoft) have shipped DOM implementations that enable XPath queries. Also the W3C DOM working group is in the process of standardizing XPath over the DOM as we speak[0] so you can't just punt and say it shouldn't happen and is thus undefined since it already does. > > [0] http://www.w3.org/TR/2002/WD-DOM-Level-3-XPath-20020328/ > > -----Original Message----- > From: Daniel Veillard [mailto:veillard@r...] > Sent: Sat 7/20/2002 12:45 PM > To: Dare Obasanjo > Cc: xml-dev@l... > Subject: Re: Question for the XPath and DOM folks > > > > On Sat, Jul 20, 2002 at 11:19:25AM -0700, Dare Obasanjo wrote: > > Given the following XML in a DOM document > > > > <foo> > > bar > > <![CDATA[ > > baz > > ]]> > > quux > > </foo> > > > > and the following XPath > > > > file://text() > > > > what should be the resulting DOM nodes and why? I can think of two answers but they both have problems. > > Well the theorical answer is that XPath operates on an XPath > data model, not a DOM view. Your question has no answer, XPath is not > designed to work on a standard DOM tree, CDATA are transparently > turned in (the container) text node. > it returns the text node of the XPath data model which is the unique > children of the foo element node. > > Daniel > > -- > Daniel Veillard | Red Hat Network https://rhn.redhat.com/ > veillard@r... | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ > http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/ > > > --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.373 / Virus Database: 208 - Release Date: 7/4/02
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|