[xsl] Re: number(false) gives unexpected results

Subject: [xsl] Re: number(false) gives unexpected results
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Wed, 13 Feb 2002 12:02:37 -0800 (PST)
> Can anyone tell me why  in this expression:
> <img src="tab.{number(contains($input/@ACTIVE,@LABEL))}.gif" />
> the evaluation comes out as:
>tab.0.00000000000000000000000000000000000000000000000000000000000000000>
00000
>00000000000000000000000000000000000000000000000000000000000000000000000>
00000
>00000000000000000000000000000000000000000000000000000000000000000000000>
00000
>00000000000000000000000000000000000000000000000000000000000000000000133>
10712109329969.gif
> 
> when I evaluate 'contains($input/@ACTIVE,@LABEL)' it evaluates 
> correctly ('true' or 'false'), but as soon as I use the number() 
> function, I get this result. The above number is a 'false' case; the 
> true case ends in 83 instead of 69. I am using Xalan and Xerces; is 
> this a bug in the jars? I expect the evaluation to be either '1' 
> or '0'.


Must be a bug. To quote from the the second bullet in the XSLT 1.0 spec
definition of the number() function:

http://www.w3.org/TR/xpath#section-Boolean-Functions

"boolean true is converted to 1; boolean false is converted to 0"

Cheers,
Dimitre Novatchev.




__________________________________________________
Do You Yahoo!?
Send FREE Valentine eCards with Yahoo! Greetings!
http://greetings.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread