Eclipse OCL is an implementation of the Object Constraint Language (OCL) OMG standard for EMF-based models.
Classic OCL Ecore/UML
The Classic core OCL component provides the following capabilities to support OCL integration:
- Defines APIs for parsing and evaluating OCL constraints and queries on Ecore or UML 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 accompanying examples provide:
- A Console for interactive evaluation of OCL expression on models.
- (Indigo) An Impact Analyzer to support analysis and optimised re-evaluation.
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.
Unified Pivot OCL
The Pivot OCL prototypes resolution of many oroblems in the OMG 2.4 specification.
- An Xtext editor for OCL expressions (used by Papyrus and the Console).
- An Xtext editor for OCL documents complemementing meta-models (Complete OCL).
- An Xtext editor for OCLinEcore - OCL embedded in Ecore.
- An Xtext editor for the OCL 'Standard' Library model.
- A UML-aligned Unified or Pivot OCL meta-model supporting templates and reflection.
- An OCL evaluator exploiting the extensible OCL library model.
The accompanying examples provide:
- An Xtext Console for interactive evaluation of OCL expression on models.
- Extensible direct OCL to Java code generation
- A Validity View for detailed Constraint/ModelElement validity visualization
- Extensible OCL debugger
This project is part of Ganymede, Galileo, Helios, Indigo, Juno, Kepler, Luna, Mars, Neon, Eclipse Oxygen, Eclipse Photon, Eclipse IDE 2018-09, Eclipse IDE 2018-12, Eclipse IDE 2019-03, Eclipse IDE 2019-06, Eclipse IDE 2019-09, Eclipse IDE 2019-12, Eclipse IDE 2020-03, Eclipse IDE 2020-06, Eclipse IDE 2020-09, Eclipse IDE 2020-12, Eclipse IDE 2021-03, Eclipse IDE 2021-06, Eclipse IDE 2021-09, Eclipse IDE 2021-12, Eclipse IDE 2022-03, Eclipse IDE 2022-06, Eclipse IDE 2022-09, Eclipse IDE 2022-12, Eclipse IDE 2023-03, Eclipse IDE 2023-06, Eclipse IDE 2023-09, Eclipse IDE 2023-12, Eclipse IDE 2024-03, Eclipse IDE 2024-06, Eclipse IDE 2024-09, Eclipse IDE 2024-12, Eclipse IDE 2025-03, Eclipse IDE 2025-06, Eclipse IDE 2025-09
Latest Releases
From 2026-09-15 to 2008-06-27
Licenses
The content of this open source project is received and distributed under the license(s) listed above. Some source code and binaries may be distributed under different terms. Specific license information is provided in file headers and in NOTICE files distributed with the project's binaries.
Active Member Companies
Member companies supporting this project over the last three months.
Contribution Activity
Commits on this project (last 12 months)