QT4 CG Dashboard

These are the open pull requests and current branches. Where possible, a summary of the changes between the pull request or branch and the latest drafts is provided with a DeltaXignia pipeline.

Pull requests in descending order

PR #2990: 2989 Clarify coercion of external values for global variables

Pull request #2990 by michaelhkay.

Fix #2989 Changes the rules for load-xquery-module so that values supplied for external global variables are coerced to the required type.

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xquery-40/src/query-prolog.xml

PR #2986: 2897 Namespace Axis

Pull request #2986 by ChristianGruen.

Fewer changes than I feared. For XQUF, we proceed as follows: - Generated prefixes: on insert and replace, we switch to a new prefix (`ns0_1`) where XQUF requires `XUDY0023`. - Insert: we drpo namespace nodes in the source. XQUF doesn't mention them, so read literally they would be inserted as children. - Delete: we ignore namespace nodes. XQUF only skips nodes without a parent, so read literally they would be deleted. Closes #2897

Changed files
  • specifications/grammar-40/xpath-grammar.xml
  • specifications/xpath-datamodel-40/src/xpath-datamodel.xml
  • specifications/xquery-40/src/errors.xml
  • specifications/xquery-40/src/expressions.xml
  • specifications/xquery-40/src/xpath-backwards-compat.xml

PR #2985: 2984 Serialization parameters unified

Pull request #2985 by ChristianGruen.

…much better than what we have now, I hope. Feel free to rant at my XSL style; at least it’s properly indented ;) #2981 wil need to be rebased. Closes #2984

Changed files
  • build.gradle
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/style/merge-function-specs.xsl
  • specifications/xquery-40/src/query-prolog.xml
  • specifications/xslt-40/src/xslt.xml
  • specifications/xslt-xquery-serialization-40/src/serialization-parameters.xml
  • specifications/xslt-xquery-serialization-40/src/xslt-xquery-serialization.xml
  • specifications/xslt-xquery-serialization-40/style/merge-serialization.xsl
  • style/assemble-spec.xsl
  • style/serialization-parameters.xsl

PR #2981: 2980 Adaptive serialization: modes

Pull request #2981 by ChristianGruen.

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

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xquery-40/src/query-prolog.xml
  • specifications/xslt-40/src/element-catalog.xml
  • specifications/xslt-40/src/schema-for-xslt40.xsd
  • specifications/xslt-40/src/xslt.xml
  • specifications/xslt-xquery-serialization-40/src/schema-for-serialization-parameters.xsd
  • specifications/xslt-xquery-serialization-40/src/xslt-xquery-serialization.xml

PR #2979: 2972 Simplify record types

Pull request #2979 by michaelhkay.

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.

Changed files
  • specifications/grammar-40/xpath-grammar.xml
  • specifications/xpath-datamodel-40/src/xpath-datamodel.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml
  • specifications/xquery-40/src/expressions.xml
  • specifications/xquery-40/src/query-prolog.xml
  • specifications/xslt-40/src/element-catalog.xml
  • specifications/xslt-40/src/xslt.xml

PR #2978: 2972 Records and simplicity

Pull request #2978 by ChristianGruen.

…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

Changed files
  • specifications/grammar-40/xpath-grammar.xml
  • specifications/xpath-datamodel-40/src/xpath-datamodel.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml
  • specifications/xquery-40/src/expressions.xml
  • specifications/xquery-40/src/query-prolog.xml
  • specifications/xslt-40/src/element-catalog.xml
  • specifications/xslt-40/src/xslt.xml

PR #2948: 2919 fn:distinct-by

Pull request #2948 by ChristianGruen.

Split from #2932, discussion ongoing (see https://qt4cg.org/meeting/minutes/2026/09-29.html). Issue: #2919

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml

PR #2918: 2600 Options on fn:collection()

Pull request #2918 by michaelhkay.

Defines an options parameter for the fn:collection and fn:uri-collection functions. Fix #2600 Fix #285

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml

PR #2885: 2849 xs:integer vs. restricted subtypes

Pull request #2885 by ChristianGruen.

In this PR, numeric specific subtypes are changed back to the general `xs:integer` (see #2849 for the rationale). It also fixes an inconsistency in the CSV rules… `parsed-csv-structure-record?column-index` was `map(xs:string, xs:integer)` with the prose “column positions (as 1-based positive integers)”, while `?get` in the same record type uses `xs:positiveInteger`. …and it now allows users to also supply negative input for `fn:unix-dateTime` (similarly: “If the value is out of range …”).

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xquery-40/src/expressions.xml

PR #2881: 2873 fn:update: another attempt

Pull request #2881 by ChristianGruen.

I deliberately ignored Sequence JNodes and the ·jposition· property. I will look at it once #2878 is done.

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml

PR #2350: 708 fn:generate

Pull request #2350 by michaelhkay.

This proposal has two ingredients (a) a single function generate-sequence() that produces a sequence of states from an initial state and a function that computes one state from the previous state (b) a definition of pipelining (aka lazy evaluation) and (currently incomplete) rules requiring certain operations to have a pipelined implementation.

Changed files
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml

PR #2247: 716 Deferred Evaluation in XPath - the f:generator record

Pull request #2247 by dnovatchev.

This PR introduces the notion of deferred evaluation and presents the tool to achieve this - the built-in named record type `f:generator`. - Two major use cases are presented. - The fields of `f:generator` are defined. - All system-provided methods of `f:generator` are defined. - Examples of using each of the methods of `f:generator` are provided. - The formal equivalents of each of the system-provided methods of `f:generator` are provided in a separate appendix. <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/65d04952-794f-4a81-ae64-c96217a9812d" />

Changed files
  • schema/xsl-query.dtd
  • specifications/xpath-functions-40/src/function-catalog.xml
  • specifications/xpath-functions-40/src/xpath-functions.xml