Conversation
himi
approved these changes
Nov 22, 2023
Member
himi
left a comment
There was a problem hiding this comment.
I checked it was successfully built and could parse requirements with ReferenceSubsettings, and also confirmed CalculationBody could be specified in require and assume blocks.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR implements the resolution to the following issue, as approve in SysML v2 FTF ballot #8:
SYSML2-467 RequirementConstraintUsage should not have a RequirementBody
Specifically:
RequirementConstraintUsageallowed arequireorassumedeclaration to have aRequirementBody, even though the production produced aConstraintUsage, for which requirement-specific nested declarations are not actually allowed. This has now been changed to aCalculationBody, which is what is used in other productions forConstraintUsages.ConstraintUsageAdapterno longer physically inserts subject features into requirements constraints (which was not consistent with the specification).SysMLValidator::checkSubjectMembershipno longer makes an exception tovalidateSubjectMembershipOwningTypefor requirement constraints.This means that it is now syntax error to have
subject,requireandassumedeclarations in the bodies of requirement constraints in all cases. (In some cases,requireandassumedeclarations were syntactically allowed previously, but still violated thevalidateRequirementConstraintMembershipOwningTypeconstraint.)