Skip to content

ST6RI-874 Features subset each other in Transfers and Flows library models (KERML11-78, SYSML21-324) #682

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Aug 1, 2025

Conversation

seidewitz
Copy link
Member

@seidewitz seidewitz commented Jul 30, 2025

This PR proactively fixes the following issues, even though resolutions for them have not yet been approved by the KerML 1.1 RTF or SysML 2.1 RTF:

  • KERML11-78 Transfers::transfers and Transfers::flowTransfers subset each other
  • SYSML21-324 Flows::messages and Flows::flows subset each other

Model Libraries

Kernel Semantic Library

Transfers

  • Made the features transfers and messageTransfers steps instead of flows. As a result, these features no longer have implied subsettings of flowTransfers.

Systems Library

Flows

  • Removed the end features from the flow definition Message and the flow usage messages. As a result, messages no longer has an implied subsetting of flows.
  • Changed the keyword used in the declaration of flows and successionFlows from message to flow, since these flow usages still have owned end features and, therefore, are not message flows.

Validation

KerMLValidator

  • Corrected the implementation of the check of the constraint validateConnectorBinarySpecialization to properly handle redefined features when counting connector ends. Otherwise, it was incorrectly reporting a validation error on messages as modified above.

Backward Incompatibilities

  1. The end features source and target of Messages and 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.
  2. The correction to the validateConnectorBinarySpecialization check may result both in cases in which a previously valid model becomes invalid or a previously invalid model becomes valid.

@seidewitz seidewitz added this to the 2025-07 milestone Jul 30, 2025
@seidewitz seidewitz self-assigned this Jul 30, 2025
@seidewitz seidewitz added the bug Something isn't working label Jul 30, 2025
- Also corrected the training model Flow Definition Example.
- Updated the model library index.
@seidewitz seidewitz changed the title ST6RI-874 Flows::messages and Flows::flows subset each other Features subset each other in Transfers and Flows library models each other (KERML11-78, SYSML21-324) Jul 31, 2025
@seidewitz seidewitz changed the title Features subset each other in Transfers and Flows library models each other (KERML11-78, SYSML21-324) ST6RI-874 Features subset each other in Transfers and Flows library models each other (KERML11-78, SYSML21-324) Jul 31, 2025
@seidewitz seidewitz changed the title ST6RI-874 Features subset each other in Transfers and Flows library models each other (KERML11-78, SYSML21-324) ST6RI-874 Features subset each other in Transfers and Flows library models (KERML11-78, SYSML21-324) Jul 31, 2025
@seidewitz seidewitz merged commit 9d899db into master Aug 1, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants