Skip to content

Comments

ST6RI-857/858/860/861 Semantic transformation bugs#668

Merged
seidewitz merged 4 commits intoST6RI-843from
ST6RI-857/858/860/861
Jul 4, 2025
Merged

ST6RI-857/858/860/861 Semantic transformation bugs#668
seidewitz merged 4 commits intoST6RI-843from
ST6RI-857/858/860/861

Conversation

@seidewitz
Copy link
Member

@seidewitz seidewitz commented Jul 4, 2025

This PR corrects several bugs in the implementation of transformation code satisfying semantic constraints from the KerML and SysML specifications

ST6RI-857 Cross feature implicit subsetting is incorrect

This bug resulted in owned cross features subsetting Base::things when the implied typing by their owning end feature's type meant they should subset Base::dataValues, Occurrence::occurrences or Object::objects. It was fixed by moving the call to addOwnedCrossFeatureSpecialization in FeatureAdapter.addDefaultGeneralType to before the call super.addDefaultGeneralType. In this way, the implied owned typing for a cross feature is now added before the determination of the default subsetting, which is based on owned typing.

ST6RI-858 Incorrect implicit specialization of feature chain invocation result

This bug resulted in the result parameter of an invocation expression not properly redefining the result parameter of its instantiatedType if that type was a feature chain and the feature target of the chain did not have an owned result parameter. It was fixed by replacing the call to getSupertypesOf with getGeneralTypesOf in FeatureUtil.getResultParameterOf.

ST6RI-860 ConnectionUsages, ViewUsages and RenderingUsages should subset subparts

This bug was that composite ConnectionUsages, ViewUsages and RenderingUsages that were features of ItemDefinitions or ItemUsages were not implicitly subsetting Item::subparts. It was fixed by updating the relevant adapter classes to override addDefaultGeneralTypes to handle being a subpart.

ST6RI-861 TransitionUsage payload parameter subsetting is incorrect

This bug was that the payload parameter of a TransitionUsage was implicitly subsetting directly the payload parameter of the triggerAction of the TransitionUsage, rather than subsetting a feature chain of the triggerAction and its payload parameter. This was corrected in the ReferenceUsageAdapter.addDefaultGeneralType method.

@seidewitz seidewitz added this to the 2025-06 milestone Jul 4, 2025
@seidewitz seidewitz self-assigned this Jul 4, 2025
@seidewitz seidewitz added the bug Something isn't working label Jul 4, 2025
@seidewitz seidewitz changed the base branch from master to ST6RI-843 July 4, 2025 03:50
@seidewitz seidewitz merged commit eb441e8 into ST6RI-843 Jul 4, 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