@qt4cg statuses
This page displays recent status updates about the QT4CG project.
The are also captured in an RSS feed.
By year: 2026, 2025, 2024, 2023, 2022, 2021, 2020
QT4 CG meeting 149 draft minutes #minutes-01-20
Draft minutes published.
Issue #2359 closed #closed-2359
Implicit conversion to JNodes with absolute path expressions
Issue #2373 closed #closed-2373
2359 No conversion to JNode in absolute paths
Issue #2337 closed #closed-2337
XSLT xsl:mode/@typed attribute
Issue #2376 closed #closed-2376
2337 Extend xsl:mode/@typed to handle JNodes etc
Issue #2387 closed #closed-2387
641 NaN/Infinity in JSON
Issue #2088 closed #closed-2088
File Module: Feedback, Observations
Issue #2364 closed #closed-2364
2088 File Module: Feedback, Observations
Issue #2185 closed #closed-2185
Request for an `fn:xproc` function
Issue #2383 closed #closed-2383
Attempt to resolve action QT4CG-148-01
Issue #2389 created #created-2389
Adaptive Serialization: more freedom?
The adaptive serialization method was introduced “for the purposes of debugging query results”. For our processor, it has turned out pretty soon that it does not satisfy the requirements of our users, which is why we have introduced a custom debugging method.
I wonder what others think: Shouldn’t we relax several of the rules and let the implementation decide what to output? We haven’t defined either how the output of fn:trace needs to look like.
Some examples:
- The output of doubles often causes confusion. If parsed JSON is output, small integers will be output in exponential notation. For example,
parse-json('{ "A" : 20 }')needs to be output as{ "A": 2.0e1 }. xs:date("2001-01-01")is output asxs:date("2001-01-01"), whilexs:token('x')is output as"x".fn() { 1 }is output as(anonymous-function)#0, whereas an implementation could prefer to use the output offn:function-identity(see #2388), or output the original query string (if available), reproduce a string representation of the function body, etc.
I will be glad to create a PR.
Issue #2388 created #created-2388
Adaptive Serialization: function items
The serialization specs defines rules for creating a string representation for function items. Now that we have `fn:function-identity', we should replace the rules and use this string instead.
QT4 CG meeting 149 draft agenda #agenda-01-20
Draft agenda published.
Issue #2386 closed #closed-2386
Add namespace declaration to environment for generated tests
Pull request #2387 created #created-2387
641 NaN/Infinity in JSON
Addresses part of issue #641
In the JSON serialization method, NaN is output as null, and infinity is output as ±1e9999.
The parse-json function adds recommendations on how to achieve round-tripping of these values.
Pull request #2386 created #created-2386
Add namespace declaration to environment for generated tests
Changes the stylesheet for generating keyword and function signature tests so that the namespace prefix "output" is explicitly declared in the test environment. This prefix is used in one of the tests and it needs to be declared if the test is to work in XPath.
Issue #2385 created #created-2385
The XML version of the XPath spec isn't the XML version of the spec, it's HTML
Probably XQuery too. I have no idea why.
Issue #2384 created #created-2384
`fn:xsd-validator` - attribute nodes
The type signature of the xsd-validator function suggests that it can be used to validate attribute nodes (as well as documents and elements), and the prose description concurs with this. However the function summary says "can be invoked to validate a document or element node against this schema."
Test case xsd-validator-092 expects an attribute node to be rejected.
Also the Notes in the specification say
The validation process is explained in more detail in the XQuery ([[XQuery 4.0: An XML Query Language]] section [4.25 Validate Expressions] and XSLT ([[XSL Transformations (XSLT) Version 4.0]] section [25.4 Validation]
but the detailed description has since been moved to F&O 17.2.4.
Note that XSLT has always allowed validation of free-standing attribute nodes, but the validate expression in XQuery allows only document and element nodes.
Pull request #2383 created #created-2383
Attempt to resolve action QT4CG-148-01
Per #2315:
- Added ‘at-risk’ changes to the fn:insert-separator, array:members, and array:of-members
- Added ‘at-risk’ changes to the XPath/XQuery section on map and array filtering
- Added a note about what ‘at risk’ means to the status sections
Issue #2382 closed #closed-2382
Tool changes for action QT4CG-148-01
Pull request #2382 created #created-2382
Tool changes for action QT4CG-148-01
These should have no effect without additional commits, but they have to be merged into main in order to have a visible effect on my subsequent PR.
Issue #573 closed #closed-573
Node construction functions
Issue #2124 closed #closed-2124
573 Functions to Construct Trees
QT4 CG meeting 148 draft minutes #minutes-01-13
Draft minutes published.
Issue #2357 closed #closed-2357
element() vs element(*) in function signatures
Issue #2358 closed #closed-2358
2357 Standardize on element() rather than element(*)
Issue #2367 closed #closed-2367
Documentation for new main-module attribute of xsl:stylesheet
Issue #2366 closed #closed-2366
json-lines attribute for xsl:output and xl:result-document in XSLT spec
Issue #2356 closed #closed-2356
Clarification on scope of variables in xsl:for-each-group/(@split-when|@merge-when)
Issue #2368 closed #closed-2368
2367 Misc XSLT editorial fixes
See 4893 more statuses in yearly archives.