- From: Norm Tovey-Walsh <norm@saxonica.com>
- Date: Tue, 11 Feb 2025 17:24:14 +0000
- To: public-xslt-40@w3.org
Hello,
Here are the minutes from today’s meeting:
https://qt4cg.org/meeting/minutes/2025/02-11.html
The latest builds are failing on a schema error. That’ll get sorted out asap.
QT4 CG Meeting 109 Minutes 2025-02-11
[1]Meeting index / [2]QT4CG.org / [3]Dashboard / [4]GH Issues / [5]GH
Pull Requests
Table of Contents
* [6]Draft Minutes
* [7]Summary of new and continuing actions [0/10]
* [8]1. Administrivia
+ [9]1.1. Roll call [8/13]
+ [10]1.2. Accept the agenda
o [11]1.2.1. Status so far...
+ [12]1.3. Approve minutes of the previous meeting
+ [13]1.4. Next meeting
+ [14]1.5. Review of open action items [6/10]
+ [15]1.6. Review of open pull requests and issues
o [16]1.6.1. Blocked
o [17]1.6.2. Merge without discussion
o [18]1.6.3. Close without action
o [19]1.6.4. Substantive PRs
* [20]2. Technical agenda
+ [21]2.1. PR #1769: Add links from processing model diagrams
+ [22]2.2. PR #1772: 1770 Default priority of rules with a union
pattern
+ [23]2.3. PR #1773: 402 Change the semantics of intersect and
except in patterns
+ [24]2.4. PR #1782: 1776 Add lookup patterns using ? and ??
+ [25]2.5. PR #1784: 1781 Drop obsolete material from XSLT spec
+ [26]2.6. Issue triage
o [27]2.6.1. Issue #1537: XSLT: local functions within an
enclosing xsl:mode
o [28]2.6.2. Issue #1584: Review the XML Schema and RELAX
NG schemas for XSLT 4.0 for compatibility
o [29]2.6.3. Issue #1631: xsl:apply-templates (without
select) should allow inline content
o [30]2.6.4. Issue #1698: Allow select attribute for
xsl:call-template instruction
o [31]2.6.5. Issue #1724: Allow @copy-namespaces on
<xsl:mode>?
o [32]2.6.6. Issue #1742: Maps constructed using streamed
xsl:fork instruction should not be ordered
o [33]2.6.7. Issue #1777: Shallow copy in XSLT with maps
and arrays
* [34]3. Any other business
* [35]4. Adjourned
Draft Minutes
Summary of new and continuing actions [0/10]
* [ ] QT4CG-082-02: DN to work with MK to come to agreement on the
fn:ranks proposal
* [ ] QT4CG-097-02: MK to make the XSD schema component references
into links to XSD
* [ ] QT4CG-107-01: MK to amend PR 1722 so the expansion of focus
functions includes the return type item()*
* [ ] QT4CG-107-05: JLO and DN to consider a proposal for system
defined records.
* [ ] QT4CG-109-01: NW add JSON to the processing model diagrams
along side XML
* [ ] QT4CG-109-02: NW to look again at adding tooltips to the
diagrams
1. Administrivia
1.1. Roll call [8/13]
Regrets: CG, WP, JLO, BTW.
* [X] David J Birnbaum (DB)
* [X] Reece Dunn (RD)
* [ ] Sasha Firsov (SF)
* [ ] Christian Gr¸n (CG)
* [X] Joel Kalvesmaki (JK)
* [X] Michael Kay (MK)
* [ ] Juri Leino (JLO)
* [X] John Lumley (JWL)
* [X] Dimitre Novatchev (DN)
* [ ] Wendell Piez (WP)
* [X] Ed Porter (EP)
* [ ] Bethan Tovey-Walsh (BTW)
* [X] Norm Tovey-Walsh (NW). Scribe. Chair.
1.2. Accept the agenda
Proposal: Accept [36]the agenda.
Accepted.
1.2.1. Status so far...
These charts have been adjusted so they reflect the preceding six
months of work.
issues-open-2025-02-11.png
Figure 1: "Burn down" chart on open issues
issues-by-spec-2025-02-11.png
Figure 2: Open issues by specification
issues-by-type-2025-02-11.png
Figure 3: Open issues by type
1.3. Approve minutes of the previous meeting
Proposal: Accept [37]the minutes of the previous meeting.
Accepted.
1.4. Next meeting
The next meeting is planned for 18 February 2025.
CG gives regrets 18 February.
1.5. Review of open action items [6/10]
(Items marked [X] are believed to have been closed via email before
this agenda was posted.)
* [ ] QT4CG-082-02: DN to work with MK to come to agreement on the
fn:ranks proposal
* [ ] QT4CG-097-02: MK to make the XSD schema component references
into links to XSD
* [X] QT4CG-103-01: MK to add an example of showing all the
properties for an untyped node.
+ Withdrawn: "Too difficult"
* [ ] QT4CG-107-01: MK to amend PR 1722 so the expansion of focus
functions includes the return type item()*
* [X] QT4CG-107-02: MK to propose adding the "duplicates" option
(from map:merge) to map:build and map:of-pairs
* [X] QT4CG-107-03: MK to propose amending all the functions that
return ordered maps so that when duplicates are found, the key of
the combined entry is taken from the first of the duplicates.
* [X] QT4CG-107-04: MK to review CG's comment to align fn:map-merge
by removing the reference to random number generator and fixing a
typo.
* [ ] QT4CG-107-05: JLO and DN to consider a proposal for system
defined records.
* [X] QT4CG-108-01: JWL look at the extra fn: prefixes introduced by
the stylesheets in the binary spec
* [X] QT4CG-108-02: NW to add links and tooltips to the new
processing model diagrams
1.6. Review of open pull requests and issues
1.6.1. Blocked
The following PRs are open but have merge conflicts or comments which
suggest they aren't ready for action.
* PR [38]#1587: 557 Add fn:binary-resource
* PR [39]#1296: 982 Rewrite of scan-left and scan-right
* PR [40]#1283: 77b Update expressions
* PR [41]#1062: 150bis revised proposal for fn:ranks
* PR [42]#1227: 150 PR resubmission for fn ranks
1.6.2. Merge without discussion
The following PRs are editorial, small, or otherwise appeared to be
uncontroversial when the agenda was prepared. The chairs propose that
these can be merged without discussion. If you think discussion is
necessary, please say so.
* PR [43]#1767: 1729/1737 Fix grammar for "declare record"
* PR [44]#1765: 1751 Clarify BOM handling
* PR [45]#1761: 1752 Correct return type of fn:partition()
* PR [46]#1783: 1779 Make CharRef XQuery-only (added during the
meeting)
Proposal: merge these PRs without discussion.
Accepted.
1.6.3. Close without action
It has been proposed that the following issues be closed without
action. If you think discussion is necessary, please say so.
* Issue [47]#877: Inconsistency in XQFO comparator
functions/operators with recursive rules
* Issue [48]#755: with expression; chaining and concatenation
Proposal: close these issues without further action.
Accepted.
1.6.4. Substantive PRs
The following substantive PRs were open when this agenda was prepared.
* PR [49]#1769: Add links from processing model diagrams
* PR [50]#1772: 1770 Default priority of rules with a union pattern
* PR [51]#1773: 402 Change the semantics of intersect and except in
patterns
* PR [52]#1782: 1776 Add lookup patterns using ? and ??
* PR [53]#1784: 1781 Drop obsolete material from XSLT spec
* PR [54]#1766: 1715 Drop array bound checking
* PR [55]#1783: 1779 Make CharRef XQuery-only
* PR [56]#1778: 1456 Lookup expressions filtered by type
* PR [57]#1763: 1716 Generalize syntax of arrow expressions
* PR [58]#1740: 1725b Further elaboration of duplicates handling in
maps
* PR [59]#1735: 1341 Drop $position callback from many functions
2. Technical agenda
2.1. PR #1769: Add links from processing model diagrams
See PR [60]#1769.
ACTION QT4CG-109-01: NW add JSON to the processing model diagrams along
side XML
ACTION QT4CG-109-02: NW to look again at adding tooltips to the
diagrams
* NW: This PR is unlikely to run afoul of merge conflicts, so let's
just leave it open.
2.2. PR #1772: 1770 Default priority of rules with a union pattern
See PR [61]#1772.
MK introduces the PR.
* MK: The priority rules for union patterns have become more
complicated over time.
+ ... Treating them as separate template rules with a different
priority has odd consequences for xsl:next-match
+ ... And in 4.0 we've invented new things that are equivalent
to union patterns.
+ ... Trying to fix various edge cases lead me to take an axe to
it.
* JK: I like the proposal. I tried to replicate the double-triggering
of xsl:next-match but failed.
* MK: There are test cases that do it, but it's very obscure.
* JWL: I agree with this one. If you're playing around with default
priorities in unions where it's starting to get complicated, you
have to be on the ball. This will simplify things.
Proposal: Merge this PR.
Accepted.
2.3. PR #1773: 402 Change the semantics of intersect and except in patterns
See PR [62]#1773.
* MK: This is in the same area, but is completely separate. These are
the rules for matching.
+ ... The problem here is that the current specification of
intersect and except does something so woefully unexpected
that we should treat it as bug.
+ ... The incompatibility is explained in a note.
Proposal: Merge this PR.
Accepted.
2.4. PR #1782: 1776 Add lookup patterns using ? and ??
See PR [63]#1782.
Not ready for discussion.
2.5. PR #1784: 1781 Drop obsolete material from XSLT spec
See PR [64]#1784.
* MK: Hopefully, this is uncontroversial.
+ ... A lot of section numbers have changed, so the diff is hard
to follow.
+ ... Section 23 (processing JSON data) has gone and so has
Appendix B (XML representation of JSON)
+ ... These were basically historical relics.
Proposal: Merge this PR.
Accepted.
2.6. Issue triage
2.6.1. Issue [65]#1537: XSLT: local functions within an enclosing xsl:mode
* MK: I'd make it optional; I've encountered it, and several users
have asked.
* JWL: I think the issue is go for effectively the enclosed mode
being a scope; in which case functions, variables could be in
there. How far do we go?
+ Somtimes you want scoped local variables and you need tunnels
all the way down.
2.6.2. Issue [66]#1584: Review the XML Schema and RELAX NG schemas for XSLT
4.0 for compatibility
* NW: I'll do it closer to the end of the process.
2.6.3. Issue [67]#1631: xsl:apply-templates (without select) should allow
inline content
* JWL: I think we should drop it; there are easy enough alternatives.
* MK: I agree.
* DN: I think we shouldn't discuss an issue if the original author
isn't present.
* NW: I think it's more important to make progress.
2.6.4. Issue [68]#1698: Allow select attribute for xsl:call-template
instruction
* MK: I've vacillated on this. When I see an xsl:for-each just to
change the context for a template, that's horrible. But then
there's debate about where the context setting goes. Outside, it's
just a different way of spelling "for each". Inside has more appeal
but is less generic.
* JK: I vote "required-optional". We can already do this, but maybe
someone will write a proposal.
* RD: I concur it should be optional. I wonder if it's more
expressive to have the with-context as an equivalent of with-param.
Putting the context within the call-template.
* MK: That's one of the suggestions.
* MK: Another question here is to what extent we want to integrate
the idea of a context value in to XSLT. It was introduced for
XQuery because people doing databases have always wanted an
expression beginning with "/" to search the whole database not just
one document.
+ ... If we're adding the ability to set the context here, do we
want to allow it to be a general value not just an item.
* JWL: When talking about where the select would go, do we still have
the proposal for a form of call-template that's an extension of an
expression?
* MK: Yes, there's probably a relation to it.
2.6.5. Issue [69]#1724: Allow @copy-namespaces on <xsl:mode>?
* JK: For the purposes for triage, I'd vote optional.
* MK: I think my main reservation is that when people want to remove
namespaces, they don't quite know what they're asking for.
+ ... The related issues have to do with copying with a change
of namespace.
* DB: That's related, but I don't think it subsumes this issues.
2.6.6. Issue [70]#1742: Maps constructed using streamed xsl:fork instruction
should not be ordered
* MK: In a sense, it's subsumed by a general issue that we have to
review streamability. We've neglected the whole area.
+ ... We can't close this without some resolution.
2.6.7. Issue [71]#1777: Shallow copy in XSLT with maps and arrays
* MK: This is the area I'm currently working on. It's required that
we do something in this area.
+ ... I'm currently trying to write a recursive decent processor
on JSON that I hope will inform proposals in this area.
3. Any other business
None heard.
4. Adjourned
References
1. https://qt4cg.org/meeting/minutes/
2. https://qt4cg.org/
3. https://qt4cg.org/dashboard
4. https://github.com/qt4cg/qtspecs/issues
5. https://github.com/qt4cg/qtspecs/pulls
6. https://qt4cg.org/meeting/minutes/2025/02-11.html#minutes
7. https://qt4cg.org/meeting/minutes/2025/02-11.html#new-actions
8. https://qt4cg.org/meeting/minutes/2025/02-11.html#administrivia
9. https://qt4cg.org/meeting/minutes/2025/02-11.html#roll-call
10. https://qt4cg.org/meeting/minutes/2025/02-11.html#agenda
11. https://qt4cg.org/meeting/minutes/2025/02-11.html#so-far
12. https://qt4cg.org/meeting/minutes/2025/02-11.html#approve-minutes
13. https://qt4cg.org/meeting/minutes/2025/02-11.html#next-meeting
14. https://qt4cg.org/meeting/minutes/2025/02-11.html#open-actions
15. https://qt4cg.org/meeting/minutes/2025/02-11.html#open-pull-requests
16. https://qt4cg.org/meeting/minutes/2025/02-11.html#blocked
17. https://qt4cg.org/meeting/minutes/2025/02-11.html#merge-without-discussion
18. https://qt4cg.org/meeting/minutes/2025/02-11.html#close-without-action
19. https://qt4cg.org/meeting/minutes/2025/02-11.html#substantive
20. https://qt4cg.org/meeting/minutes/2025/02-11.html#technical-agenda
21. https://qt4cg.org/meeting/minutes/2025/02-11.html#pr-1769
22. https://qt4cg.org/meeting/minutes/2025/02-11.html#pr-1772
23. https://qt4cg.org/meeting/minutes/2025/02-11.html#pr-1773
24. https://qt4cg.org/meeting/minutes/2025/02-11.html#pr-1782
25. https://qt4cg.org/meeting/minutes/2025/02-11.html#pr-1784
26. https://qt4cg.org/meeting/minutes/2025/02-11.html#issue-triage
27. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-F7FABABE-B3F3-4D26-B7B8-96A0BE7086FA
28. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-431874BE-254F-4499-ACF5-863D62329A86
29. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-2F817CFB-2C99-452C-9742-8C85BBD5CD19
30. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-E2EF5877-14B9-4E72-9736-3F15DD4CD2F2
31. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-D2ED69CD-C8C7-4752-AD19-8FE7CB10E86C
32. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-501EC430-48CB-4CF3-BAC4-E28E32D8CD87
33. https://qt4cg.org/meeting/minutes/2025/02-11.html#h-4606BAC9-9EEC-449F-BBB1-A81B951AAFCF
34. https://qt4cg.org/meeting/minutes/2025/02-11.html#any-other-business
35. https://qt4cg.org/meeting/minutes/2025/02-11.html#adjourned
36. https://qt4cg.org/meeting/agenda/2025/02-11.html
37. https://qt4cg.org/meeting/minutes/2025/02-04.html
38. https://qt4cg.org/dashboard/#pr-1587
39. https://qt4cg.org/dashboard/#pr-1296
40. https://qt4cg.org/dashboard/#pr-1283
41. https://qt4cg.org/dashboard/#pr-1062
42. https://qt4cg.org/dashboard/#pr-1227
43. https://qt4cg.org/dashboard/#pr-1767
44. https://qt4cg.org/dashboard/#pr-1765
45. https://qt4cg.org/dashboard/#pr-1761
46. https://qt4cg.org/dashboard/#pr-1783
47. https://github.com/qt4cg/qtspecs/issues/877
48. https://github.com/qt4cg/qtspecs/issues/755
49. https://qt4cg.org/dashboard/#pr-1769
50. https://qt4cg.org/dashboard/#pr-1772
51. https://qt4cg.org/dashboard/#pr-1773
52. https://qt4cg.org/dashboard/#pr-1782
53. https://qt4cg.org/dashboard/#pr-1784
54. https://qt4cg.org/dashboard/#pr-1766
55. https://qt4cg.org/dashboard/#pr-1783
56. https://qt4cg.org/dashboard/#pr-1778
57. https://qt4cg.org/dashboard/#pr-1763
58. https://qt4cg.org/dashboard/#pr-1740
59. https://qt4cg.org/dashboard/#pr-1735
60. https://qt4cg.org/dashboard/#pr-1769
61. https://qt4cg.org/dashboard/#pr-1772
62. https://qt4cg.org/dashboard/#pr-1773
63. https://qt4cg.org/dashboard/#pr-1782
64. https://qt4cg.org/dashboard/#pr-1784
65. https://github.com/qt4cg/qtspecs/issues/1537
66. https://github.com/qt4cg/qtspecs/issues/1584
67. https://github.com/qt4cg/qtspecs/issues/1631
68. https://github.com/qt4cg/qtspecs/issues/1698
69. https://github.com/qt4cg/qtspecs/issues/1724
70. https://github.com/qt4cg/qtspecs/issues/1742
71. https://github.com/qt4cg/qtspecs/issues/1777
Be seeing you,
norm
--
Norm Tovey-Walsh
Saxonica
Received on Tuesday, 11 February 2025 17:24:22 UTC