This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 29941 - [xslt30ts] Non-streamable map tests
Summary: [xslt30ts] Non-streamable map tests
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XSLT 3.0 Test Suite (show other bugs)
Version: Candidate Recommendation
Hardware: PC All
: P2 normal
Target Milestone: ---
Assignee: Abel Braaksma
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
Depends on:
Reported: 2016-10-18 10:01 UTC by Michael Kay
Modified: 2016-10-19 18:54 UTC (History)
0 users

See Also:


Description Michael Kay 2016-10-18 10:01:44 UTC
I believe that some of the tests in the si-map test set should fail streamability analysis: specifically si-map-003, si-map-008, and si-map-009.

The spec says:

In the case of the xsl:map instruction, this [ability to make multiple downward selections] applies only in the case where the instruction consists exclusively of xsl:map-entry (and xsl:fallback) children, and not in more complex cases where the map entries are constructed dynamically (for example using a control flow implemented using xsl:choose, xsl:for-each, or xsl:call-template).

It would be nice if we could allow more dynamic streamability of xsl:map, but I think it's too late for that now.

I propose to convert these to error cases, unless anyone objects.
Comment 1 Michael Kay 2016-10-18 10:22:45 UTC
Sorry, I got this wrong.


si-map-003, -008, and -009 are not streamable under the special rule 1 for streamability of xsl:map (which allows multiple downward selections), but they are streamable under rule 2 (the contained sequence constructor is streamable).

Perhaps the cited paragraph from 21.6, or the subsequent examples, should mention this.