-
Key: SYSML16-341
-
Status: closed
-
Source: Airbus Group ( Mr. Yves Bernard)
-
Summary:
InvocationOnNestedPortAction constraint #2 states:
The port at the first position in the onNestedPort list shall be owned (directly or via inheritance) by a block that types the target pin of the invocation action, or one of the block’s generalizations
However the InvocationAction metaclass has no "target" pin, only some of its subclasses have.
-
Reported: SysML 1.5 — Thu, 7 Sep 2017 07:14 GMT
-
Disposition: Duplicate or Merged — SysML 1.6
-
Disposition Summary:
Merged with
SYSML16-274To be fixed as suggested by
SYSML16-311.
The principle of the resolution will be to write the OCL code so that each possible case is considered:let target: UML::InputPin = if self.base_InvocationAction.oclIsKindOf(UML::CallOperationAction) then self.base_InvocationAction.oclAsType(UML::CallOperationAction).target else if self.base_InvocationAction.oclIsKindOf(UML::SendSignalAction) then self.base_InvocationAction.oclAsType(UML::SendSignalAction).target else if self.base_InvocationAction.oclIsKindOf(UML::SendObjectAction) then self.base_InvocationAction.oclAsType(UML::SendObjectAction).target else invalid endif endif endif in not target.oclIsUndefined() and ( let target_type: UML::Class = Block.allInstances()->any(b | b.base_Class = target.type).base_Class in not target_type.oclIsUndefined() and target_type.allFeatures()->includes(self.onNestedPort->first()))
-
Updated: Mon, 1 Apr 2019 18:17 GMT
SYSML16 — Constraint#2 of the InvocationOnNestedPortAction stereotype is invalid
- Key: SYSML16-341
- OMG Task Force: SysML 1.6 RTF