@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
Issue #2424 closed #closed-2424
More Explorer tweaks
Issue #2425 created #created-2425
Permanent diffs for PRs
Since we link to pull requests in the spec and in test cases, I wonder whether it would be possible to publish a permanent diff showing the effect of each PR?
Essentially, the idea would be to take the HTML diff as we currently publish it, and reduce it to those sections of the specs that actually contain changes.
I would find this very useful, for example, when a PR has been accepted but is still marked with "Tests needed" - it's not easy at present to see retrospectively what tests might be required. It would also be useful, of course, when implementing the PR. But I think that all readers of the specs might find this beneficial.
Pull request #2424 created #created-2424
More Explorer tweaks
Building on the awesome work from @ndw I just tweaked the grammar explorer layout a little more
- layout works better on bigger and smaller screens
- consistent navigation between all screens with back button alwasy on the navigation at the top
- consistent sizes, paddings, colors set by CSS variables
- output as html5 which fixes small issues with whitespace in inline elements
- additional, minor layout improvmements
Before
After
Pull request #2423 created #created-2423
2421 document XSLT incompatibility with simplified stylesheets
Fix #2421
Issue #2422 created #created-2422
XSLT: drop 3.11 Embedded Stylesheet Modules
XSLT Section 3.11 describes embedded stylesheet modules - a stylesheet rooted at an element node which is not the outermost element of a document. There are no real conformance requirements associated with this feature and it isn't widely used. I proposed we drop the section, while retaining the statement in §3.5 that a stylesheet module can be "all or part" of an XML document.
Issue #2421 created #created-2421
XSLT edge case incompatibility with simplified stylesheet
Simplified stylesheets have changed so that the implicit template rule now does match="." rather than match="/".
This creates a theoretical incompatibility when
(a) the stylesheet is invoked supplying a node other than a document node as the input. It will now execute the (only) template rule, previously it would execute the built-in template for the node kind
(b) the simplified stylesheet module is included/imported into another stylesheet. This is a highly unlikely scenario, but it is tested by test case include-0601.
The incompatibility should be documented.
Issue #2420 closed #closed-2420
Explorer tweaks
Pull request #2420 created #created-2420
Explorer tweaks
h/t @line-o
Plus a few other tweaks.
Pull request #2419 created #created-2419
2292 XSLT document() function: options parameter
Fix #2292
Issue #2414 closed #closed-2414
Diff markup issues
Pull request #2418 created #created-2418
2399b Add rules and advice for JSON output of special numerics
Fix #2399
Issue #2417 closed #closed-2417
2399 Add rules/advice for JSON output of special xs:double values
Pull request #2417 created #created-2417
2399 Add rules/advice for JSON output of special xs:double values
Fix #2399
Pull request #2416 created #created-2416
2406 Add fn:parts-of-dateTime and fn:build-dateTime functions
Fix #2406
Issue #2415 closed #closed-2415
Publish the grammar explorer pages
Pull request #2415 created #created-2415
Publish the grammar explorer pages
Issue #2414 created #created-2414
Diff markup issues
There seem to be two consistent errors in the diff markup that appears in PRs on the dashboard:
- When an inline
<code>element is modified, the diff version shows the old code as deleted (red background), but does not show the new code.
For example:
- When a grammar entry is modified, the text gets duplicated.
For example:
Pull request #2413 created #created-2413
2365 Drop extensible record types
This PR drops the concept of extensible record types, replacing it with a rule that coercion to a record type drops any map entries that are not defined by the record type. In effect this means that a record type used when declaring a function parameter is implicitly extensible.
The benefits of the proposal are:
- It simplifies the spec, especially rules on type subsumption and on generation of implicit constructor functions
- It avoids the need to declare pairs of record types, one extensible and one not.
- It avoids all the awkward decisions about whether record types used in core functions should be extensible or not.
The rules for type patterns in XSLT are changed to invoke coercion.
Fix #1484 Fix #2365
Pull request #2412 created #created-2412
2395 2396 Add missing "new in 4.0" entries
Fix #2395 Fix #2396
Pull request #2411 created #created-2411
2397 add to F&O list of functions defined in XSLT
Fix #2397
Pull request #2410 created #created-2410
2398 Fix fn:highest to match fn:lowest
Fix #2398
Pull request #2409 created #created-2409
2407 Change function to fn in type-of output
Fix #2407
Issue #2195 closed #closed-2195
Editorial notes (incremental)
Issue #2408 created #created-2408
Editorial notes (incremental)
This issue summarizes the unresolved comments from #2195:
- [x] Oxford/serial comma should be used consistently at numerous places. Candidates:
- sine, cosine and tangent
- durations, dates and times
- year, month, day, hour, minute, second and timezone
- The month, day, hour and minute components
- the tokens w, W and Ww
- rules for overflow, underflow and approximation
- [ ] The comma may need to be removed at other places:
- This function is context-independent, and focus-independent.
- A dynamic error is raised [err:FODC0002] if a relative URI reference is supplied, and the base-URI property in the static context is absent.
- [x]
fn:distinct-values:$coll→$collation - [x] “If … is an empty sequence” vs. “If … is the empty sequence” (which one do we prefer?)
- MHK: I can't say I have a strong preference, but pedantically, the is probably more accurate.
- [ ] Section 2.1.3 Values of the XPath 4.0 spec includes a change note highlighting that the terms XNode and JNode have been introduced but the section text only mentions XNode; there's no reference to JNode in that section other than in the change note itself.
- [ ] In the XPath 4.0 spec, the
publocURL appears to be incorrect (/spec/header/publoc/loc) - [x] A number of examples in the function catalog should be annotated with
spec="XQuery"so that the corresponding test cases are marked as inapplicable to XPath. Specifically:
fo-test-fn-count-001
fo-test-fn-deep-equal-005
fo-test-fn-every-010
fo-test-fn-function-annotations-002
fo-test-fn-function-annotations-003
fo-test-fn-hash-009
fo-test-fn-hash-010
fo-test-fn-serialize-004
fo-test-fn-sort-with-005
- [ ] The serialization spec, in the section on the serialization parameter document, makes it rather hard to discover that the namespace prefix
outputis bound to the URIhttp://www.w3.org/2010/xslt-xquery-serialization - [x] F+O The definition of fn:compare refers to a function
fn:months-from-dateTime, this should befn:month-from-dateTime - [ ] F+O The description of unparsed-text refers to the available text resources component of the dynamic context which has been dropped.
- [ ] The serialization spec for Adaptive serialization of function items gives an example
**fn:exists#1** is serialized as **function fn:exists#1**but the word function does not actually appear in the result. - [ ] fn:parse-html needs to define an error code for use when $encoding is an unknown or invalid encoding.
- [ ] Consistent rendition for term definitions. Most of the specs output definitions as
[Definition: here is the definition]. F+O uses[Definition] here is the definition. XSLT puts the keyword "Definition" in small caps. - [x] The function catalog contains entries for functions such as
op:gMonthDay-equalthat are no longer referenced. - [ ] Serialization, HTML5, Processing Instructions: Dashes in the name must be escaped as well. Example:
<?a---b c---d?>should be serialized as<!--?a- - -b c- - -d?-->.. - [ ]
UTF-16le→UTF-16LE,UTF-16be→UTF-16BE(caused by #2239) - [ ]
fn:unparsed-text: Referencebin:infer-encoding, drop redundant rules - [x]
op:divide-dayTimeDuration-by-dayTimeDuration: An example could be simplified by usingseconds(1)
Issue #2407 created #created-2407
`fn:type-of`: function vs fn
As we use the fn alias in (almost) all XQFO signatures, we could also return it by the fn:type-of function.
Issue #2355 closed #closed-2355
bin:infer-encoding error conditions
Issue #2362 closed #closed-2362
2355 bin:infer-encoding: further alignments
QT4 CG meeting 150 draft minutes #minutes-01-27
Draft minutes published.
Issue #2361 closed #closed-2361
Encoding parameters: upper/lower case, normalization
Issue #2394 closed #closed-2394
2361 Use upper case for encoding names; comparisons are case-blind
See 4961 more statuses in yearly archives.