Issue 18437: Clarify invalid propgation/conformance priority (ocl2-rtf) Source: Nomos Software (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Clarification Severity: Minor Summary: There is a contradiction between invalid conform to anything and invalid always propagates for e.g. Sequence{}->first().oclIsKindOf(Class) oclIsKindOf uses the invalid input to return true. Invalid propagation should dominate giving invalid. This requires OclInvalid::oclIsKindOf, oclIsTypeOf, oclType, oclAsType overloads to explicitly return invalid. Resolution: Revised Text: Actions taken: February 11, 2013: received issue Discussion: End of Annotations:===== m: webmaster@omg.org Date: 11 Feb 2013 08:58:11 -0500 To: Subject: Issue/Bug Report ******************************************************************************* Name: Edward Willink Employer: mailFrom: ed@willink.me.uk Terms_Agreement: I agree Specification: OCL Section: n/a FormalNumber: 12-01-01 Version: 2.3.1 Doc_Year: 2012 Doc_Month: January Doc_Day: 01 Page: n/a Title: Clarify invalid propgation/conformance priority Nature: Clarification Severity: Minor CODE: 3TMw8 B1: Report Issue Description: There is a contradiction between invalid conform to anything and invalid always propagates for e.g. Sequence{}->first().oclIsKindOf(Class) oclIsKindOf uses the invalid input to return true. Invalid propagation should dominate giving invalid. This requires OclInvalid::oclIsKindOf, oclIsTypeOf, oclType, oclAsType overloads to explicitly return invalid.