SysML 1.6 RTF Avatar
  1. OMG Issue

SYSML16 — The statement of InvocationOnNestedPortAction constraint#3 is not appropriate

  • Key: SYSML16-342
  • Status: closed  
  • Source: Airbus Group ( Mr. Yves Bernard)
  • Summary:

    The InvocationOnNestedPortAction constraint#3 is stated:

    The first constraint of ElementPropertyPath shall apply to onNestedPort

    Such a reference to another constraint that, in addition, requires substituting words in order to be contextualized is not appropriate. It shall be properly stated in a straightforward way.

  • Reported: SysML 1.5 — Thu, 7 Sep 2017 07:23 GMT
  • Disposition: Duplicate or Merged — SysML 1.6
  • Disposition Summary:

    Merged with SYSML16-274

    To be fixed as part of SYSML16-311 directly in the OCL statement:

    The SysML::ElementPropertyPath::Constraint#1 states:
    The property at each successive position of the propertyPath attribute, following the first position, shall be owned by the Block or ValueType that types the property at the immediately preceding position, or a generalization of the Block or ValueType.

    So the OCL code for SysML::InvocationOnNestedPortAction::Constraint#3 shall be:
    The port at each successive position of the onNestedPort attribute, following the first position, shall be owned by the Block that types the port at the immediately preceding position, or a generalization of that Block .

    self.onNestedPort->size() > 1 implies self.propertyPath->subSequence(2, self.onNestedPort->size())->forAll(p |
    let pp: UML::Property = self.onNestedPort->at(self.onNestedPort->indexOf(p)-1) in
    let owners: Set(UML::Classifier) = pp.type.oclAsType(UML::Classifier)->including(pp.type.oclAsType(UML::Classifier)) in
    owners->includes(p.owner))
    
  • Updated: Mon, 1 Apr 2019 18:17 GMT