XSLT F2F at XML Prague 2016, Feb 17, 2016 (day 3)

Please find below the minutes of the XSLWG F2F at XML Prague 2016, Feb 17, 2016 (day 3)

Present at the meeing:

Jirka
Carine
Debbie
Michael
Abel
Florent

Minute taker: Abel

The agenda for today is to continue with test bugs and revisit the spec bugs once done with these:

--------------------------------------------------

Bug 29451: function-5005 streamability="shallow-desccent"

Spelling mistake, should be "shallow-descent".
The WG agrees, MK fixes the bug ad hoc.

-------------------------------------------------

Bug 29452 - [xslt30ts] function-5011 

The WG discussed the expected output of this bug at length and, after also running it against different implementations with and without streaming, found out that without streaming the result was matching the expected result of the test.

-------------------------------------------------

Bug 29454 - [xslt30ts] on-empty-112

The WG discussed the spaces-generation and agreed that the expected result is incorrect and the spaces are to be removed.

MK changed this ad-hoc, while the minute-taker was taking minutes ;)

-------------------------------------------------

Bug 29455 - [xslt30ts] on-empty-113a 

The WG discussed this bug report at length, also in light of the discussion of yesterday on xsl:on-empty. The WG appreciated the wish to make on-empty work more in line with Constructing Complex Content for orthogonality, as a Note in xsl:on-empty already says it follows the same principle.

A few proposals were made with pros and cons, in the end the WG found a good orthogonal compromise in applying existing rules 2 to 7 of section 5.7.1 Constructing Complex Content.

The bug report was changed into a spec bug.

A proposal of the above has been added to the bug report as comment#1.

MK found a possible ambiguity with a sequence constructor containing an xsl:sequence returning an empty string, then xsl:on-non-empty, then xsl:sequence returning an empty string. In this case, xsl:on-non-empty has to look forward to know whether it will have two adjacent strings that get a space in-between, turning it into non-empty. The instruction cannot know that using the present rules on xsl:on-non-empty.

ACTION-2016-02-17-001: MKay to come up with spec wording to apply the idea of using the Constructing Complex Content rules for determining emptiness of a sequence constructor.

After this discussion we went back to re-evaluate the new tests on-empty-113a/b to find out whether the edge cases tested here would work with the revised rules in place.

We assessed that the expected result of on-empty-113a is now correct.

When running the second example, we found that the seqtor return an empty string before xsl:on-empty kicks in. With the new rules this ends up being an empty text node which is removed, so xsl:on-empty gets evaluated. 

ABr now raises the question whether the result of xsl:on-empty is being added to the original sequence (with the empty strings) which would then add additional spaces, or whether it would replace the original sequence.

After some more back and forth a decision in principal was reached that xsl:on-empty should *replace* the sequence constructor. It would be far too hard to explain the corner case behavior would behave.

MKay takes this on as part of the original action.

We will look again at these tests after the spec has been updated.

------------------------------------------------------------------------

Bug 29456 - initial-function-100a et seq: param/@as in test catalog

Michael Kay explained the issue he raised in this bug report, which is that the param/@as in the test metadata was not intended to do a cast. However, this is not documented anywhere. 

We discussed the possibilities and decided that the param/@as should act as documentation only and that the expression in the @select should work in such a way that it already return the correct type.

ACTION-2016-02-17: ABr to update the XSD documentation on XT3 about the param/@as to act as documenting-only, it cannot be used to cast the result of the select expression.

-----------------------------------------------------------------------

Bug 29458 - [xslt30ts] seqtor-027

We went with some scrutiny over test seqtor-027 and had some trouble understanding the differences between complex and simple content construction. Because simple content construction atomizes before concatenating the results and introducing spaces as separators, the extra spaces are required.

The test has a missing space after the first "startend"

The fact that there is no space between "start" and "end" is because in that case the result document is constructed, which follows the rules of constructing complex content.


----------------------------------------------------------------------

Same bug: s:seqtor -t:seqtor-039a

These tests appeared to be checked in but not pushed. This has now been done after which both Saxon and Exselt passed the test correctly.

This was true for the other tests as well.

No new actions. This was the last bug in the list after which we took a break

------------------------------------

2nd half of the F2F meeting day 3

------------------------------------

Bug 29474 - Named components and xsl:original

The WG discussed this bug and agreed with the comment#0 of the OP that there was a definition issue here, where the description is too wide for xsl:original. It can only be used within the lexical scope of an xsl:override and this text is about import precedence, not about xsl:override.

DECISION: the WG agreed that the offending part should be removed.

------------------------------------

Bug 29475 - [xslt30] Initial mode must be public

The WG agrees to this bug, pointing to the discussion that preceded it on the 2nd day of the F2F.

DECISION: the WG accepts the proposal to improve wording for the status quo.

------------------------------------

Bug 29478 - [XSLT30] Allow selecting all component types inside xsl:accept/xsl:expose

The WG discussed this bug in light of the discussion of the previous day.

MKay suggests a semantic change such that if there is at least one xsl:expose or xsl:accept element, then the default flips. So, this becomes:
1) no xsl:accept: everything is imported
2) one or more xsl:accept: everthing else is hidden

The same would apply to xsl:expose

The WG discussed this and agreed that it wasn't giving the freedom we wanted.

FG came up with the idea to make xsl:accept/@component optional. This received some positive response.

By this time the following ideas were proposed:
1) allow component="*" 
2) allow component="all"
3) allow component to be absent as attribute
4) disallow names="xxx" where xxx contains a wildcard
5) allow component to take a space-separated list of tokens
6) change the default behavior to deny-all when there is at least one xsl:accept

There is consensus over this general direction, but we postpone decision on detailed choice of keywords until the editor comes up with a detailed proposal.

ACTION-2016-02-17-002: MKay to come up with a detailed proposal for allowing more freedom in component-selection and changing the default behavior when there is at least one xsl:accept or xsl:expose

----------------------------------------

NOTE FROM SCRIBE: this was the last open bug report, we are now going over the spec bugs to see if we still agree with their respective statuses.

----------------------------------------

Bug 29473 - Apparent contradiction in default visibility of overridden components

This bug report resulted from earlier discussion of the WG, as such it wasn't discussed again but accepted as written.

The bug was assigned to MKay, marked EDITORIAL

-----------------------------------------

Bug 29472 - [XSLT30] Allow through syntax to disable streaming in a mode or xsl:stream instruction

This bug report was the result of discussion earlier at the F2F., where we left it to be discussed later.

MKay explained the bug report.

There was some sympathy towards this bug report, which arose during the workshop. During discussion it appeared that we should revisit this at a later stage when we have a better idea about the use-cases.

-------------------------------------------

We reviewed bugs that we discussed previously to find out whether we can do more. After reviewing the rest of the list we agreed that the status is now as good as we can get them, where some bugs that have remained open require more offline discussion before we can proceed. This is mentioned in the bug reports where appropriate.

We reviewed the two new items that Abel wanted added to the agenda, mentioned yesterday and agreed that these were met and dealt with through bug 29478.

ACTION-2016-02-17-003: ABr to create a readme file for the repository based on this email: https://lists.w3.org/Archives/Public/public-xsl-wg/2016Feb/0001.html

-------------------------------------------

CONCLUDING F2F and THANK YOU to our host Jirka: 

The WG wishes to thank Jirka and the university for hosting the F2F meeting in the building of the Economics University in Prague, Churchill Square, and for creating the opportunity for the two-block workshop to the interoperability of the two current implementations during XML Prague.

Received on Saturday, 20 February 2016 11:44:12 UTC