xsl-list
[Top] [All Lists]

RE: Float values

2004-01-26 09:10:26
A gloss on this: whether 0.00 and 0 are the same depends on whether they are strings or numbers. Compared as strings they are not the same; compared as numbers they are. In XSLT they could be either.

The OP has xsl:if test="TotalPaid=0". child::TotalPaid here is a node set (the set of all child TotalPaid elements of the current node). So you have to know how to compare a node-set to a number; the XPath 1.0 casting rules are invoked for this:

If one object to be compared is a node-set and the other is a number, then the comparison will be true if and only if there is a node in the node-set such that the result of performing the comparison on the number to be compared and on the result of converting the string-value of that node to a number using the number function is true. [XPath 3.4]

0 is a number; the value 0.00 cast to a number is 0; 0 = 0 is true, so that's what we get.

But if you tested "TotalPaid='0'" that would be a test against a string value; the string "0" is not equal to the string "0.00", so it would test as false.

Cheers,
Wendell

At 11:59 AM 1/25/2004, Kenny wrote:
It would be true.  0.00 and 0 are the same in XSLT.

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
Mark
Williams
Sent: Sunday, January 25, 2004 11:29 AM
To: XSL-List
Subject: [xsl] Float values

If a value in an xml file  (say TotalPaid) was shown as 0.00

Would the following statement in the xslt stylesheet be correct

xsl:if test="TotalPaid=0" be true or false.

TIA

___&&__&_&___&_&__&&&__&_&__&__&&____&&_&___&__&_&&_____&__&__&&_____&_&&_
    "Thus I make my own use of the telegraph, without consulting
     the directors, like the sparrows, which I perceive use it
extensively for a perch." -- Thoreau

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



<Prev in Thread] Current Thread [Next in Thread>