- From: <bugzilla@jessica.w3.org>
- Date: Thu, 08 Sep 2016 18:43:20 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29813
Bug ID: 29813
Summary: [xslt30] Errors in accumulators
Product: XPath / XQuery / XSLT
Version: Candidate Recommendation
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P2
Component: XSLT 3.0
Assignee: mike@saxonica.com
Reporter: mike@saxonica.com
QA Contact: public-qt-comments@w3.org
Target Milestone: ---
We briefly touched on the subject of dynamic errors in evaluating an
accumulators today, and it occurred to me that the spec has very little to say
on the topic. Since accumulators are evaluated "in the background", it is not
clear how a dynamic error should be handled, or whether it can be caught.
I propose that a dynamic error that occurs while evaluating
xsl:accumulator/@initial-value or xsl:accumulator-rule/@select should (only)
cause a "subsequent" call on accumulator-before() or accumulator-after() to
fail with (the same) dynamic error. In other words, the error is "held back"
until the next time the accumulator is referenced (and by implication it goes
unreported if the accumulator is not subsequently referenced).
This fits well with a lazy evaluation strategy. If an accumulator is evaluated
in a parallel thread to the main processing then the accumulator thread must
hold on to the error until the time comes to report it. Dynamic errors become
capable of a predictable try/catch behaviour.
--
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Thursday, 8 September 2016 18:43:28 UTC