W3C home > Mailing lists > Public > public-qt-comments@w3.org > February 2015

[Bug 28041] [XSLT30] Maps have implementation defined order, but this is not specified as such

From: <bugzilla@jessica.w3.org>
Date: Wed, 25 Feb 2015 21:23:23 +0000
To: public-qt-comments@w3.org
Message-ID: <bug-28041-523-9kX1dseVW4@http.www.w3.org/Bugs/Public/>
https://www.w3.org/Bugs/Public/show_bug.cgi?id=28041

--- Comment #1 from Michael Kay <mike@saxonica.com> ---
It's not correct to suggest that 21.1 says nothing. It defines a map as "A map
consists of a set of entries. " Defining it as a set makes it clear that in the
data model, there is no intrinsic order. The problem only arises with functions
that have to presen the set as a sequence, namely map:keys() and
map:for-each-entry().

It's also clear for both these functions that the result order is
implementation-dependent (NB, not implementation-defined).

So the only remaining question is whether, when the results of a function are
implementation-dependent but deterministic, two calls with the same arguments
are required to deliver the same result. F+O answers this question in 1.6.4:

<quote>
Some functions (such as fn:distinct-values and fn:unordered) produce results in
an ·implementation-defined· or ·implementation-dependent· order. In such cases
there is no guarantee that the order of results from different calls will be
the same. These functions are said to be non-deterministic with respect to
ordering.
</quote>

That seems clear enough to me.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Wednesday, 25 February 2015 21:23:26 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 25 February 2015 21:23:27 UTC