[Bug 27750] New: [F+O 3.1] Determinism of uri-collection()

https://www.w3.org/Bugs/Public/show_bug.cgi?id=27750

            Bug ID: 27750
           Summary: [F+O 3.1] Determinism of uri-collection()
           Product: XPath / XQuery / XSLT
           Version: Candidate Recommendation
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Functions and Operators 3.1
          Assignee: mike@saxonica.com
          Reporter: mike@saxonica.com
        QA Contact: public-qt-comments@w3.org

The specification of collection() contains some careful language about
determinism:

<quote>
By default, this function is ·deterministic·. This means that repeated calls on
the function with the same argument will return the same result. However, for
performance reasons, implementations may provide a user option to evaluate the
function without a guarantee of determinism. The manner in which any such
option is provided is ·implementation-defined·. If the user has not selected
such an option, a call to this function must either return a deterministic
result or must raise a dynamic error [err:FODC0003].
</quote>

There is no similar language for uri-collection(). As currently written,
uri-collection() is required to be deterministic, full stop.

Perhaps this was done on the basis that caching a set of URIs for future use of
the same collection URI is used again is more affordable than caching all the
documents that result from dereferencing these URIs. However, having different
rules makes life difficult for an implementation that wants to keep the
implementations of collection() and uri-collection() closely aligned, perhaps
by implementing collection() as uri-collection()!doc(.).

I think there is a strong case for adding the paragraph quoted above to the
uri-collection() specification.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 5 January 2015 11:53:14 UTC