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

Difference between revisions of "OCL"

m (Articles)
Line 54: Line 54:
 
* [http://www.eclipse.org/modeling/mdt/ocl/docs/ocl_project_plan_1_2.html R1.2 Draft Plan]
 
* [http://www.eclipse.org/modeling/mdt/ocl/docs/ocl_project_plan_1_2.html R1.2 Draft Plan]
 
* [http://www.eclipse.org/modeling/mdt/ocl/docs/ocl_project_plan_1_1.html R1.1 Draft Plan]
 
* [http://www.eclipse.org/modeling/mdt/ocl/docs/ocl_project_plan_1_1.html R1.1 Draft Plan]
 +
* [[MDT/OCL/CVS2GIT|Post-Indigo Migration from CVS to GIT]]
  
 
* [[MDT/OCL/Debugger|Evaluator + Console ideas]]
 
* [[MDT/OCL/Debugger|Evaluator + Console ideas]]

Revision as of 15:47, 6 June 2011

The Eclipse OCL Project provides an implementation of the Object Constraint Language (OCL) OMG standard for EMF-based models.

The Core OCL component provides the following capabilities to support OCL integration:

  • Defines APIs for parsing and evaluating OCL constraints and queries on EMF models.
  • Defines Ecore and UML implementations of the OCL abstract syntax model, including support for serialization of parsed OCL expressions.
  • Provides a Visitor API for analyzing/transforming the AST model of OCL expressions.
  • Provides an extensibility API for clients to customize the parsing and evaluation environments used by the parser.

The Core OCL parser is generated by the LALR Parser Generator, a SourceForge project, licensed under the EPL v1.0. Download it from the LPG home page. This site includes the generator executable required to regenerate the parser code.

The additional OCL Examples and Editors component provides interactive support for OCL:

  • Provides an Interactive OCL Console to evaluate queries on models.
  • Provides an OCLinEcore Xtext editor for OCL embedded in an Ecore meta-model.
  • Provides a CompleteOCL editor for an OCL document complementing a meta-model.
  • Provides an EssentialOCL editor for individual OCL expressions.

The grammars for the Xtext-based editors auto-generate ANTLR parsers. In MDT/OCL 3.0, the ANTLR parsers are used solely within the editors. As from MDT/OCL 3.1 the Xtext grammars and parsers provide full evaluation and validation capabilities too. Since the Xtext grammars are associated with a re-engineering to support a model-defined standard library and full OMG compliance, the original LPG parser will be increasingly deprecated.

New and Noteworthy

You may want to check the New and Noteworthy features of the MDT/OCL releases.

Example Code

Articles

Other documentation

Releases and Development

Planning

API Changes

Retention Policy

MDT/OCL doesn't have any special project-specific API retention policy, so it follows the general Eclipse Project guidelines on API deprecation and removal

For ZIP file distributions which are downloadable from the project downloads web page:

  • Formal/Official Release distributions (including service releases) will be available for as long as the corresponding Eclipse platform is available.
  • Milestone and Release Candidate distributions which are stable versions preceding a release. After the M3 milestone, the three most recent distributions will be available.
  • Integration/Interim distributions are used between milestones. When a new milestone distribution appears, integration distributions are removed (the last one is always kept).
  • Nightly distribution are usually generated from nightly builds for internal purposes. There is no guarantee of any retention.

For the P2 repositories, the following policy applies:

N.B: This policy has been created the 24th, December, 2010. Last update: the 12th, January, 2011.

Architecture

The remainder of this section has links to pages of interest primarily to those developing the OCL component.

Development Environment

Release Engineering

Related Links

Back to the top