You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Umbrella for the two derived members in the Expression / Function family that cannot be implemented
as plain derived-property ports. Both have no OCL derivation; both are backed by the Kernel
Functions Library. Together they are the last 2 of only 4 remaining NotSupportedException stubs
across SysML2.NET/Extend/.
Sub-issues
[Feature]: Function::isModelLevelEvaluable — generate the Kernel Functions Library membership set #364 — Function::isModelLevelEvaluable. A Kernel Functions Library membership test against
the 39 operator rows of KerML 1.0 Table 5 (§8.2.5.8.1) and Table 7 (§8.2.5.8.2). Generated, not
hardcoded: 36 of the 39 rows derive from the KEBNF operator terminals, four XMI operator = '…'
constraints, and the Kernel Function Library .kpar; only the 3 No rows stay curated. No engine
required. Also completes the runtime behaviour of InvocationExpressionExtensions.ComputeRedefinedModelLevelEvaluableOperation
(SysML2.NET/Extend/InvocationExpressionExtensions.cs:57).
Reflective metaclass features (KerML 1.0 §9.2.17) — the remaining two Extend stubs, SysML2.NET/Extend/MetadataAccessExpressionExtensions.cs:163 and SysML2.NET/Extend/MetadataFeatureExtensions.cs:208. They block the meta and @@ operators
inside [Feature]: InvocationExpression::evaluate — model-level expression evaluation engine #365 but are a separate MOF-registry workstream.
The valuation clause omitted at SysML2.NET/Extend/ExpressionExtensions.cs:170. This is not unblocked by the evaluation engine (as an earlier revision of this issue claimed). IFeature has no valuation property because the generator skipped it: in Resources/KerML_only_xmi.uml:7469 it is declared as an association ownedEnd, not an ownedAttribute. That is an independent code-generation gap and needs its own issue.
Activity
[-][Feature]: Implement InvocationExpressionExtensions.ComputeRedefinedEvaluateOperation (model-level evaluation engine)[/-][+][Feature]: Model-level expression evaluation engine — InvocationExpression.evaluate + Function.isModelLevelEvaluable[/+][-][Feature]: Model-level expression evaluation engine — InvocationExpression.evaluate + Function.isModelLevelEvaluable[/-][+][Feature]: Model-level expression evaluation — umbrella (InvocationExpression::evaluate + Function::isModelLevelEvaluable)[/+]