# 2.1.4 [W3C-XSD] Section 3.2.5, double

V0003:

The specification states:

``` [Definition:]  The double datatype is patterned after the IEEE double-precision
64-bit floating point type [IEEE 754-1985]. The basic ·value space· of double
consists of the values m × 2^e, where m is an integer whose absolute value is
less than 2^53, and e is an integer between -1075 and 970, inclusive. In addition
to the basic ·value space· described above, the ·value space· of double also
contains the following three special values: positive and negative infinity and
not-a-number (NaN). The ·order-relation· on double is: x < y iff y - x is
positive for x and y in the value space. Positive infinity is greater than all
other non-NaN values. NaN equals itself but is ·incomparable· with (neither
greater than nor less than) any other value in the ·value space·.
```

MSXML6

No error is reported if the `NaN` value is compared with positive infinity or negative infinity.

V0004:

The specification states:

``` Any value ·incomparable· with the value used for the four bounding facets
(·minInclusive·, ·maxInclusive·, ·minExclusive·, and ·maxExclusive·) will be
excluded from the resulting restricted ·value space·. In particular, when "NaN"
is used as a facet value for a bounding facet, since no other double values are
·comparable· with it, the result is a ·value space· either having NaN as its only
member (the inclusive cases) or that is empty (the exclusive cases). If any other
value is used for a bounding facet, NaN will be excluded from the resulting
restricted ·value space·; to add NaN back in requires union with the NaN-only
space.
```

MSXML6

If `NaN` is used as a facet value for a bounding facet, when `NaN` is compared to other non-`NaN` doubles, `NaN` is less than any non-`NaN` number.