[Bug 28764] New: [XSLT30] (editorial) xsl:assert should only ever raise XTMM9001

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

            Bug ID: 28764
           Summary: [XSLT30] (editorial) xsl:assert should only ever raise
                    XTMM9001
           Product: XPath / XQuery / XSLT
           Version: Last Call drafts
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XSLT 3.0
          Assignee: mike@saxonica.com
          Reporter: abel.braaksma@xs4all.nl
        QA Contact: public-qt-comments@w3.org

This bug originated in the mail:
https://lists.w3.org/Archives/Member/w3c-xsl-wg/2015May/0012.html (member
only).

This bug was discussed and its resolution as mentioned in that mail was
ACCEPTED by the WG at the 2015-06-04 telcon, minutes:
https://lists.w3.org/Archives/Member/w3c-xsl-wg/2015Jun/0011.html (member
only).

Rationale:

Assertions are meant to test pre-conditions and, in line with best-practices
from TDD, should have one of two outcomes: either succeed, or fail in a
determinate manner, that means that even in light of an error, they should fail
with their own predefined error.

Note that we currently say in 22.2 (which seems to suggest this):

<quote>
The expression in the test attribute is evaluated. If the effective boolean
value of the result is true, the assertion succeeds, and no further action is
taken. If the effective boolean value is false, or if a dynamic error occurs
during evaluation of the expression, then the assertion fails.
</quote>

Resolution:

As discussed in the 2015-06-04 telcon and ACCEPTED, if an error occurs during
evaluation of a xsl:assert's @test attribute or sequence constructor, this
should only ever raise XTMM9001 (or whatever is in the @code attribute). This
should be mentioned so in the text of xsl:assert.

NOTE: marked editorial after finding out that the original text mildly hints in
this direction, though I think we should emphasize that an error in the
test-expression is never raised, always cloaked.

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

Received on Thursday, 4 June 2015 20:03:45 UTC