From afe0a2828c640a63a69b5b5a83c043af17af2e69 Mon Sep 17 00:00:00 2001 From: aorzelskiGH Date: Fri, 17 Apr 2026 16:58:48 +0200 Subject: [PATCH] fix(schema): use anyOf where BNF allows mixed inline and named groups The BNF distinguishes concatenation (mix allowed) from alternation (XOR) for the pairs inline-group / named-group. Three pairs in the JSON schemas were marked oneOf (XOR) even though the grammar is CAT. Grammar references (access-rules.bnf / grammar.bnf): ::= ( )* ( )* -- CAT ::= "ACCESSRULE:" ... ( | ) -- XOR "OBJECTS:" ( )* ( )* -- CAT (inline, not ) ( "FORMULA:" ... | ) -- XOR Changes: - ACL.{ATTRIBUTES, USEATTRIBUTES} oneOf -> anyOf - AccessPermissionRule.{OBJECTS, USEOBJECTS} oneOf -> anyOf - DEFATTRIBUTES item.{attributes, USEATTRIBUTES} oneOf -> anyOf (only in aas-specs-security; API schema doesn't have USEATTRIBUTES at DEFATTRIBUTES level.) Kept as oneOf (XOR): - AccessPermissionRule.{ACL, USEACL} - AccessPermissionRule.{FORMULA, USEFORMULA} - DEFOBJECTS item.{objects, USEOBJECTS} - SecurityQueryFilter.{CONDITION, USEFORMULA} Refs: Review Finding T-13 Made-with: Cursor --- .../partials/json/aas-queries-and-access-rules-schema.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/documentation/IDTA-01004/modules/ROOT/partials/json/aas-queries-and-access-rules-schema.json b/documentation/IDTA-01004/modules/ROOT/partials/json/aas-queries-and-access-rules-schema.json index 3a15b94..285a07a 100644 --- a/documentation/IDTA-01004/modules/ROOT/partials/json/aas-queries-and-access-rules-schema.json +++ b/documentation/IDTA-01004/modules/ROOT/partials/json/aas-queries-and-access-rules-schema.json @@ -611,7 +611,7 @@ "RIGHTS", "ACCESS" ], - "oneOf": [ + "anyOf": [ { "required": [ "ATTRIBUTES" @@ -681,7 +681,7 @@ ] }, { - "oneOf": [ + "anyOf": [ { "required": [ "OBJECTS" @@ -806,7 +806,7 @@ "required": [ "name" ], - "oneOf": [ + "anyOf": [ { "required": [ "attributes"