Skip to content

Releases: Systems-Modeling/SysML-v2-Pilot-Implementation

2026-03 - SysML v2 Pilot Implementation

08 Apr 15:34

Choose a tag to compare

This is an incremental update to the 2026-02 release. It corresponds to Eclipse plugin version 0.58.0.

Language Features

None.

Model Libraries

None.

Backward Incompatibilities

  1. Filter expressions. Many examples of feature references in filter expressions currently use a qualified name notation, such as
    filter @Annotations::ApprovalAnnotation and
        Annotations::ApprovalAnnotation::approved and
        Annotations::ApprovalAnnotation::level > 1;
    
    However, the checkConnectorTypeFeaturing constraint is impossible to satisfy for the binding connectors implied by these feature references. The Pilot Implementation was not reporting this as an error, which was not conformant with the normative metamodel for KerML (and, so, SysML, too). Now that this nonconformity has been corrected, the above feature references will cause "Must be accessible feature" errors. To avoid such errors, the qualified names need to be changed to feature chains such as in the following:
    filter @Annotations::ApprovalAnnotation and
        (as Annotations::ApprovalAnnotation).approved and
        (as Annotations::ApprovalAnnotation).level > 1;
    
    [PR #743]

Issue Resolutions

This release proactively implements the resolution to the following issue, which the KerML 1.1 RTF has elevated to be a "blocker" issue.

[PR #749]

Jupyter

None.

Visualization (PlantUML)

None.

Technical Updates

None.

Bug Fixes

  1. Filter expressions. Removed code that suppressed violations of checkConnectorTypeFeaturing within feature references in filter expressions.
    [PR #743]
  2. Semantic metadata. Fixed a bug that could cause an incorrect name resolution when using semantic metadata.
    [PR #744]
  3. Adapters. Fixed bugs in TypeAdapter and AssignmentUsageAdapter.
    [PR #747]
  4. Derived property. Corrected the derivation computation for the property Feature::crossFeature so it takes implied CrossSubsetting into account.
    [PR #748]

2026-02 - SysML v2 Pilot Implementation

07 Mar 00:09
fc3c14a

Choose a tag to compare

This is an incremental update to the 2026-01 release. It corresponds to Eclipse plugin version 0.57.0.

Language Features

None.

Model Libraries

None.

Backward Incompatibilities

None.

Jupyter

None.

Visualization (PlantUML)

None.

Technical Updates

  1. isNonunique property. The default for the Feature::isUnique property is true. In the textual notation, the nonunique keyword is used to set this property to false. This was previously handled by adding an isNonunique property to Feature when generating the Ecore metamodel, which could be set to true when the keyword nonunique was parsed. This alteration of the metamodel has now been removed. Instead, during parsing, nonunique is considered to be the single member of a data type with value false, which can be used to set the normative isUnique property.
    [PR #738]
  2. Character encoding. Added explicit UTF-8 character encodings to several Eclipse projects, eliminating warnings about this in the Eclipse workbench.
    [PR #742]

Bug Fixes

  1. OperandEList exception. Fixed an error introduced by the changes to OperandEList in PR #734, which could caused an exception when iterating through a model to view an XMI file in Eclipse or to publish a model to a repository.
    [PR #737]
  2. SuccessionAsUsage exception. Fixed a missing implicit specialization mapping that caused an exception when a connection definition was used to type a succession in SysML.
    [PR #740]

2026-01 - SysML v2 Pilot Implementation

10 Feb 19:42

Choose a tag to compare

This is an incremental update to the 2025-12 release. It corresponds to Eclipse plugin version 0.56.0.

Language Features

  1. Trig function evaluation. The library functions from the TrigFunctions package are now implemented for non-model-level evaluation.
    [PR #731]

Model Libraries

None.

Backward Incompatibilities

There are no backward incompatibilities in the textual notation representation of the model. However, the in-memory EMF and serialized XMI representations have the following incompatibilities.
[PR #734]

  1. Getters and setters. The following getter and setter methods previously had special handwritten implementations, but now function as just regular getters and setters. This means that it is now the responsibility of the constructor of a model to ensure that the corresponding abstract syntax properties have values consistent with various validation constraints. For example, the isEnd property of the ownedMemberFeature of an EndFeatureMembership will no longer be automatically be true, but must be explicitly set to true to meet the validateEndFeatureMembershipIsEnd constraint. (For the textual notation, this is mostly by post-processing after Xtext parsing.)

    • CommentImpl.setBody
    • ElementImpl.setDeclaredName and setDeclaredShortName
    • FeatureImpl.isDirection and isEnd
    • FlowUsage.isAbstract
    • LiteralString.setValue
    • Membership.setMemberName and setMemberShortName
    • PortUsageImpl.isComposite
    • RequirementDefinition.setReqId
    • RequirementUsage.setReqId
    • TextualRepresentation.setLanguage and setBody
    • UsagImpl.isComposite
  2. Default value overriding. The overriding of metaproperty default values is now implemented by setting the property to the appropriate default value in the constructor for a metaclass Impl, rather than by overriding the getter for the property. It is now possible to subsequently change the value from the default, even if this would violate a validation constraint. For example, when an AttributeUsage is created, the default value for isComposite is false, but it is possible to use the setIsComposite method to set this to true, even though this would violate the validateAttributeUsageIsReferential constraint.

  3. Validation. The following validation constraints were previously not being checked, since they were automatically satisfied due to getter overrides. Since these getter overrides have now been removed, checks have been implemented for all the constraints.

    KerML

    • validateEndFeatureMembership
    • validateParameterMembership
    • validateCollectExpressionOperator
    • validateFeatureChainExpressionOperator
    • validateIndexExpressionOperator
    • validateSelectExpressionOperator
    • validateFlowEndIsEnd

    SysML

    • validateUsageIsReferential
    • validateReferenceUsageIsReferential
    • validateAttributeUsageIsReferential
    • validateEnumerationDefinitionIsVariation
    • validateEventOccurrenceUsageIsReference
    • validatePortUsageIsReference
  4. XMI serialization. The default for the Feature::isComposite property is false. Since XMI is usually serialized without including properties that have their default value, this means that isComposite=false should not be serialized. However, this previously was being serialized in the case of SysML usages that were required to be referential (i.e., always have isComposite=false). It is no longer being serialized in these cases. This effects the following elements:

    • AttributeUsage
    • BindingConnectorAsUsage
    • EventOccurrenceUsage
    • ExhibitStateUsage
    • IncludeUseCaseUsage
    • PerformActionUsage
    • ReferenceUsage
    • SuccessionAsUsage

    Note. This affects the XMI serialization of the standard library models.

Jupyter

None.

Visualization (PlantUML)

Bug fix.

Technical Updates

  1. Eclipse environment. The Eclipse environment required for Pilot Implementation development has been updated to the 2025-12 release (Java 21).
    [PR #732]
  2. EMF metamodel implementation. A number of updates have been made to remove handwritten code from EMF-generated Java Impl classes and to make the abstract syntax implementation more strictly conformant to the KerML and SysML specifications. This should have no effect on user modeling using the textual notation. However, there are some functional changes in the direct programmatic access to the abstract syntax representation of a model (see the items under "Backwards Incompatiblities" above).
    [PR #734]

Bug Fixes

  1. getImportedMembership. Fixed an infinite recursion caused by a circular recursive import when calling getImportedMembership.
    [PR #729]
  2. Inherited connections (PlantUML). Corrected the rendering of nested inherited connections with SHOWINHERITED style.
    [PR #730]
  3. getLocale. Fixed the unescaping of the locale of a comment.
    [PR #735]

2025-12 - SysML v2 Pilot Implementation

12 Jan 21:52

Choose a tag to compare

This is an incremental update to the 2025-11 release. It corresponds to Eclipse plugin version 0.55.0.

Language Features

  1. Library function evaluation. The following additional library functions are now implemented for non-model-level evaluation:

    • All SequnceFunctions
    • All CollectionFunctions
    • All ControlFunctions
    • DataFunctions::max and min

    In addition, model-level evaluable equality operators (== and !=) now work on Collections.
    [PR #727]

Model Libraries

None.

Backward Incompatibilities

None.

Jupyter

None.

Visualization (PlantUML)

None.

Technical Updates

  1. BNF Extractor Tool. A BNF Extractor tool is now available in the directory tool-support/bnf-grammar. This tool extracts the normative BNF for the KerML textual notation and SysML textual and graphical notations from the corresponding specification documents. It then generates consolidated grammar files in text or HTML format. For details, see the README.adoc file in the bnf-grammar directory.
    [PR #720]

Bug Fixes

  1. getEnumeratedValue and getVariant. Fixed the implementation of the EnumerationDefinition operations getEnumeratedValue and getVariant.
    [PR #723]
  2. Actors and stakeholders. Fixed the implicit redefinition of actor and stakeholder parameters.
    [PR #724]
  3. objects and subobjects. Corrected the implicit specialization of Objects::objects and Objects::Object::subobjects in certain cases for port usages and occurrence usages.
    [PR #725]

2025-11 - SysML v2 Pilot Implementation

03 Dec 23:54
74f26fa

Choose a tag to compare

This is an incremental update to the 2025-10 release. It corresponds to Eclipse plugin version 0.54.0.

Language Features

  1. Control function evaluation. Invocations of the functions ControlFunctions::collect and ControlFunctions::select can now be evaluated, which also allows the evaluation of collect expressions (seq.{...}) and select expressions (seq.?{...}). Per the specification, these functions are also model-level evaluable, but, unfortunately, a problem with the current specification of the model-level evaluablity of body expressions (see KERML11-178) prevents them from be used in useful cases in model-level expressions.
    [PR #718]

Model Libraries

None.

Backward Incompatibilities

  1. Name resolution. Previously, in certain cases a qualified name used as a redefinition target resolved inconsistently in the Eclipse Xtext editor and Jupyter. For example, in the model below, in Eclipse, x::y initially resolved to B::x::y in the outline tree view, but was re-resolved to A::x::y before validation. In Jupyter, it always resolved to B::x::y, which resulted in a validation error, due to B::x::y redefining itself.

    item def A {
        item x { 
            attribute y;
        }
    }
    
    item def B :> A {
        item x :>> x {
    	    attribute :>> x::y;
        }
    }
    

    The name resolution algorithm has now been updated so that x::y always resolves to A::x::y, in both Eclipse and Jupyter, with no validation error.
    [PR #717]

  2. Model-level evaluable functions. The following functions had previously been implemented as model-level evaluable, but they are not specified as model-level evaluable in the specification. Conformant with the specification, they are now longer model-level evaluable, though they can still be used and evaluated in non-model-level evaluable expressions.

    • NumericalFunctions::prod
    • NumericalFunctions::sum
    • SequenceFunctions::excludes
    • SequenceFunctions::includes
    • SequenceFunctions::isEmpty
    • SequenceFunctions::notEmpty
    • SequenceFunctions::size
    • StringFunctions::Length
    • StringFunctions::Substring

    [PR #718]

Jupyter

None.

Visualization (PlantUML)

None.

Technical Updates

  1. Library KPARs. The Maven build has been updated so that the each of the libraries under sysml.library is packaged into a KerML Package Archive (KPAR) file, using a Maven plugin for the Sysand librarian tool. The generated KPAR files are place in the sysml.library/output directory (not committed to the repository). On a release build, the KPAR files are automatically attached as artifacts to the GitHub release.
    [PR #713]

Bug Fixes

  1. getDirectedUsage. Fixed the implementation of Definition::getDirectedUsage.
    [PR #712]
  2. Item usages. Removed the incorrect validation requiring item usages to be typed by only item definitions.
    [PR #715]
  3. Constant end features. Corrected the KerML grammar to allow const on end features.
    [PR #716]
  4. Name resolution. Corrected inconsistency in the resolution of qualified names used as redefinition targets.
    [PR #717]

2025-10 - SysML v2 Pilot Implementation

06 Nov 19:53
f99ad61

Choose a tag to compare

This is an incremental update to the 2025-09.1 release. It corresponds to Eclipse plugin version 0.53.0.

Language Features

Bug fixes.

Model Libraries

None.

Backward Incompatibilities

  1. Usage typing. KerML allows a feature to by typed by any other kind of type, including another feature. However, in SysML, a usage can only be typed by a definition (or a KerML classifier). Previously, the validation for this was not properly implemented for reference usages and usages with a user-defined keyword but no regular kind keyword. This has now been corrected, but, as a result, some models that previously validated may now produce errors.

    For example, the following model will now produce the indicated error, where there was no error before:

    attribute def A;
    attribute a;
    ref x : a, A; // ERROR: A usage must be typed by definitions.
    

    [PR #707]

  2. Protected name visibility. Members of a type that are declared protected are supposed to be visible in specializations of the type but not otherwise outside the type's namespace. Previously, this was implemented correctly for qualified names, but a protected member could still be accessed using a feature chain. This has now been corrected, but, as a result, some models that previously parsed may not produce errors.

    For example, in the following model, the name b previously resolved in the feature chain p.b, but it will now produce a name resolution error:

    part p {
        public attribute a;
        protected attribute b;
        private attribute c;
    }
    
    alias a1 for p::a; // No error
    alias b1 for p::b; // Name resolution error
    alias c1 for p::c; // Name resolution error
    
    attribute a2 redefines p.a; // No error
    attribute b2 redefines p.b; // Name resolution error (previously no error)
    attribute b3 redefines p.c; // Name resolution error
    

    [PR #709]

Jupyter

  1. JupyterLab 4.x. The Jupyter deployment has been updated for JupyterLab 4.x, the latest major revision available. Previous versions of JupyterLab and Jupyter Classic Notebook are no longer supported. (The Jupyter kernel for SysML v2 should still run with older versions, but keyword highlighting in the browser will not work.)
    [PR #696]

Visualization (PlantUML)

Bug fix.

Technical Updates

None.

Bug Fixes

  1. Usage typing. Corrected the validation disallowing a usage to be typed by another usage in SysML.
    [PR #707]
  2. Default multiplicities. Fixed the adding of a default multiplicity to a usage with a nested alias declaraion.
    [PR #708]
  3. Protected name visibility. Fixed the incorrect visibility of protected names used in feature chains.
    [PR #709]
  4. Transition visualization (PlantUML). Fixed a possible null pointer exception when a state model is loaded from the repository.
    [PR #710]

2025-09.1 - SysML v2 Pilot Implementation

20 Oct 18:32

Choose a tag to compare

This release is the same as the 2025-09 release, except for one additional bug fix (to correct a bug introduced in the 2025-09 release). It corresponds to Eclipse plugin version 0.52.1.

The release notes for 2025-09 are repeated below for convenience, along with the additional bug fix at the end.

Language Features

Bug fixes.

Model Libraries

None.

Backward Incompatibilities

  1. Name Resolution. Name resolution has been corrected for certain cases of redefinition. For example, consider the following model:
    part def A {
        ref f;
    }
    
    part def B specializes A {
        ref redefines f {
              ref g;
        }
    }
    
    part def C specializes A, B {
        ref subsets f {
              ref redefines g; // ERROR: Couldn't resolve reference to Feature 'g'.
        }
    }
    
    Previously, this model generated the indicated error, because the name resolution algorithm traversed specializations in order, stopping if it found a resolution for the name. But, if the order of the specialized types was changed from A, B to B, A, then the error would go away. Now the redefinition for g resolves correctly regardless of the order of the specialization of A and B.
    [PR #686]

Jupyter

None.

Visualization (PlantUML)

Bug fix.

Technical Updates

None.

Bug Fixes

  1. RootPackageTest. Corrected the KerML Xpect RootPackageTest so it is properly included in the test suite.
    [PR #685]
  2. Name resolution. Fixed an anomaly in the resolution of the name of a redefined feature due to certain forms of diamond specialization.
    [PR #686]
  3. Transition trigger visualization (PlantUML). Corrected the visualization of triggers on state transitions.
    [PR #689]
  4. Individual definitions. Fixed the implicit specialization of individual definitions declared as anything more specific than an occurrence definition.
    [PR #693]
  5. Semantic metadata. Fixed computation of the base type of an application of semantic metadata.
    [PR #701]
  6. Feature typing. Fixed a bug in the computation of feature types resulting from changes in PR #701.
    [PR #705]

2025-09 - SysML v2 Pilot Implementation

15 Oct 15:00

Choose a tag to compare

This is an incremental update to the 2025-07 release. It corresponds to Eclipse plugin version 0.52.0.

Language Features

Bug fixes.

Model Libraries

None.

Backward Incompatibilities

  1. Name Resolution. Name resolution has been corrected for certain cases of redefinition. For example, consider the following model:
    part def A {
        ref f;
    }
    
    part def B specializes A {
        ref redefines f {
              ref g;
        }
    }
    
    part def C specializes A, B {
        ref subsets f {
              ref redefines g; // ERROR: Couldn't resolve reference to Feature 'g'.
        }
    }
    
    Previously, this model generated the indicated error, because the name resolution algorithm traversed specializations in order, stopping if it found a resolution for the name. But, if the order of the specialized types was changed from A, B to B, A, then the error would go away. Now the redefinition for g resolves correctly regardless of the order of the specialization of A and B.
    [PR #686]

Jupyter

None.

Visualization (PlantUML)

Bug fix.

Technical Updates

None.

Bug Fixes

  1. RootPackageTest. Corrected the KerML Xpect RootPackageTest so it is properly included in the test suite.
    [PR #685]
  2. Name resolution. Fixed an anomaly in the resolution of the name of a redefined feature due to certain forms of diamond specialization.
    [PR #686]
  3. Transition trigger visualization (PlantUML). Corrected the visualization of triggers on state transitions.
    [PR #689]
  4. Individual definitions. Fixed the implicit specialization of individual definitions declared as anything more specific than an occurrence definition.
    [PR #693]
  5. Semantic metadata. Fixed computation of the base type of an application of semantic metadata.
    [PR #701]

2025-07 - SysML v2 Pilot Implementation

06 Aug 20:16
af9c208

Choose a tag to compare

This is an incremental update to the 2025-06 release. It corresponds to Eclipse plugin version 0.51.0.

Language Features

Bug fixes.

Model Libraries

Kernel Semantic Library

  1. Name collisions. The following models were updated to avoid name collisions due to diamond inheritance:

    • FeatureReferencingPerformances
    • Objects
    • Observation
    • Occurrences
    • Transfers

    [PR #679]

  2. Transfers. The features transfers and messageTransfers are now steps instead of flows. As a result, these features no longer have spurious implied subsettings of flowTransfers.
    [PR #682]

  3. Transition performances. In the TransitionPerformance model, in TransitionPerformance::accept, the nested redefinition of receive was removed and replaced with a binding connector. This allows the receive parameter of the accepter in a SysML TransitionUsage to be redefined and bound.
    [PR #683]

Kernel Function Library

  1. Name collisions. The VectorFunctions model was updated to avoid name collisions due to diamond inheritance.
    [PR #679]

Systems Library

  1. Trade studies. The TradeStudies model for TradeStudyObjectives has been updated to avoid validation errors when the objective of a TradeStudy is redefined as intended, to give it a concrete type such as MinimizeObjective or MaximizeObjective.
    [PR #676]

  2. Name collisions. The following models were updated to avoid name collisions due to diamond inheritance:

    • Actions
    • Connections
    • Flows
    • Items
    • Metadata
    • Parts
    • Ports
    • SysML
    • Views

    [PR #679]

  3. Flows. The flow definition Message and the flow usage messages no longer have owned end features. As a result, messages no longer has a spurious implied subsetting of flows.
    [PR #682]

  4. Assignments. In the Actions model, in Action::assignments, a nested owned parameter target was added. This ensures that the parameters redefined by an ActionUsage are target and replacementValues, in that order.
    [PR #683]

Geometry Domain Library

  1. Name collisions. The following models were updated to avoid name collisions due to diamond inheritance:

    • ShapeItems
    • SpatialItems

    [PR #679]

Quantities and Units Domain Library

  1. Name collisions. The following models were updated to avoid name collisions due to diamond inheritance:
    • SI
    • USCustomaryUnits

Requirement Derivation Domain Library

  1. Name collisions. The DerivationConnections model was updated to avoid name collisions due to diamond inheritance.

Backward Incompatibilities

  1. Subjects and objectives. Previously, if a requirement definition/usage or case definition/usage was parsed without an owned subject and/or objective, then a subject or objective element was physically inserted into the parse tree by the relevant adapter. Starting with this release, these insertions are no longer being done, which is more conformant with the SysML specification. However, the previous insertion of subjects meant that the validation checks for the subject being the first parameter were satisfied even if the subject was not declared explicitly and there were additional parameters. This is no longer necessarily the case.

    For example, the following requirement definition would previously have not produced an error, but now results in a "Subject must be first parameter" validation error.

    requirement def R {
        // Error: Subject must be first parameter.
        in x;
    }
    

    In particular, stakeholders and actors are kinds of parameters, so a subject must always be explicitly declared if stakeholders and/or actors are also declared.

    concern c {
        subject; // Required to avoid error.
        stakeholder s;
    }
    use case uc {
        subject; // Required to avoid error.
        actor a;
    }
    

    Note that this is the case even when specializing a supertype with an inheritable subject:

    use case uc1 {
        subject subj;
    }
    use case uc2 :> uc1 {
        subject subj; // Implied redefinition of uc1::subj.
        actor a;
    }
    use case uc3 :> uc, uc1 {
        subject; // Required to avoid "Only one subject is allowed" error.
    }
    

    [PR #677]

  2. Validation. Existing models may now get distinguishibility warnings that were not previously generated. For example, the following model previously did not cause a warning, but now it does as indicated.

    part def Vehicle {
        part wheels [2..*] : Wheel;
    }
    part def Car :> Vehicle {
        part :>> wheels [3..4];
    }
    part def Truck :> Vehicle {
        part :>> wheels [4..18];
    }
    part def SUV :> Car, Truck; // Warning: Duplicate of inherited member name 'wheel'
    

    The warning can be removed by redefining both Vehicle::wheels and Truck::wheels within SUV:

    part def SUV :> Car, Truck {
        part :>> Car::wheels, Truck::wheels;
    }
    

    [PR #679]

  3. Spatial items. The item definition SpatialItems::SpatialItem from the Geometry Model Library redefines the feature localClock so that it is typed by Time::Clock from the Quantities and Units Domain Library. However, localClock is also redefined in Occurrences::Occurrence::suboccurrences, which is indirectly specialized by Items::Item::subitems. As a result, declaring a subitem that is a SpatialItem within another SpatialItem now results in a warning.

    item def SpacialItemWithSubitem :> SpatialItem {
        // Warning: Duplicate of inherited name 'localClock' from SpatialItem, suboccurrences
        item aSubItem : SpatialItem; // implied subsetting of subitems
    }
    

    In order to avoid having to further redefine localClock within every such subitem declaration, additional features have been added to SpatialItem:

    • subSpatialItems – Subset this for subitems that are SpatialItems.
    • subSpatialParts – Subset this for subparts that are SpatialItems.
    • componentParts – Subset this for component items that are parts (instead of subsetting componentItems).
    item def SpacialItemWithSubSpacialItems :> SpatialItem {
        item aSubSpaitalItem :> subSpatialItem;
        part aSubSpaitalPart :> subSpatialPart;
    }
    item def SpacitalItemWithComponents :> SpatialItem {
        item aComponentItem :> componentItems; // Per specification
        part aComponentPart :> componentParts;
    }
    

    [PR #679]

  4. Messages. The end features source and target of Mssages::Message and Messages::messages are now inherited and are no longer occurrence usages. This means that they cannot be used as the referenced occurrences in an event occurrence usage. However, this is appropriate, because the referenced events for a message should instead be sourceEvent and targetEvent which are still occurrence usages.
    [PR #682]

  5. Binary connectors/connections. Correction of the validateConnectorBinarySpecialization check may result both in cases in which a previously valid connector/connection declaration becomes invalid or a previously invalid declaration becomes valid.
    [PR #682]

Issue Resolutions

The KerML 1.1 and SysML 2.1 RTFs have not yet approved any issue resolutions. However, this release includes proactive resolutions to the following issues to correct library models, largely to avoid validation errors that have now been identified due to corrections in validation checking.

KerML

  • KERML11-76 Library models have inherited member name collisions
  • KERML11-78 Transfers::transfers and Transfers::flowTransfers subset each other
  • KERML11-79 TransitionPerformance::accept is incorrect

SysML

  • SYSML21-318 Diamond inheritance problem with TradeStudy
  • SYSML21-322 Library models have inherited member name collisions
  • SYSML21-324 Flows::messages and Flows::flows subset each other
  • SYSML21-327 AssignmentAction parameters get reordered

Jupyter

None.

Visualization (PlantUML)

None.

Technical Updates

None.

Bug Fixes

  1. Conditional succession. Fixed the setting of the source of a shorthand conditional succession.
    [PR #678]
  2. isDistinguishableFrom. Corrected the implementation of the Membership::isDistinguishableFrom operation.
    [PR #680]
  3. Implied binding connectors. Corrected the insertion of implied binding connectors during XMI or JSON export.
    [PR #681]
  4. Binary connector validation. Corrected the implementation of the check of the constraint validateConnectorBinarySpecialization to properly handle redefined features when counting connector ends.
    [PR #682]
  5. Parameters and end features. Fixed the computation of the parameters and end features of a type, particularly as used in determining the implied redefinitions of these features.
    [PR #683]

2025-06 - SysML v2 Pilot Implementation

11 Jul 20:36
04096d6

Choose a tag to compare

This is an incremental update to the 2025-04 release. It corresponds to Eclipse plugin version 0.50.0.

Language Features

Bug fixes.

Model Libraries

Bug fixes.

Backward Incompatibilities

None.

Issue Resolutions

None.

Jupyter

None.

Visualization (PlantUML)

Bug fix.

Technical Updates

  1. Continuous integration builds. Removed configuration for Travis CI builds.
    [PR #653]
  2. .gitignore files. Updated .gitignore files in xtend-gen folders.
    [PR #654]
  3. Eclipse 2025-03. Updated the Eclipse development platform to Version 2025-03 and Java 21.
    [PR #655]
  4. Transformaton code. Added annotations to the transformation code in the adapter classes to show where the semantic constraints from the KerML and SysML v2 specifications are satisfied.
    [PR #665]
  5. Repository save utility. Updated the default project name used by the repository save utility if no name is explicitly given.
    [PR #670]

Bug Fixes

  1. Metamodel files. Corrected the .uml and .ecore metamodel files to be consistent with the normative Beta 4 abstract syntax.
    [PR #657]
  2. isCompatibleWith operation. Corrected a non-conformance of the Pilot Implementation with the KerML Specification on the computation of the Feature::isCompatibleWith operation.
    [PR #658]
  3. canAccess operation. Fixed a bug in the implementation of FeatureUtil.canAccess for checking accessibility when the subsetting feature has no featuring types.
    [PR #659]
  4. Library models. Made small corrections to the KerML Semantic Library model Occurrences and the SysML Analysis Domain Library model TradeStudies.
    [PR #660]
  5. XMI serialization. Fixed the serialization of isConstant for end usages and isAbstract for variation definitions and usages.
    [PR #661]
  6. Visualization. Fixed a bug that crashed the visualization of a case with a nested action.
    [PR #667]
  7. Semantic transformations. Fixed various semantic transformation bugs in the adapter classes.
    [PR #668] [PR #669]
  8. Substates. Fixed a bug that caused States::State::substates to inherit two this features (resulting in any state usage that is a substate also inheriting them).
    [PR #671]