Skip to main content

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.

Jump to: navigation, search

MDT/OCL 3.0.0 API Changes

< MDT
Revision as of 08:05, 10 October 2009 by Ed.willink.me.uk (Talk | contribs) (Bug fix changes)

OCL 2.1/2.2 changes

The OCL 2.2 language changes under discussion for MDT-OCL 3.0.0.

Some changes are marked as no change since MDT-OCL 1.x anticipated them.

Summary of probable OCL 2.2 change Related spec. sections Related bug/s Owner Adopting Milestone
Introduce static keyword and operations 7.4.4, 7.4.9, 12.12.6 285633 EDW M2
OrderedSet is not a subtype of Set. 7.4.5, 11.6.3 246962 --
Give message-expression operators precedence 7.4.7, 9.3.2 288040 EDW Issue pending
Give and/or/xor distinct precedence 7.4.7, 9.3.2 288040 EDW In HEAD for M3
Remove attr, oper keywords 7.4.9 184048 EDW Patch ready
Add body, init, derive keywords 7.4.9 -- No change
Add qualified navigation paths 7.5.3, 9.3 288575 184048 EDW Parser Patch Ready
exists iterator may have multiple iterators 7.6.4 288573 -- No change
Special types (ElementType, TypeType) don't exist anymore. Consequently, their instances (OclElement, OclType) do not exist either 8.2, 13.3, 11.3 190150, 259031 --
Introduce TemplateParameterType 8.2 --
Make CollectionType concrete 8.2 -- No change
OclAny is the type to which all other types conform (including Collections) 8.2 290680189657 191819 259031 Issue 12948 Issue 12795
Introduce FeatureCallexp.isPre (rename markedPre) 8.3.1, 9.3 --
Add CollectionKind::Collection 8.3.5 -- No change
Renames for *CallExpCS 9.3 184048 --
OclInvalid and invalid confusion (OclInvalid must be a type, invalid must be a literal) 11.2.4 281849 282882 288526 EDW M2
OclVoid doesn't conform to OclInvalid 11.2.3 Issue 14197
OclInvalid doesn't conform to OclVoid 11.2.4 Issue 14197
EMOF Reflection is not merged 13.2 --

OCL.uml meta-model changes

The OCL.uml meta-model changes under discussion for MDT-OCL 3.0.0.

Summary of change Related bug/s Owner Adopting Milestone
Add TemplateParameterType --
Rename FeatureCallExp.withAtPre as isPre --
Eliminate EMOF reflection --
Introduce OCL_2_0.uml more closely matching OCL 2.0 (excluding TemplateParameterType) --
Introduce OCL_2_2.uml more closely matching OCL 2.2 (excluding ElementType, TypeType) --


Parsing and Environment API changes

The parsing and environment API changes under discussion for MDT-OCL 3.0.0

Summary of change Related bug/s Owner Adopting Milestone
Migrate OCL grammars and parsing infrastructure to exploit LPG v2 242153 ASBH In progress (Branch)
Eliminate PrsStream, LexStream inheritance 242153 ASBH In progress (Branch)
Replace IsMarkedAtPreCS.isPre true/false usage by not-null/null IsMarkedAtPreCS 287993 EDW M2
Eliminate redundant ClassifierContextDeclCS.invOrDefCS daisy chain, retaining just constraints array 287993 EDW M2
Replace PropertyContextCS.initOrDerCS daisy chain by constraints array 287993 EDW M2
Change PathNameCS.sequenceOfNames to simpleNames retaining CST context 287993 EDW M2
Change StateExpCS.sequenceOfNames to simpleNames retaining CST context 287993 EDW M2
Eliminate CSTToken.startOffset/endOffset --
Use PathNameCS rather than List<String> in numerous internal calls --
Use the tryLookupXXX methods rather than lookupXXX methods wherever possible --
Introduce File/Root/Child environments from QVT Declarative --
Use a Child rather than dynamic environment for LetExp and IteratorExp parsing --
Rename closure as transitiveClosure valid for any Collection --

Standard library API changes

The standard library API changes under discussion for MDT-OCL 3.0.0

Summary of change Related bug/s Owner Adopting Milestone
OrderedSet is not a subtype of Set. Set operations defined for OrderedSet (union, intersection, including, etc.) must be dropped 246962 --
Implement oclType() 259031 EDW Patch Ready
Implement toString() --

Bug fix changes

The following MDT-OCL 3.0.0 bug fixes obviously change behaviour slightly.

Bug fix Related bug/s Owner Adopting Milestone
Give if atomic precedence 184048 EDW In HEAD for M3
Fix Integer Dot parsing 288601 EDW In HEAD for M3

Enhancements

The following enhancements are planned for MDT-OCL 3.0.0.

Enhancement Dependency Related bug/s Owner Adopting Milestone
Add OCL edit support 196973 EDW Patch Ready
Add an OCL editor 289759 289761 EDW
OCL Validation Delegate EMF 2.6 M2 191689 KH
OCL Derived Feature Setting Delegate EMF 2.6 M4 291361 KH
OCL Operation Invocation Delegate EMF 2.6 M4 291365 KH

Enhancements (unendorsed)

The following enhancements for MDT-OCL 3.0.0 have not yet been endorsed by the OCL committer team.

You are welcome to add your own contributions here provided you have raised the contribution via a Bugzilla.

Enhancement Dependency Related bug/s Contributor
Migrate EMF Query and Transaction OCL support 192506

Administrative Enhancements

The following enhancements affect mainly the development team.

Enhancement Related bug/s Owner Adopting Milestone
Reorganise features and plugins 289763
Share JUnit tests between Ecore and UML bindings 254919 EDW Progress Patch Ready

Back to the top