-
Key: SYSML2-306
-
Status: open
-
Source: Model Driven Solutions ( Mr. Ed Seidewitz)
-
Summary:
The validateStateDefinitionIsParallelGeneralization and validateStateUsageIsParallelGeneralization prohibit parallel state definitions and usages from owning specializations of non-parallel state definitions and usages (and vice versa). However, this would prevent even, e.g., an empty non-parallel state definition from having a usage that was parallel, for example:
state def S; state s : S parallel { // validation error! state s1; state s2; }
Further, it is also a validation error for a parallel state definition to explicitly specialized the base state definition StateAction (which is not parallel), even though an implicit specialization is not checked:
state def S1 parallel { } // legal, implicitly specializes StateAction state def S2 :> States::StateAction parallel { } // validation error!
For consistency, it would seem that, at least, a parallel state definition or usage should be able to explicitly specialize a non-parallel one. But perhaps the constraints are really not semantically necessary at all.
-
Reported: SysML 2.0b1 — Sun, 16 Jul 2023 21:17 GMT
-
Updated: Mon, 8 Apr 2024 18:21 GMT
SYSML2 — validateStateDefinitionIsParallelGeneralization and validateStateUsageIsParallelGeneralization constraints are too restrictive
- Key: SYSML2-306
- OMG Task Force: Systems Modeling Language (SysML) 2.0 FTF