[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] xsl:if test = empty string, returns true


Subject: Re: [xsl] xsl:if test = empty string, returns true
From: Jorge <chocolate.camera@xxxxxxxxx>
Date: Sun, 13 May 2012 22:43:08 +0200

> Try following::string instead.

Still evaluates to true.

> The node following the key element is a text node containing a newline and
some spaces before the <string> open tag.

That is what I initially thought, so I tried adding

	<xsl:strip-space elements="plist dict"/>

and then

	<xsl:strip-space elements="*"/>

Shouldn't that take care of any white-space-only text nodes? Adding those
lines does not change the result.

> Note, I'd use, e.g.
>  <pair><key>testkey</key><value>....</value></pair><pair>...
> and then you don't need the [1].

The plist files follows http://www.apple.com/DTDs/PropertyList-1.0.dtd. It is
not a syntax that I can choose.


El 13/05/2012, a las 22:24, Liam R E Quin escribis:

> On Sun, 2012-05-13 at 22:03 +0200, Jorge wrote:
> [...]
>> $metadata/plist/dict/key[text()=$label]/following::node()[1]/text())
> [...]
>
>>> <dict>
>>> 	<key>testkey</key>
>>> 	<string></string>
>>> </dict>
>>> </plist>
>>
>> Any idea why the test evaluates to true?
> The node following the key element is a text node containing a newline
> and some spaces before the <string> open tag.  Try following::string
> instead.
>
> Note, I'd use, e.g.
>  <pair><key>testkey</key><value>....</value></pair><pair>...
> and then you don't need the [1].
>
> Liam
>
> --
> Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/
> Pictures from old books: http://fromoldbooks.org/


Current Thread
Keywords
xml