Issue 15780: OCL 2.2 Unlimited and Infinity (ocl2-rtf) Source: Nomos Software (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Uncategorized Issue Severity: Summary: OCL supports a '*' value for UnlimitedNatural in order to accommodate the full range of UML multiplicities. UnlimitedNatural conforms to Integer and Real, so that any UnlimitedNatural conversion must perform a run-time check in order to convert '*' to invalid. This conversion cannot be replicated in the reverse direction. Suggest that '*' be aligned with the conventional IEEE math notion of infinity, so that * and -* are valid values for Integer and Real. UnlimitedNatural is then a simple restriction of Integer which is a simple restriction of Real. Resolution: Revised Text: Actions taken: October 25, 2010: received issue Discussion: End of Annotations:===== m: "Willink, Ed" To: "'issues@omg.org'" Subject: OCL 2.2 Unlimited and Infinity Date: Mon, 25 Oct 2010 13:42:00 +0100 X-Mailer: Internet Mail Service (5.5.2657.72) Hi OCL supports a '*' value for UnlimitedNatural in order to accommodate the full range of UML multiplicities. UnlimitedNatural conforms to Integer and Real, so that any UnlimitedNatural conversion must perform a run-time check in order to convert '*' to invalid. This conversion cannot be replicated in the reverse direction. Suggest that '*' be aligned with the conventional IEEE math notion of infinity, so that * and -* are valid values for Integer and Real. UnlimitedNatural is then a simple restriction of Integer which is a simple restriction of Real. Regards Ed Willink Please consider the environment before printing a hard copy of this e-mail. The information contained in this e-mail is confidential. It is intended only for the stated addressee(s) and access to it by any other person is unauthorised. If you are not an addressee, you must not disclose, copy, circulate or in any other way use or rely on the information contained in this e-mail. Such unauthorised use may be unlawful. If you have received this e-mail in error, please inform us immediately on +44 (0)118 986 8601 and delete it and all copies from your system. Thales Research and Technology (UK) Limited. A company registered in England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number: 774298 Thales UK Limited. A company registered in England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number: 868273 From: "Willink, Ed" To: ocl2-rtf@omg.org Subject: RE: issue 15780 -- Unlimited and Infinity Date: Tue, 9 Nov 2010 13:23:27 -0000 X-Mailer: Internet Mail Service (5.5.2657.72) Hi If * is allowed as an integer, then in 8.3.7 CollectionRange, there should be a well-formedness rule prohibiting an infinite collection such as "0..*" to ensure that OCL's guarantee of executability for collections is preserved. Regards Ed Willink -------------------------------------------------------------------------------- From: Juergen Boldt [mailto:juergen@omg.org] Sent: 25 October 2010 18:08 To: issues@omg.org; ocl2-rtf@omg.org Subject: issue 15780 -- OCL 2 RTF issue From: "Willink, Ed" To: "'issues@omg.org'" Subject: OCL 2.2 Unlimited and Infinity Date: Mon, 25 Oct 2010 13:42:00 +0100 X-Mailer: Internet Mail Service (5.5.2657.72) Hi OCL supports a '*' value for UnlimitedNatural in order to accommodate the full range of UML multiplicities. UnlimitedNatural conforms to Integer and Real, so that any UnlimitedNatural conversion must perform a run-time check in order to convert '*' to invalid. This conversion cannot be replicated in the reverse direction. Suggest that '*' be aligned with the conventional IEEE math notion of infinity, so that * and -* are valid values for Integer and Real. UnlimitedNatural is then a simple restriction of Integer which is a simple restriction of Real. Regards Ed Willink Juergen Boldt Director, Member Services Object Management Group 140 Kendrick St Building A Suite 300 Needham, MA 02494 USA tel: +1 781 444 0404 x 132 fax: +1 781 444 0320 email: juergen@omg.org www.omg.org Please consider the environment before printing a hard copy of this e-mail. The information contained in this e-mail is confidential. It is intended only for the stated addressee(s) and access to it by any other person is unauthorised. If you are not an addressee, you must not disclose, copy, circulate or in any other way use or rely on the information contained in this e-mail. Such unauthorised use may be unlawful. If you have received this e-mail in error, please inform us immediately on +44 (0)118 986 8601 and delete it and all copies from your system. Thales Research and Technology (UK) Limited. A company registered in England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number: 774298 Thales UK Limited. A company registered in England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number: 868273 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvsEANhUrU3Unw4R/2dsb2JhbAClKXfFMYVxBJIC Date: Tue, 19 Apr 2011 10:25:17 +0100 From: Ed Willink User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 To: "ocl2-rtf@omg.org" Subject: RE: Issue 15780: OCL 2.2 Unlimited and Infinity Hi As a further corrolary of avoiding the anomally that UnlimitedNatural conforms to Integer but that not all UnlimitedNaturals have an Integer representation: If '*' is treated at +infinity for Real and Integer as well as UnlimitedNatural, what use is UnlimitedNatural? UnlimitedNatural can be eliminated and replaced by a lower bound constraint on multiplicity lower bounds. Regards