RE: [xsl] Addition/Subtraction of numbers.

Subject: RE: [xsl] Addition/Subtraction of numbers.
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Wed, 23 Jan 2002 18:52:45 -0500

At 06:24 PM 1/23/02, you wrote:
I have the understanding that the XPath number() function will return the string 'NaN' if the parameter passed in is not a number.

No, not exactly, it will return the number Not-a-Number (which if stringified comes out 'NaN').

Though, at a lower level, won't the same function called twice with identical parameter(s) return the same thing?

Yes, it will (thank goodness).

So, when would your test of "number($t1) = number($t1)" fail?

When either number is Not-a-number. According to the Java Language Specification, which is cited by XPath (section 3.5) for its summary of the behavior of IEEE 754 double-precision numbers, "The equality operator == returns false if either operand is NaN" (of course in XPath the operator is '=' ... for now).

So NaN is not equal to itself.

It's confusing, but it comes with the territory of a number that is Not-a-Number. :-> Trust Jeni to be able to use this wrinkle productively.


Wendell Piez                            mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.      
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
  Mulberry Technologies: A Consultancy Specializing in SGML and XML

XSL-List info and archive:

Current Thread