[Bug 29813] [xslt30] Errors in accumulators

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

--- Comment #1 from Michael Kay <mike@saxonica.com> ---
Subject to WG approval, I have added the following text to resolve this:

<div3 id="errors-in-accumulators" diff="add" at="T-bug29813">
<head>Dynamic Errors in Accumulators</head>
<p>If a dynamic error occurs when evaluating the <code>initial-value</code>
expression of <elcode>xsl:accumulator</elcode>, or the <code>select</code>
expression of <elcode>xsl:accumulator-rule</elcode>, then the error is signaled
as an error from the next call on <function>accumulator-before</function> or
<function>accumulator-after</function> that references the accumulator. If no
such call on <function>accumulator-before</function> or
<function>accumulator-after</function> happens, then the error goes
unreported.</p>

<note><p>In the above rule, the word <term>next call</term> is to be understood
in terms of functional dependency; that is, a call to
<function>accumulator-before</function> or
<function>accumulator-after</function> signals in error if the accumulator
value is functionally dependent on a computation that fails with a dynamic
error.</p></note>

<note><p>Particularly in the case of streamed accumulators, this may mean that
the implementation has to "hold back" the error until the next time the
accumulator is referenced, to give applications the opportunity to catch the
error using <elcode>xsl:try</elcode> and <elcode>xsl:catch</elcode> in a
predictable way.</p></note>

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

Received on Friday, 9 September 2016 18:25:40 UTC