Issue 15272: MOF 2.0 9.1 Confusing instance superclass statement (mof2core-rtf) Source: Nomos Software (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Uncategorized Issue Severity: Summary: The statement in clause 9.1 semantics "Class Element is the superclass of all model elements in MOF, and is the superclass of all instances of MOF model elements." is confusing since instances do not normally have superclasses. The statement could be interpreted to mean that every class always has Element as a superclass including user-defined classes. But this would then make it impossible to model lightweight application classes supporting solely the required functionality. Surely it is every M2 (and M3 and ...) class that has Element as a superclass? At M1 the superclasses are as modelled by the user. This is significant for OCL since OCL inserts at least OclAny as the top type at M1 in order to support some reflective behaviour. If Element really is an M1 superclass, then OCL should align. If Element is not an M1 superclass, OCL should provide its reflection in OclAny. Resolution: Revised Text: Actions taken: June 2, 2010: received issue Discussion: End of Annotations:===== m: "Willink, Ed" To: "'issues@omg.org'" Subject: MOF 2.0 9.1 Confusing instance superclass statement Date: Wed, 2 Jun 2010 11:03:13 +0100 X-Mailer: Internet Mail Service (5.5.2657.72) Hi The statement in clause 9.1 semantics "Class Element is the superclass of all model elements in MOF, and is the superclass of all instances of MOF model elements." is confusing since instances do not normally have superclasses. The statement could be interpreted to mean that every class always has Element as a superclass including user-defined classes. But this would then make it impossible to model lightweight application classes supporting solely the required functionality. Surely it is every M2 (and M3 and ...) class that has Element as a superclass? At M1 the superclasses are as modelled by the user. This is significant for OCL since OCL inserts at least OclAny as the top type at M1 in order to support some reflective behaviour. If Element really is an M1 superclass, then OCL should align. If Element is not an M1 superclass, OCL should provide its reflection in OclAny. 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