@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 184 draft minutes #minutes-10-13

13 Oct at 16:45:00 GMT

Draft minutes published.

Issue #2983 created #created-2983

13 Oct at 16:40:08 GMT
Inconsistency in definition of regular expression assertions

The now-merged PR #2966 has introduced inconsistency to the specifications.

The prefatory prose for 6.1.8 invokes the concept of "current position" and that concept is at the heart of the definitions of boundary assertions and all lookahead and lookbehind assertions, but it is no longer part of the definition of metacharacters ^ and $. Either the latter should be redefined in terms of current position, or the other assertions should be redefined without reference to current position, and the initial prose about assertions should be revised to drop any reference to "current position".

Issue #2976 closed #closed-2976

13 Oct at 16:30:55 GMT

`fn:current`: drop it?

Issue #2977 closed #closed-2977

13 Oct at 16:30:53 GMT

2976 `fn:current`: drop it!

Issue #2965 closed #closed-2965

13 Oct at 16:27:50 GMT

Regex functions: bugs

Issue #2966 closed #closed-2966

13 Oct at 16:27:49 GMT

2965 Regex functions: bugs

Issue #2930 closed #closed-2930

13 Oct at 16:25:23 GMT

`fn:map-to-element`: tweaks

Issue #2931 closed #closed-2931

13 Oct at 16:25:22 GMT

2930 fn:map-to-element: tweaks

Issue #2813 closed #closed-2813

13 Oct at 16:21:34 GMT

Clarify xsl:result-document without href?

Issue #2920 closed #closed-2920

13 Oct at 16:21:33 GMT

2813 clarifications for xsl:result-document

Issue #2693 closed #closed-2693

13 Oct at 16:18:31 GMT

XSLT: Drop some type patterns

Issue #2911 closed #closed-2911

13 Oct at 16:18:30 GMT

2693 Drop type patterns (and other revisions)

Issue #2521 closed #closed-2521

13 Oct at 16:15:27 GMT

File retrieval, URIs: fragment identifiers

Issue #2760 closed #closed-2760

13 Oct at 16:15:25 GMT

2521 URIs: unify handling of fragment identifiers

Issue #2936 closed #closed-2936

13 Oct at 16:12:00 GMT

Named function references: make early errors optional

Issue #2939 closed #closed-2939

13 Oct at 16:11:59 GMT

2936 Named function references: make early errors optional

Issue #2971 closed #closed-2971

13 Oct at 16:09:17 GMT

Align trim-space with normalize-space

Issue #2975 closed #closed-2975

13 Oct at 16:09:16 GMT

2971 Align trim-space with normalize-space

Issue #2982 created #created-2982

13 Oct at 14:55:29 GMT
upper-case() and lower-case(): precise Unicode references

The functions upper-case() and lower-case() are defined by reference to the Unicode standard, but it is not easy to locate the specific rules that are being referred to, partly because we don't provide a precise link, and partly because the terminology seems to have evolved. We also need a clearer indication (and recognition in the test suite) of how changes between Unicode versions should be handled.

Also we might want to consider the way in which case-blind matching (the 'i' flag in regular expressions) is defined. This allows a lower-case character to match only one upper-case character, and vice versa.

There are some new test cases that have been submitted (e.g. caselessmatch17/18/19) that illustrate the difficulties.

Pull request #2981 created #created-2981

13 Oct at 14:30:50 GMT
2980 Adaptive serialization: modes

…later than “next minutes”, but it’s online now. Closes #2980

Issue #2980 created #created-2980

13 Oct at 12:22:38 GMT
Adaptive serialization: two modes

As indicated before, the adaptive output method tries to serve two purposes at once, and it achieves neither reliably:

  1. Output that can be pasted back into a query. The spec calls this “an aim rather than a requirement”. In practice, the output often fails to parse or doesn’t give back the same value.
  2. Human-readable output for debugging. Here the method is more verbose than it needs to be.

As a result, implementations tend to do some magic on their own. In, BaseX, for example, we added a custom basex method.

In the past, I have introduced some half-baked extensions to the serialization methods, like #2389, and I think we should go one step further. I propose to add a new serialization parameter, adaptive-mode, with two values:

  • expression (default): the output is an expression in the host language that rebuilds the value as far as possible. It stays close to today’s output, with stricter rules.
  • readable: values are shown by their content, e.g. 2015-07-17 and true. Only kinds that would otherwise be unrecognizable are marked, such as JNodes and QNames. This mode suits console output, logs, and (depending on the implementation’s preference, fn:trace and fn:message).

Issue #2735 closed #closed-2735

13 Oct at 11:16:24 GMT

JNodes: serialization

Issue #2979 closed #closed-2979

12 Oct at 22:32:56 GMT

2972 Simplify record types

Pull request #2979 created #created-2979

12 Oct at 16:45:53 GMT
2972 Simplify record types

This PR simplifies the definition of record types as follows:

  1. Terminology: structural and nominative record types become "simple" and "labeled" record types
  2. Simple record types revert to being purely structural: both type membership (matching) and subtyping depend only on comparing the contents of the definitions; no type annotations are needed on map instances.
  3. The default for the %constructor annotation switches; you now need a %no-constructor annotation to prevent the generation of a constructor function.

Pull request #2978 created #created-2978

12 Oct at 15:32:22 GMT
2972 Records and simplicity

…an attempt to simplify records, as motivated by the table in https://github.com/qt4cg/qtspecs/issues/2972#issuecomment-6096543708. All kind of feedback is welcome (much more time went into this than originally planned; it also includes cleanups of minor inconsistencies).

The good thing: it made the implementation much easier again.

Closes #2972

QT4 CG meeting 184 draft agenda #agenda-10-13

12 Oct at 10:30:00 GMT

Draft agenda published.

Pull request #2977 created #created-2977

10 Oct at 20:25:57 GMT
2976 `fn:current`: drop it!

👋

Issue #2976 created #created-2976

10 Oct at 20:20:50 GMT
`fn:current`: drop it?

Now that we have revised the dot semantics (.) in parameter default values, I believe that fn:current is not needed in XQuery anymore: current does not tell what it does, and for XSLT users, it may simply be confusing because it behaves differently.

In the upcoming PR, I’ll revert #2867.

Issue #2876 closed #closed-2876

10 Oct at 15:33:14 GMT

Editorial Notes (September 2026 edition)

Issue #2947 closed #closed-2947

10 Oct at 15:33:12 GMT

2876 Editorial Notes (September 2026 edition)

See 6177 more statuses in yearly archives.