SysML 2.1b1 RTF Avatar
  1. OMG Issue

SYSML21 — Requirement constraint members should not be composite

  • Key: SYSML21-323
  • Status: open  
  • Source: Model Driven Solutions ( Mr. Ed Seidewitz)
  • Summary:

    In 8.3.21.7 RequirementConstraintMembership, the constraint validateRequirementConstraintMembershipIsComposite requires that the ownedConstraint of a RequirementConstraintMembership be composite. However, consider the following:

    part p {
        constraint c;
    }
    requirement r {
        subject :> p;
        require p.c;
    }
    

    In this case, the constraint c is composite in p, but the required constraint referencing p.c is composite in r. Further, checkConstraintUsageCheckedConstraintSpecialization requires that c subset Part::checkedConstraints, which indirectly specializes Object::ownedPerformances, and, therefore, so does the required constraint referencing p.c. But checkConstraintUsageRequirementConstraintSpecialization requires the required constraint to specialize RequirementCheck::constraints, which (as a composite constraint usage) indirectly specializes Performance::subperformances. Thus, the required constraint inherits from both ownedPerformances and subperformances, which is inconsistent (in particular, this is bound differently in the two features).

  • Reported: SysML 2.0b4 — Fri, 25 Jul 2025 18:47 GMT
  • Updated: Fri, 25 Jul 2025 18:47 GMT