Systems-Modeling / SysML-v2-Pilot-Implementation

Proof-of-concept pilot implementation of the SysML v2 textual notation and visualization
GNU Lesser General Public License v3.0
114 stars 23 forks source link

ST6RI-727 Implicit redefinitions should be added even if there are owned redefinitions #525

Closed seidewitz closed 5 months ago

seidewitz commented 5 months ago
  1. Corrects FeatureAdapter::isComputeRedefinitions so that implicit redefinitions are added even if a Feature already has ownedRedefinitions, consistent with the rules for implied redefinitions per the specifications.
  2. Removes the special handling of the redefinition of subject parameters, in which a subject will redefine the subject of a supertype, regardless of its position in the list of parameters. Instead, subject parameter redefinition is handled by the normal rule for implied redefinitions of parameters in order, per the specification. (Note that, in a valid model, a subject parameter must always be the first parameter, so, in this case, an owned subject parameter will still always redefine any subject parameters of superypes.)
  3. Corrects the TradeStudies::TradeStudy model per the resolution to the issue below (because otherwise the above changes result in validation errors being flagged for the model).
seidewitz commented 5 months ago

@himi I don't think this one will affect visualization. However, let me know if you would like to review it.

himi commented 5 months ago

I think so. The visualizer currently uses owned redefinitions only. I can check it for sure with some tricky examples. But if you'd like to complete it quickly, please do so without my review.

seidewitz commented 5 months ago

@himi There will also be another PR soon resolving ST6RI-720 (Remove automatic insertion of explicit subject and objective features), which might actually have a bigger impact. Perhaps you could just review that change, which will be in addition to the changes from this PR.

himi commented 5 months ago

@seidewitz, thank you for letting me know about it. I'll do so. This PR itself looks quite reasonable because SysML/KerML parameters are positional as you previously said.

seidewitz commented 5 months ago

@himi FYI, it turns out I will not be creating a PR for ST6RI-720 after all. Implementation for this issue (which has been pushed to the ST6RI-720 branch) has identified additional considerations on the semantics of redefinition that will likely need to be addressed by the FTF(s).