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 27064 - [XT30] Allow posture and sweep tests in the catalog
Summary: [XT30] Allow posture and sweep tests in the catalog
Status: CLOSED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XSLT 3.0 Test Suite (show other bugs)
Version: Last Call drafts
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: Abel Braaksma
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-15 19:06 UTC by Abel Braaksma
Modified: 2014-10-28 17:44 UTC (History)
1 user (show)

See Also:


Attachments

Description Abel Braaksma 2014-10-15 19:06:45 UTC
We should allow the possibility of posture and sweep tests, to make it possible for processors to assess individual posture and sweep expressions or constructs, based on context posture and expected posture and sweep results.

This can, of course, not be a required feature, as the specification does not mandate processors to have an interface to test for just posture and sweep of any construct, but it helps in creating tests that otherwise can only be part of a streaming test set, which can either stream or not stream.

The advantage of such a feature in the catalog would be to test an expression whether it is crawling or climbing. It gives a more granular control over what we are actually testing and prevents streamability tests to slip through when the processor makes the wrong assessments, but fails to report them as errors.
Comment 1 Michael Kay 2014-10-15 21:51:41 UTC
I'm reluctant. Posture and sweep are internal properties of expressions and there is no obligation on processors to expose them. A processor could conceivably implement exactly the same streamability rules without using these concepts, or could refine them, e.g. to a larger set of posture and sweep values to capture extra distinctions. Processors are also allowed to provide streaming of constructs that are not guaranteed streamable.

I think it should be possible to recast such tests in terms that are exposed by the spec, e.g. if an expression is motionless then it can be used as a predicate in a pattern; if the posture is striding then it can be used in the select attribute of xsl:for-each.
Comment 2 Michael Kay 2014-10-16 11:21:22 UTC
OK, I guess it's a done deal. And the new tests are proving useful. Objection withdrawn.
Comment 3 Abel Braaksma 2014-10-16 14:59:08 UTC
Well, it (kind of) followed from my wish to move our tests into the XT30 test set. I've tried using other means, but it did not give the wanted results (too many tests were created and it was not easy to get them right).

Since this is obviously about internals, there is no requirement to pass them. I think we should leave them in. I will add a dependency property for these tests, like "supports-posture-and-sweep-assessments".

The tests as they currently are definitely helped us doing the streamability analysis and to find flaws in the spec as well, in part because they are so isolated and small.
Comment 4 Abel Braaksma 2014-10-28 17:44:34 UTC
I'm closing this bug as I sense that there is consensus in the WG about having these tests. While improvements are doubtlessly necessary, I don't think we should keep this bug entry around for that.