[Home] [By Thread] [By Date] [Recent Entries]

  • From: David Carlisle <d.p.carlisle@g...>
  • To: "Costello, Roger L." <costello@m...>
  • Date: Sat, 24 Sep 2016 21:09:32 +0100

yes or I'd write  it as

empty((node,@*)) 

Note as has been discussed <B> </B> is still empty or not depending on the parser, or to put it another way you are testing the result of the parse not the initial lexical xml document.

Also you are classing attributes as non-empty content but not namespace nodes so

<B foo=""/> is non empty but <B xmlns:x="data:,hello"></B> is empty.

David


On 24 September 2016 at 21:00, Costello, Roger L. <costello@m...> wrote:

Hi Folks,

I wrote an XSLT program that evaluates a series of B elements, to see which are empty. The XSLT program tests each B element using this XPath expression:   not(node()) and not(@*)

Here are the results:

 

Is empty?

<B/>

true

<B></B>

true

<B>&null;</B>

true

<B>  </B>

false

<B><!-- Hello, world --></B>

false

<B><bad/></B>

false

<B>99</B>

false

<B x="10"/>

false

 

The XPath seems to be returning results that are consistent with my definition of “empty element.”

/Roger




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


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member