From 6e5cc136e16b4ed95922087ac12304cf7154f727 Mon Sep 17 00:00:00 2001 From: aorzelskiGH Date: Fri, 17 Apr 2026 17:01:32 +0200 Subject: [PATCH 1/2] fix(schema): correct Value semantics for $dayOfWeek/$dayOfMonth/$month/$year and timeLiteralPattern The BNF defines these keys as numeric-extraction functions over a dateTime expression: ::= ( "$dayOfWeek" | "$dayOfMonth" | "$month" | "$year" ) "(" ")" where is a DateTimeLiteral, a cast to dateTime, or a GlobalAttribute (e.g. GLOBAL(UTCNOW)). The argument is therefore a Value expression that evaluates to a dateTime, not a literal xsd:dateTime string. The JSON schemas typed these four keys as $ref: "#/definitions/dateTimeLiteralPattern" which forced them to be literal ISO date-time strings and made constructs like `{"$dayOfWeek": {"$attribute": {"GLOBAL": "UTCNOW"}}}` invalid even though the BNF explicitly allows them. timeLiteralPattern was also stricter than the grammar: it rejected fractional seconds. The BNF