XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] How many text nodes in this element with a CDATA section?

Hi Roger,

> Then I executed this XPath expression to show the text() node in the <Test> element:

>           /Test/text()

>   that returned three items:

>           "NL   "         /Test[1]/text()[1]
>           "blah"                  /Test[1]/cdata-section()[1]
>           "NL"            /Test[1]/text()[2]

>   Yikes!

Just throw away this so-called "tool"  ; it is obviously buggy!

Try this in both BaseX and Oxygen and you will get correct results:

let $doc := parse-xml("<Test>
    <![CDATA[blah]]>
</Test>")
  return
   (
     $doc/Test/count(text()),
     """" || $doc/Test/text() ||  """"
   )


Cheers,
Dimitre

On Mon, Feb 7, 2022 at 4:05 PM Roger L Costello <costello@mitre.org> wrote:
Hi Folks,

Consider this <Test> element which contains whitespace, a CDATA section, and then more whitespace:

<Test>
    <![CDATA[blah]]>
</Test>

What is the content of the <Test> element? Is it:

(a) A sequence of three strings: ("NL   ", "blah", "NL")

(b) A single string: "NL   blahNL"

I executed the following XPath expression to count the number of text nodes in the <Test> element:

        /Test/count(text())

that returned:

        1

Then I executed this XPath expression to show the text() node in the <Test> element:

        /Test/text()

that returned three items:

        "NL   "         /Test[1]/text()[1]
        "blah"                  /Test[1]/cdata-section()[1]
        "NL"            /Test[1]/text()[2]

Yikes!

The XPath results are contradicting each other, right?

I'm confused. What is the content of the <Test> element: a single string "NL   blahNL" or a sequence of three strings ("NL   ", "blah", "NL")

/Roger




_______________________________________________________________________

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



--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what you're doing is work or play
-------------------------------------
To achieve the impossible dream, try going to sleep.
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
Typing monkeys will write all Shakespeare's works in 200yrs.Will they write all patents, too? :)
-------------------------------------
Sanity is madness put to good use.
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.
 


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS