2022-11 - SysML v2 Pilot Implementation
This is an incremental update to the 2022-10 release. It corresponds to Eclipse plugin version 0.30.0.
Language Features
-
Membership and namespace import. The abstract syntax for
Import
has been revised so that it is now abstract with two concrete subclasses,MembershipImport
andNamespaceImport
. The textual and graphical notations are unchanged, but their parsing is different.- An import declaration of the form
import
qualifiedName
;
now parses to aMembershipImport
with itsimportedMembership
given by the resolution of thequalifiedName
. If thequalifiedName
is suffixed by::**
, thenisRecursive = true
. - An import declaration of the form
import
qualifiedName
::*;
now parses to aNamespaceImport
with itsimportedNamespace
given by the resolution of thequalifiedName
. If::**
is also added, thenisRecursive = true
.
[PR #426]
- An import declaration of the form
-
Membership and namespace expose. In the SysML abstract syntax,
Expose
is a kind ofImport
. Parallel to the abstract syntax change forImport
,Expose
is now abstract with two concrete subclassesMembershipExpose
andNamespaceExpose
.ViewUsage
has also been updated to replace theexposedNamespace
andviewedElement
properties with a singleexposedElement
. As a result of these changes, it is now possible for aViewUsage
to haveMembershipExpose
relationships to theMemberships
for individual elements, even if those elements are not named.
[PR #426]
Model Libraries
- KerML and SysML. The reflective syntax models
KerML
andSysML
have been updated to reflect the changes in the abstract syntax forImport
andExpose
.
[PR #426] - Interchange data.
.project
and.meta
files have been added to each of the model library directories in thesysml.library
project, conformant with the format required in subclause 10.2 of the latest KerML Specification. As a result, compressing each of these directories into a ZIP archive results in a legal project interchange (.kpar
) file, having model interchange files using the textual notation (.sysml
).
[PR #437]
Backward Incompatibilities
There are no changes to the concrete syntax, so all existing valid models will continue to be valid. However, the abstract syntax for Import
and Expose
relationships has changed, so import
and expose
declarations will parse differently than before, as described above.
Jupyter
None.
Visualization
- PlantUML
See bug fixes - Tom Sawyer
None.
Technical Updates
-
Eclipse version. The minimum required version for Eclipse installation has been updated to 2022-09.
[PR #425] -
JSON schema. The following JSON Schema files have been added to the
org.omg.sysml
project under a newjson-schema
directory:KerML.json
– KerML abstract syntax (also to be used for API payload validation)SysML.json
– SysML abstract syntax (also to be used for API payload validation)ModelInterchange.json
– Interchange project information (.project
) and interchange project file metadata (.meta
)
[PR #433]
Bug Fixes
- RequirementDerivation. Corrected the
baseTypes
forOriginalRequirementMetadata
tooriginalRequirements
andDerivedRequirementMetadata
toderivedRequirements
. These had been switched.
[PR #432] - Feature chain evaluation. Corrected the evaluation of feature chains with intermediate features that are redefined.
[PR #435] - Rendering of subjects (PlantUML). Rendered requirement and case subjects as distinct nodes in order to render subjects with bindings or subsettings.
[PR #428] - Start/done and entry/exit action rendering (PlantUML). Properly rendered start and done in actions and entry and exit actions in states.
[PR #429] - Variant visualization (PlantUML). Revised visualization of variants to align with specification.
[PR #431] - Short name rendering (PlantUML). Fixed an error inadvertently introduced by PR #385 that prevented short names from being rendered.
[PR #434] - Binding connector rendering (PlantUML). Properly rendered binding connectors between ports.
[PR #436]