Issue 14222: OCL 2.1 Inconsistent implementation of Issue 6532 and contradictory resolution of Issues 7341 and 10437 (ocl2-rtf) Source: Model Driven Solutions (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Uncategorized Issue Severity: Summary: Issue 7341 resolved that a bad oclAsType in 7.4.6 should return invalid. Issue 10437 resolved that the revised text for bad oclAsType in 11.2.5 should return null. Issue 6532 resolved that oclAsType in 7.5.9. return a Classifier. The changed specification has OclType. Resolution: Issue 7341 is correct.; invalid should be returned by oclAsType when the type does not conform. Issue 10437 is wrong. The 10437 revised text also incorrectly uses t rather than T. Issue 6532 specified an 'instance of Classifier' return for oclAsType. The convenience document has not been updated. Revised Text: In Section 11.2.5 as revised by Issue 10437 replace Evaluates to self, where self is of the type identified by t. The type t may be any classifier defined in the UML model; if the actual type of self at evaluation time does not conform to t, then the oclAsType operation evaluates to null. by Evaluates to self, where self is of the type identified by T. The type T may be any classifier defined in the UML model; if the actual type of self at evaluation time does not conform to T, then the oclAsType operation evaluates to invalid. In Section 7.5.9 as revised by Issue 6532 replace oclAsType (t : Classifier) : instance of OclType by oclAsType (t : Classifier) : instance of Classifier Actions taken: August 26, 2009: received issue April 25, 2011: closed issue Discussion: End of Annotations:===== ronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAMNBlUrUnw6T/2dsb2JhbADYSYQaBQ Date: Wed, 26 Aug 2009 22:10:32 +0100 From: Ed Willink User-Agent: Thunderbird 2.0.0.22 (Windows/20090605) To: issues@omg.org Subject: OCL 2.1 Inconsistent implementation of Issue 6532 and contradictory resolution of Issues 7341 and 10437 X-Plusnet-Relay: ead9662b4a2be49163b712f45bc8f188 Hi Issue 7341 resolved that a bad oclAsType in 7.4.6 should return invalid. Issue 10437 resolved that the revised text for bad oclAsType in 11.2.5 should return null. Issue 6532 resolved that oclAsType in 7.5.9. return a Classifier. The changed specification has OclType. Regards Ed Willink X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAGZC/0pUXebi/2dsb2JhbADRd4Q8BA Date: Sun, 15 Nov 2009 07:54:28 +0000 From: Ed Willink User-Agent: Thunderbird 2.0.0.23 (Windows/20090812) To: "'ocl2-rtf@omg.org'" Subject: Re: Issue 14222 Inconsistent implementation of Issue 6532 and 7341 and contradictory resolution 10437 X-Plusnet-Relay: 3a02de15b00f874c2ad85d15e37e17b9 Hi Attached resolution corrects some inconsistencies. Regards Ed Willink 14222-InconsistentCasting.odt Disposition: Resolved OMG Issue No: 14222 Title:Inconsistent implementation of Issue 6532 and 7341 and contradictory resolution 10437. Source: THALES (Dr. Edward Willink, ed.willink@thalesgroup.com ed@willink.me.uk) Summary: Issue 7341 resolved that a bad oclAsType in 7.4.6 should return invalid. Issue 10437 resolved that the revised text for bad oclAsType in 11.2.5 should return null. Issue 6532 resolved that oclAsType in 7.5.9. return a Classifier. The changed specification has OclType. Discussion: Issue 7341 is correct.; invalid should be returned by oclAsType when the type does not conform. Issue 10437 is wrong. The 10437 revised text also incorrectly uses t rather than T. Issue 6532 specified an 'instance of Classifier' return for oclAsType. The convenience document has not been updated. Revised Text: In Section 11.2.5 as revised by Issue 10437 replace Evaluates to self, where self is of the type identified by t. The type t may be any classifier defined in the UML model; if the actual type of self at evaluation time does not conform to t, then the oclAsType operation evaluates to null. by Evaluates to self, where self is of the type identified by T. The type T may be any classifier defined in the UML model; if the actual type of self at evaluation time does not conform to T, then the oclAsType operation evaluates to invalid. In Section 7.5.9 as revised by Issue 6532 replace oclAsType (t : OclTypeClassifier) : instance of OclType by oclAsType (t : OclTypeClassifier) : instance of Classifier