- From: <bugzilla@jessica.w3.org>
- Date: Fri, 27 May 2016 17:21:03 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29670 --- Comment #2 from Abel Braaksma <abel.braaksma@xs4all.nl> --- Thanks, this does simplify matters. > So an accumulator can reference the GCI only in the case where it is being > applied to the tree rooted at the GCI. I don't think this is possible. Apparently, the GCI can only be accessed in xsl:variable/xsl:param. Even if GCI == IMS, then still, from the point of view of the spec, they are not the same. This does create an edge-case scenario, though, which I am not sure we address properly: <xsl:global-context-item streamable="yes" /> <xsl:variable name="X" select="accumulator-before('acc')" /> <xsl:accumulator name="acc" initial-value="has-children()" streamable="yes"> <xsl:accumulator-rule select="$value" /> </xsl:accumulator> <xsl:template match="/"> <xsl:value-of select="$X" /> </xsl:template> What happens here is that $X uses fn:accumulator-before, which results in the accumulator "acc" being applicable to the GCI (the real GCI, irrespective of the IMS). I am not sure this is (un)fortunate. As in this case both the xsl:variable and the xsl:accumulator/@initial-value *MUST* be motionless/grounded. I don't think it serves any practical use-case, but I think it is the only way to force an accumulator on a streamed GCI, though this GCI cannot be consumed in any way. In fact, that applies to any GCI that is a streamed node. It cannot be consumed. Yes, if the IMS is the same (but we don't enforce, nor disallow them to be node-identity equal) then you can argue that applying templates will consume the GCI, but that is not what happens here. This begs the question: if we can never consume a streamed GCI, should we maintain all that machinery? I know that when we added it it seemed a good idea, but perhaps we would do better to suggest GCI to be absent when IMS is a streamed node. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Friday, 27 May 2016 17:21:06 UTC