- From: Norm Tovey-Walsh <norm@saxonica.com>
- Date: Tue, 26 Mar 2024 17:15:05 +0000
- To: "public-xslt-40@w3.org" <public-xslt-40@w3.org>
- Message-ID: <m2o7b0ykw9.fsf@saxonica.com>
Hi folks,
Here are the minutes from today’s meeting:
https://qt4cg.org/meeting/minutes/2024/03-26.html
QT4 CG Meeting 071 Minutes 2024-03-26
Table of Contents
* [1]Draft Minutes
* [2]Summary of new and continuing actions [0/10]
* [3]1. Administrivia
+ [4]1.1. Roll call [12/15]
+ [5]1.2. Accept the agenda
o [6]1.2.1. Status so far...
+ [7]1.3. Approve minutes of the previous meeting
+ [8]1.4. Next meeting
+ [9]1.5. Review of open action items [2/6]
+ [10]1.6. Review of open pull requests and issues
o [11]1.6.1. Merge without discussion
o [12]1.6.2. Substantive PRs
o [13]1.6.3. Proposed for V4.0
* [14]2. Technical Agenda
+ [15]2.1. PR #1071: 1070 Bare Brace map constructor syntax
+ [16]2.2. PR #1059: 1019 XQFO: Unknown option parameters
+ [17]2.3. PR #1100: 99 fn:equal() function to compare sequences
and arrays
+ [18]2.4. PR #1077: Correct the status of new language features
+ [19]2.5. PR #1074 Confirm status of provisional functions
+ [20]2.6. PR #1088 and #1098: improvements to
parse-uri/build-uri
* [21]3. Any other business
* [22]4. Adjourned
[23]Meeting index / [24]QT4CG.org / [25]Dashboard / [26]GH Issues /
[27]GH Pull Requests
Draft Minutes
Summary of new and continuing actions [0/10]
* [ ] QT4CG-063-06: MK to consider refactoring the declare item type
syntax to something like declare record
* [ ] QT4CG-064-08: NW to open an issue to try to resolve $search to
$target consistently.
* [-] QT4CG-069-02: NW to coordinate with MK to use the introspection
features on the test suite.
+ In progress...
* [ ] QT4CG-070-01: NW to review how records are formatted.
* [ ] QT4CG-071-01: MK to put namespace bindings for XQuery back on
the issue list
* [ ] QT4CG-071-02: MK to raise a PR that changes map construction
examples as appropriate
* [ ] QT4CG-071-03: MK to review the definition of map equality in
fn:equal
* [ ] QT4CG-071-04: MK to update the prose to highlight differences
between fn:equal and fn:deep-equal
* [ ] QT4CG-071-05: MK to consider the name of the function argument.
* [ ] QT4CG-071-06: NW to clarify the cases that are distinguished by
the leading empty string in path segments
1. Administrivia
1.1. Roll call [12/15]
* [X] Reece Dunn (RD)
* [X] Sasha Firsov (SF)
* [X] Mukul Gandhi (MG)
* [X] Christian Gr¸n (CG)
* [X] Joel Kalvesmaki (JK)
* [X] Michael Kay (MK)
* [X] Juri Leino (JLO)
* [X] John Lumley (JLY)
* [X] Dimitre Novatchev (DN)
* [X] Wendell Piez (WP)
* [ ] Ed Porter (EP)
* [ ] Liam Quin (LQ)
* [ ] Adam Retter (AR)
* [X] C. M. Sperberg-McQueen (MSM)
* [X] Norm Tovey-Walsh (NW). Scribe. Chair.
1.2. Accept the agenda
Proposal: Accept [28]the agenda.
1.2.1. Status so far...
issues-open-2024-03-26.png
Figure 1: "Burn down" chart on open issues
issues-by-spec-2024-03-26.png
Figure 2: Open issues by specification
issues-by-type-2024-03-26.png
Figure 3: Open issues by type
1.3. Approve minutes of the previous meeting
Proposal: Accept [29]the minutes of the previous meeting.
Accepted.
1.4. Next meeting
The next meeting [30]is scheduled for Tuesday, 9 April 2024.
The CG will not meet on 2 April 2024.
WP, JK gives regret for 9 April.
1.5. Review of open action items [2/6]
* [X] QT4CG-063-04: NW to try to add test review to the editorial
meeting.
* [ ] QT4CG-063-06: MK to consider refactoring the declare item type
syntax to something like declare record
* [ ] QT4CG-064-08: NW to open an issue to try to resolve $search to
$target consistently.
* [-] QT4CG-069-02: NW to coordinate with MK to use the introspection
features on the test suite.
+ In progress...
* [ ] QT4CG-070-01: NW to review how records are formatted.
* [X] QT4CG-070-02: MK to raise the line separators issue in
parse-csv.
1.6. Review of open pull requests and issues
1.6.1. 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 [31]#1106: 859 lookup syntax problems
* PR [32]#1097: 566-partial Fix colon issue in URI parsing
* PR [33]#1092: 1039 Add notes referring to fn:collation-key
* PR [34]#1078: 1060-partial Formatting XPath/XQuery
* PR [35]#1076: 1075 Drop 'with' expressions
MK wants to talk about #1076
* MK: Do we still want to solve the problem that with was attempting
to solve?
* WP: I think it would be nice, but EQNames are useful. Would be nice
to get developers more familiar with it.
* DN: I don't remember hearing about this issue. My experience with
namespaces in XQuery has not been very satisfactory.
ACTION: QT4CG-071-01: MK to put namespace bindings for XQuery back on
the issue list
JLO wants to discuss #1078
* JLY: There's only one remark, the empty map should be formatted
differently. There's a lot of whitespace in an empty map now.
+ ... It would be nice to have a discussion about formatting
XPath and XQuery in general.
* CG: I looked at the predominate way things were done. I added
whitespace to make it more readable.
* MK: Did you use tools to do it?
* CG: I did it by hand.
Proposal: merge all of these PRs without further discussion.
Approved.
1.6.2. Substantive PRs
The following substantive PRs were open when this agenda was prepared.
* PR [36]#1112: 1110-partial New error codes
* PR [37]#1108: 566-partial Describe a less aggressive %-encoding for
fn:build-uri
* PR [38]#1100: 99 fn:equal() function to compare sequences and
arrays
* PR [39]#1098: 566-partial Editorial improvements per recent
discussion
* PR [40]#1093: 1091 Add fn:collation function
* PR [41]#1087: 1086 Editorial changes to array:values
* PR [42]#1077: Correct the status of new language features
* PR [43]#1074: Confirm status of provisional functions
* PR [44]#1071: 1070 Bare Brace map constructor syntax
* PR [45]#1068: 73 fn:graphemes
* PR [46]#1062: 150bis - revised proposal for fn:ranks
* PR [47]#1059: 1019 XQFO: Unknown option parameters
* PR [48]#1027: 150 fn:ranks
1.6.3. Proposed for V4.0
The following issues are labled "proposed for V4.0".
* Issue [49]#938: Canonical serialization
* Issue [50]#934: String comparison in deep-equal
* Issue [51]#910: Introduce a Kollection object with functions that
operate on all types of items that can be containers of unlimited
number of "members"
* Issue [52]#908: Function identity: documentation still too vague
* Issue [53]#882: fn:chain or fn:compose
* Issue [54]#850: fn:parse-html: Finalization
* Issue [55]#716: Generators in XPath
* Issue [56]#689: fn:stack-trace: keep, drop, replace with
$err:stack-trace ?
* Issue [57]#583: array:replace(), etc
* Issue [58]#557: fn:unparsed-binary: accessing and manipulating
binary types
* Issue [59]#150: fn:ranks: Produce all ranks in applying a function
on the items of a sequence
* Issue [60]#31: Extend FLWOR expressions to maps
2. Technical Agenda
Agenda reordered as suggested in email.
2.1. PR #1071: 1070 Bare Brace map constructor syntax
See PR [61]#1071: 1070 Bare Brace map constructor syntax
MK summarizes the proposed change. p
* MK: The map keyword left the plain braces available for other
features, but those features no longer exist.
* JLO: The main question I have is, will this be problematic in
places where we do have curly braces in XML.
* MK: The only place where you would be likely to have problems are
where you have a map or a string where you could have element
content.
* RD: Curly braces in an XML literal switches the contexts. So if you
have { } and your map in that, that's fine. But because of XQuery
uses }} in the XML context as an escaped }, you'd have to avoid
that.
* DN: I'm really not sure there isn't ambiguity here. What about the
body of a function? How do we distinguish it from a map. And didn't
we do something with if/then/else to use braces.
* MK: There are no expressions that begin with curly braces, so it
doesn't appear to be a problem.
* RD: Those are all defined in terms of contained expressions.
* MK: There's ambiguity in the sense that the grammar is ambiguous
and I don't think we have any technical ambiguities in that sense.
There's also ambiguity that confuses the reader, you might want to
continue to use the map keyword for that.
* JLY: I had the same comment as DN; use the map keyword.
* WP: (inaudible)
Something about attribute value templates.
* MK: That's like the other cases; but those are always strings so
it's even less likely.
Proposal: Merge this PR.
Accepted.
ACTION: QT4CG-071-02: MK to raise a PR that changes map construction
examples as appropriate
2.2. PR #1059: 1019 XQFO: Unknown option parameters
See PR [62]#1059
* NW: We've talked about this a couple of times. CG's revision makes
it an error to use unknown options only if they are in no
namespace.
* CG: That's right.
Proposal: accept this PR
Accepted.
2.3. PR #1100: 99 fn:equal() function to compare sequences and arrays
See PR [63]#1100: 99 fn:equal() function to compare sequences and
arrays
MK introduces the PR.
* MK: This is a function that can compare anything and is
parameterized at the item level about how it does the comparison.
+ ... Fills out the family of starts-with/ends-with etc.
functions
* CG: I think we need to check if the second map contains a value
because the value can be an empty sequence.
Some discussion of the finer details here. A missing key vs. a key with
the value of an empty sequence. {a:()} vs {b:()}, for example.
ACTION: QT4CG-071-03: MK to review the definition of map equality in
fn:equal
* MK: It's different from fn:deep-equal primarily in that the
comparison is parameterized.
* JLY: Given that the fn:deep-equal and fn:equal are both descending
comparisons, both sections should highlight the differences.
ACTION: QT4CG-071-04: MK to update the prose to highlight differences
between fn:equal and fn:deep-equal
* DN: We need to know more about the differences between this and
fn:deep-equal. It can be confusing. In all these signatures, the
comparison function is confusing. Rather than equality comparison,
I'd like a more general comparison, not just equality.
+ ... For example, consider a sort key where you might produce
an array and you should be able to compare arrays as sort
keys.
* MK: Those are all good points. I have the same dilemma, we have too
many comparison functions and not enough! I'd like to find a
different name. I do think we need a straight equality comparison
to complement the subsequence-equals/starts-with/etc. functions.
You can't just use a general comparison because not all atomic
values are ordered.
* DN: The name of the argument could be equality-comparer.
* MK: It's a bit long for a keyword; there's always a tension in
naming.
ACTION: QT4CG-071-05: MK to consider the name of the function argument.
* CG: Another challenge is the existence of the comparitor function.
A user might expect to use it here. I think it would be reasonable
to add it for this case as well. Then there's a question of nodes
vs. atomic values. Many comparisons atomize and that might create
different results.
* MK: Then it quickly becomes non-transitive.
Some discussion of the examples.
* JLO: Maybe it's really useful to point out what a leaf is.
Some discussion of whether or not that term is in the spec.
* DN: It seems strange that there are no collations here.
* MK: I felt you could supply a comparison callback that uses a
collation.
(From the chat, there is some discussion of whether or not a comparison
function should be made available to fn:deep-equal)
MK will make another pass.
2.4. PR #1077: Correct the status of new language features
See PR [64]#1077
MK introduces the PR; it just changes the change log.
* MK: It resolves the fact that we have now discussed all the
features.
* CG: I think so.
Proposal: merge this PR.
Accepted.
2.5. PR #1074 Confirm status of provisional functions
See PR [65]#1074
* MK: this is the same thing for Functions and Operators.
+ ... It removes the fn:json function as that's the subject of a
PR in flight.
* CG: I have some concerns regarding fn:stack-trace; that's actually
still an open issues.
+ ... The same is true of map:replace and array:replace.
Proposal: merge this PR.
Accepted.
2.6. PR #1088 and #1098: improvements to parse-uri/build-uri
See PR [66]#1098: 566-partial Editorial improvements per recent
discussion
* CG: I think there's a comment in the PR that wasn't addressed.
* NW: Oh...
Some discussion of why the leading empty string is necessary in path
segments.
ACTION: QT4CG-071-06: NW to clarify the cases that are distinguished by
the leading empty string in path segments
And we've run out of time.
3. Any other business
None heard.
4. Adjourned
References
1. https://qt4cg.org/meeting/minutes/2024/03-26.html#minutes
2. https://qt4cg.org/meeting/minutes/2024/03-26.html#new-actions
3. https://qt4cg.org/meeting/minutes/2024/03-26.html#administrivia
4. https://qt4cg.org/meeting/minutes/2024/03-26.html#roll-call
5. https://qt4cg.org/meeting/minutes/2024/03-26.html#agenda
6. https://qt4cg.org/meeting/minutes/2024/03-26.html#so-far
7. https://qt4cg.org/meeting/minutes/2024/03-26.html#approve-minutes
8. https://qt4cg.org/meeting/minutes/2024/03-26.html#next-meeting
9. https://qt4cg.org/meeting/minutes/2024/03-26.html#open-actions
10. https://qt4cg.org/meeting/minutes/2024/03-26.html#open-pull-requests
11. https://qt4cg.org/meeting/minutes/2024/03-26.html#merge-without-discussion
12. https://qt4cg.org/meeting/minutes/2024/03-26.html#substantive
13. https://qt4cg.org/meeting/minutes/2024/03-26.html#proposed-40
14. https://qt4cg.org/meeting/minutes/2024/03-26.html#technical-agenda
15. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1071
16. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1059
17. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1100
18. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1077
19. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1074
20. https://qt4cg.org/meeting/minutes/2024/03-26.html#pr-1088
21. https://qt4cg.org/meeting/minutes/2024/03-26.html#any-other-business
22. https://qt4cg.org/meeting/minutes/2024/03-26.html#adjourned
23. https://qt4cg.org/meeting/minutes/
24. https://qt4cg.org/
25. https://qt4cg.org/dashboard
26. https://github.com/qt4cg/qtspecs/issues
27. https://github.com/qt4cg/qtspecs/pulls
28. https://qt4cg.org/meeting/agenda/2024/03-26.html
29. https://qt4cg.org/meeting/minutes/2024/03-19.html
30. https://qt4cg.org/meeting/agenda/2024/04-09.html
31. https://qt4cg.org/dashboard/#pr-1106
32. https://qt4cg.org/dashboard/#pr-1097
33. https://qt4cg.org/dashboard/#pr-1092
34. https://qt4cg.org/dashboard/#pr-1078
35. https://qt4cg.org/dashboard/#pr-1076
36. https://qt4cg.org/dashboard/#pr-1112
37. https://qt4cg.org/dashboard/#pr-1108
38. https://qt4cg.org/dashboard/#pr-1100
39. https://qt4cg.org/dashboard/#pr-1098
40. https://qt4cg.org/dashboard/#pr-1093
41. https://qt4cg.org/dashboard/#pr-1087
42. https://qt4cg.org/dashboard/#pr-1077
43. https://qt4cg.org/dashboard/#pr-1074
44. https://qt4cg.org/dashboard/#pr-1071
45. https://qt4cg.org/dashboard/#pr-1068
46. https://qt4cg.org/dashboard/#pr-1062
47. https://qt4cg.org/dashboard/#pr-1059
48. https://qt4cg.org/dashboard/#pr-1027
49. https://github.com/qt4cg/qtspecs/issues/938
50. https://github.com/qt4cg/qtspecs/issues/934
51. https://github.com/qt4cg/qtspecs/issues/910
52. https://github.com/qt4cg/qtspecs/issues/908
53. https://github.com/qt4cg/qtspecs/issues/882
54. https://github.com/qt4cg/qtspecs/issues/850
55. https://github.com/qt4cg/qtspecs/issues/716
56. https://github.com/qt4cg/qtspecs/issues/689
57. https://github.com/qt4cg/qtspecs/issues/583
58. https://github.com/qt4cg/qtspecs/issues/557
59. https://github.com/qt4cg/qtspecs/issues/150
60. https://github.com/qt4cg/qtspecs/issues/31
61. https://qt4cg.org/dashboard/#pr-1071
62. https://qt4cg.org/dashboard/#pr-1059
63. https://qt4cg.org/dashboard/#pr-1100
64. https://qt4cg.org/dashboard/#pr-1077
65. https://qt4cg.org/dashboard/#pr-1074
66. https://qt4cg.org/dashboard/#pr-1098
Be seeing you,
norm
--
Norm Tovey-Walsh
Saxonica
Received on Tuesday, 26 March 2024 17:15:42 UTC