@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 164 draft minutes #minutes-05-12

12 May at 16:30:00 GMT

Draft minutes published.

Issue #2568 closed #closed-2568

12 May at 16:26:55 GMT

Error codes for fn:build-dateTime

Issue #2601 closed #closed-2601

12 May at 16:26:54 GMT

2568 Error code changes for dateTime functions

Issue #2602 closed #closed-2602

12 May at 16:21:40 GMT

Clarify conformance status of bin and file libraries

Issue #2603 closed #closed-2603

12 May at 16:21:39 GMT

2602 EXPath file and binary modules as optional features

Issue #2609 closed #closed-2609

12 May at 16:19:35 GMT

QT4CG-156-03 Revise text on JNode identity

Issue #2616 closed #closed-2616

12 May at 16:17:32 GMT

2613b Additional notes, examples, and clarifications for xsl:array-member

Issue #2580 closed #closed-2580

12 May at 16:15:30 GMT

XSLT Match patterns for records

Issue #2596 closed #closed-2596

12 May at 16:15:28 GMT

2580 Map patterns

Issue #2612 closed #closed-2612

12 May at 16:13:27 GMT

`fn:char`, XML 1.1: support \b and \f

Issue #2622 closed #closed-2622

12 May at 16:13:25 GMT

2612 fn:char: Support \b and \f

Issue #2618 closed #closed-2618

12 May at 16:11:19 GMT

2585 (part) Clarify error handling on date/time/duration arithmetic

Issue #2621 closed #closed-2621

12 May at 16:07:14 GMT

Is fn:transform description missing listings for post-process option?

Issue #2623 closed #closed-2623

12 May at 16:07:12 GMT

2621 Add reference to post-process option

Issue #2573 closed #closed-2573

11 May at 21:45:02 GMT

Generated test case for codepoints-to-string(0)

Pull request #2627 created #created-2627

11 May at 14:24:39 GMT
2624 Change error codes XPTY0019 and -0020 to XPTY0004

Fix #2624

Pull request #2626 created #created-2626

11 May at 14:09:49 GMT
2625 Make arguments of fn:substring be xs:numeric

Fix #2625

Issue #2625 created #created-2625

10 May at 22:57:11 GMT
Change argument type of substring() from xs:double to xs:numeric

fn:substring takes xs:double arguments for historic reasons; there were some fancy coding tricks you could play in XPath 1.0 by supplying INF or NaN. Today it would make more sense to make the argument xs:integer, especially as coercion will now convert a supplied double to xs:integer.

fn:subsequence was designed along the same pattern and in 2.0, 3.0, and 3.1 it expected xs:double for its arguments. But in issue #2542 and PR #2543 we changed the argument type to xs:numeric.

I can't see any good reason why we shouldn't make the same change to fn:substring.

Issue #2624 created #created-2624

10 May at 16:05:37 GMT
Drop XPTY0019 and XPTY0020 in favour of XPTY0004

I propose that we drop error codes XPTY0019 and XPTY0020 in favour of XPTY0004.

Firstly, there's a big overlap between XPTY0019 and XPTY0020: with a path expression such as $x/child::node(), if $x selects items that aren't nodes, it's perfectly legitimate to raise either. Furthermore, the rule in §2.4.3.2

If an operand of an expression does not have a [dynamic type] that is a [subtype] of the [static type] required for that operand, a [type error] is raised [err:XPTY0004]

would legitimise XPTY0004 for this situation.

We state in §4.7.5 Axis Steps: "The [axis step] S is equivalent to ./S", but that isn't true because the error codes are different.

It's unlikely that anyone would use try/catch to catch either XPTY0019 or XPTY0020, firstly because of the overlap, and secondly because type errors will often be raised statically.

Pull request #2623 created #created-2623

07 May at 17:39:01 GMT
2621 Add reference to post-process option

Fix #2621

Pull request #2622 created #created-2622

07 May at 17:19:18 GMT
2612 fn:char: Support \b and \f

Fix #2612

Issue #2621 created #created-2621

07 May at 13:25:07 GMT
Is fn:transform description missing listings for post-process option?

In https://qt4cg.org/specifications/xpath-functions-40/Overview.html#func-transform , post-process is one of the options listed under "The meanings of each option are defined in the table below." Should it also appear earlier in the document, in the "Zero or more of the following additional options:" lists?

Issue #2620 created #created-2620

07 May at 06:43:59 GMT
fn:unparsed-text: editorial issues, error codes

Adopted from #2408:

  • [ ] Reference bin:infer-encoding, drop redundant rules

Triggered by https://github.com/qt4cg/qt4tests/pull/372#issuecomment-4394361787 and previous observations:

  • [ ] Merge FOUT1190 and FOUT1200

Issue #2619 created #created-2619

06 May at 15:26:52 GMT
Formatting of options records

In F&O, the tabulation of options for functions taking an options parameter uses the obsolete notation where a field name is followed by a ? to indicate that it may be absent.

The convention for options parameters is that supplying an empty value is the same as omitting the entry; but the tabulation often doesn't indicate that an empty value is acceptable.

Pull request #2618 created #created-2618

06 May at 11:55:48 GMT

2585 (part) Clarify error handling on date/time/duration arithmetic

Issue #2617 created #created-2617

06 May at 11:19:53 GMT
Duration multiplied or divided by numeric

In the operator mapping table for arithmetic operations that multiply or divide a duration by a number, the second operand is described as xs:numeric, but in the signature of the corresponding op: functions in F+O, it is listed as xs:double. This implies for example that with an expression such as xs:dayTimeDuration('PT1H') * 1.2, we have to convert the decimal 1.2 to a double, delivering a result that is not quite equal to PT1H12M. We could remove the anomaly by changing the signature to use xs:numeric.

At the same time we can remove the restriction that the first operand has to be xs:dayTimeDuration or xs:yearMonthDuration. It's perfectly possible to apply the operation to any xs:duration - just multiply or divide the months and seconds components individually and combine the results.

Pull request #2616 created #created-2616

05 May at 18:06:05 GMT
2613b Additional notes, examples, and clarifications for xsl:array-member

Following the discussion of PR #2614 (which was accepted), this PR provides additional notes, clarifications, and examples.

The only substantive change is to deal with the case where the xsl:array-member instruction inadvertently selects JNodes; it avoids double-wrapping these in further JNodes.

QT4 CG meeting 163 draft minutes #minutes-05-05

05 May at 16:45:00 GMT

Draft minutes published.

Issue #2595 closed #closed-2595

05 May at 16:27:18 GMT

DM edits on XML Schema data types

Issue #2605 closed #closed-2605

05 May at 16:24:09 GMT

`file:copy`, `file:move`: define behavior when target is inside source directory

See 5418 more statuses in yearly archives.