From 5daac942231d29c5f87ec1c1597c7f0a759381ac Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2026 13:16:05 +0000 Subject: [PATCH 1/2] feat(DocumentQueries): Project and WhereFeature take tolerate, to keep an empty cell where an element lacks the feature OpenSysML is making a feature an element row lacks a path error naming the element and the features it does have (QVTS outcome semantics); tolerate = true opts back into the empty cell for sources that mix element kinds. Additive, default false: MINOR. Co-Authored-By: Nicolas Rouquette --- .meta.json | 4 ++-- libraries/DocumentQueries.sysml | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.meta.json b/.meta.json index 655f6a7..97c6372 100644 --- a/.meta.json +++ b/.meta.json @@ -14,7 +14,7 @@ }, "libraries/DocumentQueries.sysml": { "algorithm": "SHA256", - "value": "aa60929736008efde216af31a14482817abc221a67e53c337173f53b59d63322" + "value": "90cbc305e0d26991b7365eefb31294a2452c05b0f9c37d9424ecf637924a79b3" }, "libraries/IdentityMetadata.sysml": { "algorithm": "SHA256", @@ -69,7 +69,7 @@ "value": "9e00f049209584092dc8bcb398b736c08e6a39b1db667a8a744de3df72a543bf" } }, - "created": "2026-10-25T17:57:00Z", + "created": "2026-10-27T13:15:54Z", "index": { "AnalysisRecords": "libraries/AnalysisRecords.sysml", "DiagramLayout": "libraries/DiagramLayout.sysml", diff --git a/libraries/DocumentQueries.sysml b/libraries/DocumentQueries.sysml index 69413e1..741fd14 100644 --- a/libraries/DocumentQueries.sysml +++ b/libraries/DocumentQueries.sysml @@ -179,6 +179,8 @@ library package DocumentQueries { in 'feature' : String[1]; in operator : String[1]; in value : String[1]; + /* As for Project: an element lacking the feature is a path error unless tolerated. */ + in tolerate : Boolean[1] default false; return result : Element[0..*] ordered; } @@ -235,6 +237,9 @@ library package DocumentQueries { in source : Element[0..*] ordered; in properties : String[0..*] ordered default null; in columns : ColumnSpec[0..*] ordered default null; + /* A property an element row lacks is a path error naming that element and + * the features it does have; tolerate = true keeps today's empty cell. */ + in tolerate : Boolean[1] default false; return result : Element[0..*] ordered; } From 42092d6324f7abb77784a005ad7dd654375fae51 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2026 13:19:03 +0000 Subject: [PATCH 2/2] docs(DocumentQueries): say how tolerate treats a dotted member path in Project's properties, against a Column path Co-Authored-By: Nicolas Rouquette --- .meta.json | 4 ++-- libraries/DocumentQueries.sysml | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.meta.json b/.meta.json index 97c6372..0ca5e58 100644 --- a/.meta.json +++ b/.meta.json @@ -14,7 +14,7 @@ }, "libraries/DocumentQueries.sysml": { "algorithm": "SHA256", - "value": "90cbc305e0d26991b7365eefb31294a2452c05b0f9c37d9424ecf637924a79b3" + "value": "370b6f880bb2dc375b534f388e3c802c5820cc45e13977c38b3d36a9d1710233" }, "libraries/IdentityMetadata.sysml": { "algorithm": "SHA256", @@ -69,7 +69,7 @@ "value": "9e00f049209584092dc8bcb398b736c08e6a39b1db667a8a744de3df72a543bf" } }, - "created": "2026-10-27T13:15:54Z", + "created": "2026-10-27T13:19:03Z", "index": { "AnalysisRecords": "libraries/AnalysisRecords.sysml", "DiagramLayout": "libraries/DiagramLayout.sysml", diff --git a/libraries/DocumentQueries.sysml b/libraries/DocumentQueries.sysml index 741fd14..6f7022a 100644 --- a/libraries/DocumentQueries.sysml +++ b/libraries/DocumentQueries.sysml @@ -237,8 +237,10 @@ library package DocumentQueries { in source : Element[0..*] ordered; in properties : String[0..*] ordered default null; in columns : ColumnSpec[0..*] ordered default null; - /* A property an element row lacks is a path error naming that element and - * the features it does have; tolerate = true keeps today's empty cell. */ + /* A property an element row lacks — a feature name, or a dotted member path + * whose segment names no member on that row — is a path error naming the + * element and the features it does have; tolerate = true keeps the empty + * cell. A Column path is a computed cell and stays absent, as documented above. */ in tolerate : Boolean[1] default false; return result : Element[0..*] ordered; }