[Bug 15390] [QT3TS] Serialization tests too liberal about errors

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

Dennis Knochenwefel <w3.org_bugs@knochenwefel.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |w3.org_bugs@knochenwefel.de

--- Comment #2 from Dennis Knochenwefel <w3.org_bugs@knochenwefel.de> 2012-05-24 13:24:17 UTC ---
Generally spoken, I believe what you say, Michael, but in this case maybe the
spec needs to be clarified.

So, let me explain the way I interpreted the section cited:
-----------------------------------------------------------

1. The section uses the wording "report" instead of the usual "raise".
"Reporting" an error in contrast to "raising" an error is implicitly defined in
section "Identifying and Reporting Errors" as:

"The method by which an XQuery 3.0 processor *reports* error information to the
external environment is implementation-defined."

This led me to conclusion (1) that the query processing is not disrupted by
"reporting" (instead of raising) an error.

2. The spec doesn't give an explicit error code, which supported my conclusion
(1), because for an informal "reporting" you wouldn't need an error code.

3. The spec says the processor should report a "serialization error". As the
spec only defines "static errors", "dynamic errors", and "type errors" (cf.
section "Kinds of Errors") I saw my conclusion (1) confirmed that no disruptive
error should be raised. Accordingly, the spec defines (without mentioning
"serialization errors"):

"The outcome of the static analysis phase is either success or one or more type
errors, static errors, or statically-detected dynamic errors. The result of the
dynamic evaluation phase is either a result value, a type error, or a dynamic
error."

4. In section "Serialization" after the cited section the spec says:

"A processor that is not performing serialization may report errors if any
serialization parameters are incorrect, or may ignore such parameters."

This implies that "reporting an error" is not mandatory in any case.

In Summary:
-----------

I'm wondering if the spec doesn't need to clarify whether it wants a dynamic
error to be raised. If so, I believe it should also define the respective error
code and type of error. If it just wants something to be reported
(implementation-defined) without interrupting the processing (which was my
impression) it would be very helpful if this could be made abundantly clear. 

I assume that it would make sense to fix the mentioned tests after this has
been clarified?

I think this is the part the XQuery 3.0 Spec doesn't supply sufficiently:
-------------------------------------------------------------------------

>From the serialization spec (section "Conformance"): "It is the responsibility
of the host language to specify how serialization errors should be handled."

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Thursday, 24 May 2012 13:24:29 UTC