Closed seidewitz closed 1 year ago
I modified the visualizer to show "effective" names. For example,
part <'P-0'> p0 {
attribute <'A-1'> a1;
part <'Part-2'> part2;
}
part p1 :> p0 {
attribute :>> a1;
part :>> part2;
}
enum def E0 {
<'Enum 0'> e0;
<'Enum 1'> e1;
}
enum def E1 :> E0;
is rendered as:
with SHOWINHERITED
style.
This pull request updates the implementation for the 2022-12 metamodel baseline. It includes the following changes.
Abstract Syntax
Element
shortName
andname
properties have been renamed todeclaredShortName
anddeclaredName
.effectiveName
property has been renamed toname
, and a new, derivedshortName
property has been added. The default derivation for these properties is to just have the same value asdeclaredName
anddeclaredShortName
.Relationship
Dependency
Systems
package to the KerMLRoot
package. However, this has no effect on the flatSysML.uml
model.Feature
name
andshortName
properties are derived as being the same as thedeclaredName
anddeclaredShortName
, unless both are empty, in which case they are derived together as being the same as thename
andshortName
of the result of thenamingFeature()
operation (if that is non-null).namingFeature()
operation is unchanged. Subclasses ofFeature
that have different effectivename
rules overide only thenamingFeature()
operation, so they all inherit the new derivation computation forname
andshortName
.A large number of additional constraints with OCL specifications have been added to the SysML abstract syntax. These are available in the
SysML.uml
andSysML.ecore
files.Concrete Syntax
Element
andRelationship
are now abstract, the bareelement
andrelationship
notations have been removed from KerML.Dependency
is now part of the KerML abstract syntax, adependency
notation has been added to KerML. It has the same syntax as the already existing SysML notation (except for the additional ability to includeownedRelatedElements
in its body, as for any KerML relationship body).Model Library
KerML
andSysML
– The reflectiveKerML
andSysML
models have been updated for the abstract syntax changes.Other Fixes
DependencyImpl::getTarget
to addownedRelatedElements
at the end of the returned list.