QT4 CG Meeting 088 Agenda 2024-09-03

Agenda index / QT4CG.org / Dashboard / GH Issues / GH Pull Requests

Agenda

This meeting will be hosted on Zoom at 16:00BST (15:00GMT, 17:00CEST, 11:00EDT)

The Zoom meeting ID is 831 9996 6275; the passcode is 707664.

See the meeting logistics page for more details.

Note: Our meeting is usually scheduled for one hour. A couple of folks suggested that we might benefit from a longer meeting this time in order to resolve as many open PRs as we can. We’ll plan to run this meeting for as long as there is critical mass and no objection to continuing.

1. Administrivia

1.1. Roll call

1.2. Approve the agenda

1.3. Approve minutes of previous meeting

Minutes of the previous meeting.

1.4. Next meeting

This meeting is planned for 3 September 2024. The following meeting is scheduled for 10 September.

1.5. Review of open action items [0/3]

(Items marked [X] are believed to have been closed via email before this agenda was posted.)

  • [ ] QT4CG-080-05: NW to add absolute property to the parse-uri output
  • [ ] QT4CG-080-07: NW to update the build instructions in the README
  • [ ] QT4CG-082-02: DN to work with MK to come to agreement on the fn:ranks proposal

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 #1227: 150 PR resubmission for fn ranks
  • PR #1062: 150bis - revised proposal for fn:ranks
  • PR #529: 528 fn:elements-to-maps

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 #1406: Fix 1399 - clarify fixed-namespaces spec
  • PR #1405: Fix #1404 by changing fn:invisible-xml grammar parameter to xs:string?
  • PR #1402: Update schema for XSLT 4.0 to include agreed syntax changes
  • PR #1400: 1395 Revise rules for subtyping of choice item types
  • PR #1398: 1397 Add missing change log entry for constructor functions
  • PR #1390: 1368 built in keywords improvements
  • PR #1383: 1374 - allow static error for duplicate keys
  • PR #1380: 1320 Attempt to resolve a bug in parse-uri
  • PR #1370: 1369 fn:round: rounding-mode → mode
  • PR #1359: 1346 Fix minor typos in format-number
  • PR #1353: 1347 Add escape-solidus option to xml-to-json function
  • PR #1352: 1350 Fix signature for unparsed-text-available
  • PR #1342: 1339 Deprecate ordering mode declaration
  • PR #1231: 1193 Parsing Functions: Empty input

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 #1371: (type)switch: braces after `case` keyword
  • Issue #917: Better support for typed maps

1.6.4. XSLT focused

The following PRs appear to be candidates for a future XSLT-focused meeting.

  • PR #1402: Update schema for XSLT 4.0 to include agreed syntax changes
  • PR #1386: 1382 add error code XTSE4040
  • PR #1378: 1375 - bugs in pattern syntax

1.6.5. Substantive PRs

  • PR #1409: 1401 Rewrite of F+O section 20, Casting
  • PR #1393: 1391 Change function-annotations to return a sequence
  • PR #1388: Attempt to resolve #1387 by clarifying the encoding rules
  • PR #1384: 1316 Type declarations in quantified expressions
  • PR #1367: 1321 leading lone slash
  • PR #1364: Change to type() syntax to fix ambiguity
  • PR #1361: 1337 Atomic value becomes atomic item
  • PR #1360: 1348 Some grammar simplifications
  • PR #1358: 959 fn:unix-time
  • PR #1355: 1351 Add "declare record" in XQuery
  • PR #1344: 1343 Drop the static typing feature
  • PR #1296: 982 Rewrite of scan-left and scan-right
  • PR #1283: 77b: Update expressions
  • PR #1228: – Adding the BLAKE3 hashing algorithm to fn:hash
  • PR #1209: 1183 Add transient mode and the transient{} expression
  • PR #1185: 1179 array:values, map:values → array:get, map:get
  • PR #832: 77 Lookup returning path selection

1.6.6. Required for V4.0

The following issues are labeled “required for V4.0”.

  • Issue #1252: Add a new function `fn:html-doc`
  • Issue #1240: $sequence-of-maps ? info()
  • Issue #1238: XSLT on-no-match="shallow-copy-all" - revised rules
  • Issue #1235: Function Identity: Treating function items with identical bodies
  • Issue #1169: Maps & Arrays: Consistency & Terminology
  • Issue #1127: Binary resources
  • Issue #1045: Functions to manage namespace usage
  • Issue #1021: Extend `fn:doc`, `fn:collection` and `fn:uri-collection` with options maps
  • Issue #1011: fn:transform() improvements
  • Issue #986: Numeric Comparisons
  • Issue #967: XPath Appendix I: Comparisons
  • Issue #868: fn:intersperse → fn:join, array:join($arrays, $separator)
  • Issue #826: Arrays: Representation of single members of an array
  • Issue #767: parse-html(): case of SVG element names
  • Issue #755: Expression for binding the Context Value
  • Issue #748: Parse functions: consistency
  • Issue #689: fn:stack-trace: keep, drop, replace with $err:stack-trace ?
  • Issue #675: XSLT streaming rules for new constructs
  • Issue #501: Error handling: Rethrow errors; finally block
  • Issue #490: Control over schema validation in parse-xml(), doc(), etc.
  • Issue #407: XSLT-specific context properties used in function items
  • Issue #272: Setting parameter values in xsl:use-package
  • Issue #69: fn:document, fn:function-available: default arguments

2. Technical agenda

The goal with respect to PRs this week is to close as many as we can. To that end, I’ve tried to arrange them such that the “easy” ones are at the top. If we discover that one of them isn’t easy, we’ll can move it to the bottom of the list move on until we’ve done all the easy ones we have time for.

2.1. Where are we?

We’ve been meeting regularly for two years as of this month.

What have we accomplished and what is left to do?

One measure of this question is the list of open “required-for-4.0” issues. But perhaps we should take a broader perspective.

2.2. PR #1409: 1401 Rewrite of F+O section 20, Casting

See PR #1409

2.3. PR #1393: 1391 Change function-annotations to return a sequence

See PR #1393

2.4. PR #1384: 1316 Type declarations in quantified expressions

See PR #1384

2.5. PR #1367: 1321 leading lone slash

See PR #1367

2.6. PR #1361: 1337 Atomic value becomes atomic item

See PR #1361

2.7. PR #1360: 1348 Some grammar simplifications

See PR #1360

2.8. PR #1358: 959 fn:unix-time

See PR #1358

2.9. PR #1344: 1343 Drop the static typing feature

See PR #1344

2.10. PR #1228: – Adding the BLAKE3 hashing algorithm to fn:hash

See PR #1228

2.11. PR #1364: Change to type() syntax to fix ambiguity

See PR #1364

2.12. PR #1355: 1351 Add "declare record" in XQuery

See PR #1355

2.13. PR #1388: Attempt to resolve #1387 by clarifying the encoding rules

See PR #1388

2.14. PR #1296: 982 Rewrite of scan-left and scan-right

See PR #1296

2.15. PR #1283: 77b: Update expressions

See PR #1283

2.16. PR #1209: 1183 Add transient mode and the transient{} expression

See PR #1209

2.17. PR #1185: 1179 array:values, map:values → array:get, map:get

See PR #1185

2.18. PR #832: 77 Lookup returning path selection

See PR #832

3. Any other business