Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
OCL/New and Noteworthy/Helios
Eclipse OCL New and Noteworthy items for the Helios release.
The Helios MDT-OCL release will be 3.0.0 rather than 2.0.0, since the Galileo plug-ins contained a mix of 1.3.0 and 2.0.0 versions. The 2.0.0 versions were mandated by a major version change in UML2.
Contents
OCL 2.0 API Changes
As a major release's change, MDT-OCL 3.0.0 is expected to break API. You can check all API changes under discussion here
Milestone 2
This milestone is pending.
invalid/Invalid/OclInvalid resolved 282882
The OMG OCL 2.0 specification is very unclear as to the realtive status of invalid objects and types. The tenative OCL 2.1 specification is little better.
The problem is easily understood by contrasting with the uncontentious null is the null object that is the sole instnace of the OclVoid which is the sole instance of the VoidType meta-class.
Section 8 tends to suggest that OclInvalid is the invalid object that is the sole instnace of Invalid which is the sole instance of the InvalidType meta-class. This is what MDT-OCL 1.3.0 realises.
Section 11 is much more consistent in preferring invalid is the invalid object that is the sole instance of OclInvalid which is the sole instance of the InvalidType meta-class. This is the new implementation for MDT-OCL 3.0.0.
Beware this change has a significant API incompatibility; the OCLStandardLibirary methods getOclInvalid and getInvalid have interchanged semantics.
Comments parsed 286724
Comments are now parsed as LPG Token Adjuncts enabling tools that want access to comments to find them.