- From: Abel Braaksma <abel.braaksma@xs4all.nl>
- Date: Thu, 1 Oct 2015 17:58:02 +0200
- To: "Public XSLWG" <public-xsl-wg@w3.org>
> > I don’t think they are fundamentally different, only cosmetically. In both > cases I think users are entitled to expect that the resulting sequence will > usually be pipelined, that is, processed one “c” element at a time. Saxon’s > evaluation strategy for both expressions is almost exactly the same. > I meant that our rules say about absorption, that whatever is in the operand, is (fully) absorbed. If the argument is at the other end of a focus-changing construct, such as /a/b/c/grounding-expr(), or a/b ! grounding-expr(), then the part that is absorbed each time is much smaller. Of course, an implementation can do this differently, leading to a larger set of streamable scenarios. But I think this is the way we essentially describe it. In effect of the streaming rules, a user may expect copy-of(a/b) to require more memory then a/b/copy-of().
Received on Thursday, 1 October 2015 15:58:39 UTC