[Bug 28833] [XSLT30] Streamability of fn:current and varrefs should be roaming in higher-order operands

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

Michael Kay <mike@saxonica.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #4 from Michael Kay <mike@saxonica.com> ---
In email and telcon discussion we converged on consensus for the following
proposal:

This suggests using posture=“climbing”, which doesn’t make much sense
intuitively [1], but has the required behavior of allowing inspection but not
allowing downwards selection. This suggests the following alternative rules:

1. Let E be the outermost containing XPath expression of the call to the
current function.

2. If the context posture of E is grounded, then motionless and grounded.

3. If the path in the expression tree that connects the call on current to E
(excluding E itself) contains an expression that is a higher-order operand of
its parent expression, then motionless and climbing.

4. Otherwise, the sweep is motionless, and the posture is the context posture
of E.

[1] There might be a rationale along the lines: if the stream position P at the
time current() is evaluated is not the node C that current() returns, then it
must be a descendant of C, in which case getting back to C is a climbing
operation.

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

Received on Thursday, 23 July 2015 17:09:08 UTC