Issue 18255: Align OCL with out/inout UML Operation Parameters (ocl2-rtf) Source: Model Driven Solutions (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Clarification Severity: Minor Summary: OCL 9.4.5 gives no recommendation on how to handle the multiple out capability of UML. Suggest that the mapping of a UML operation with out or inout parameters to an OCL operation do the following: remove all 'out' parameters from the OCL parameter list so that the OCL parameter list contains only 'in' and 'inout' parameters with 'read-only' behavior change the return type to a Tuple whose part-names and types are determined by the conventional 'result' and the 'out' and 'inout' parameters. It is also desirable to relax the upper multiplicity bound to allow multiple bodyExpressions in Complete OCL, one bodyExpression per returning parameter. Resolution: Revised Text: Actions taken: November 9, 2012: received issue Discussion: End of Annotations:===== m: webmaster@omg.org Date: 09 Nov 2012 02:57:09 -0500 To: Subject: Issue/Bug Report ******************************************************************************* Name: Edward Willink Employer: mailFrom: ed@willink.me.uk Terms_Agreement: I agree Specification: OCL Section: 9.4.5 FormalNumber: 12-01-01 Version: 2.3.1 Doc_Year: 2012 Doc_Month: January Doc_Day: Day Page: 70 Title: Align OCL with out/inout UML Operation Parameters Nature: Clarification Severity: Minor CODE: 3TMw8 B1: Report Issue Description: OCL 9.4.5 gives no recommendation on how to handle the multiple out capability of UML. Suggest that the mapping of a UML operation with out or inout parameters to an OCL operation do the following: remove all 'out' parameters from the OCL parameter list so that the OCL parameter list contains only 'in' and 'inout' parameters with 'read-only' behavior change the return type to a Tuple whose part-names and types are determined by the conventional 'result' and the 'out' and 'inout' parameters. It is also desirable to relax the upper multiplicity bound to allow multiple bodyExpressions in Complete OCL, one bodyExpression per returning parameter.