Issue 15270: Definition for symmetric difference is wrong (ocl2-rtf) Source: (, ) Nature: Clarification Severity: Minor Summary: symmetricDifference: is defined as (S1 u S2) - (S1 u S2), but this always yields the empty set. I believe the intended writing is (S1 u S2) - (S1 n S2). Resolution: Revised Text: Throughout Annex A change ? to whichever of. ? or n is used in Annex A of 03-10-14. Actions taken: June 1, 2010: received issue April 25, 2011: closed issue Discussion: Absolutely. This is another corruption resulting from the migration of the Latex Annex A of 03-10-14 (which is correct) to FrameMaker. Looking at Table A.4 suggests that all n have been converted to ?. The entire Annex must therefore be checked for every occurrence of ?. End of Annotations:===== m: webmaster@omg.org Date: 01 Jun 2010 10:35:19 -0400 To: Subject: Issue/Bug Report ******************************************************************************* Name: Gustav Munkby Company: mailFrom: grddev@gmail.com Notification: No Specification: Object Constraint Language Section: A.2.5.5 FormalNumber: Version: 2.2 RevisionDate: 02/01/2010 Page: 202 Title: Definition for symmetric difference is wrong Nature: Clarification Severity: Minor test: 3qw8 B1: Report Issue Description: symmetricDifference: is defined as (S1 u S2) - (S1 u S2), but this always yields the empty set. I believe the intended writing is (S1 u S2) - (S1 n S2). Subject: RE: Issue 15270 - Definition for symmetric difference is wrong Date: Mon, 11 Oct 2010 06:55:14 -0700 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Issue 15270 - Definition for symmetric difference is wrong Thread-Index: Actnv+hv1KEt8DJVTDy55EhpFbZLUgA8iYOQ From: "Pete Rivett" To: "Ed Willink" , X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id o9BDbKBQ001958 Note that Axel Uhl's proposed resolution to MOF2 Core issue 12800 was accepted. That should be reflected in this resolution. The essence of it as follows: Add a new Section, specifically Section 12.6 named "Predefined Tags" that reads as follows: This Section defines a predefined Tag whose name is "org.omg.emof.oppositeRoleName" which can be applied to instances of Property within instances of the EMOF model. Constraints context Tag inv: --The predefined Tag can only be applied to instances of Property whose "opposite" Property is empty name = "org.omg.emof.oppositeRoleName" implies element.oclIsKindOf(Property) and element.oclAsType(Property).opposite->isEmpty() Semantics If an instance of a Tag has "org.omg.emof.oppositeRoleName" as its "name", then its "value" specifies a role name that expressions can use to traverse in the opposite direction of the Property, such as OCL expressions and QVT expressions. If an expression uses a role name specified using a Tag with "name" "org.omg.emof.oppositeRoleName", and more than one Property has such a Tag with that role name, then it is up to the expression language to decide whether this is an error condition or represents a reverse navigation across all those Properties. An expression language should not choose to pick one such Property at random in case of ambiguity. .... It is beyond the scope of MOF Core to specify the concrete syntax that expressions use for traversal via the org.omg.emof.oppositeRoleName in languages such as OCL and QVT. Regards Pete -- Pete Rivett (pete.rivett@adaptive.com) CTO, Adaptive Inc 65 Enterprise, Aliso Viejo, CA 92656 cell: +1 949 338 3794 Follow me on Twitter @rivettp or http://twitter.com/rivettp -----Original Message----- From: Ed Willink [mailto:ed@willink.me.uk] Sent: Saturday, October 09, 2010 7:39 AM To: ocl2-rtf@omg.org Subject: Re: Issue 15270 - Definition for symmetric difference is wrong Hi Attached is a proposed resolution. Regards Ed Willink