Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Modeling Project
  4. Model Development Tools...
  5. Eclipse OCL™ (Object Constraint Language)

Eclipse OCL™ (Object Constraint Language)

Primary tabs

  • Overview(active tab)
  • Downloads
  • Who's Involved
  • Developer Resources
  • Governance
  • Contact Us

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
Working Group: 
Eclipse IDE
This project is part of Eclipse IDE 2022-12, Eclipse IDE 2022-09, Eclipse IDE 2022-06, Eclipse IDE 2022-03, Eclipse IDE 2021-12, Eclipse IDE 2021-09, Eclipse IDE 2021-06, Eclipse IDE 2021-03, Eclipse IDE 2020-12, Eclipse IDE 2020-09, Eclipse IDE 2020-06, Eclipse IDE 2020-03, Eclipse IDE 2019-12, Eclipse IDE 2019-09, Eclipse IDE 2019-06, Eclipse IDE 2019-03, Eclipse IDE 2018-12, Eclipse IDE 2018-09, Eclipse Photon, Eclipse Oxygen, Neon, Mars, Luna, Kepler, Juno, Indigo, Helios, Galileo, and Ganymede.
Licenses: 
Eclipse Public License 2.0

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.

Latest Releases: 

From February 19th, 2020 to December 11th, 2022

NameDateReview
2022-12 (6.18.0)2022-12-11
2022-03 (6.17.1)2022-03-16
2021-12 (6.17.0)2021-12-08
2021-09 (6.16.0)2021-09-15
2021-06 (6.15.0)2021-06-16
2021-03 (6.14.0)2021-03-13
2020-12 (6.13.0)2020-12-16
2020-06 (6.12.0)2020-06-18
2020-03 (6.11.0)2020-03-18
2019-12a (6.10.1)2020-02-19
Active Member Companies: 
Member companies supporting this project over the last three months.
    Contribution Activity: 
    Commits on this project (last 12 months).

    Project Links

    • Getting Started
    • Documentation
    • Wiki
    Eclipse OCL™ (Object Constraint Language)

    Related Projects

    Project Hierarchy:

    • Eclipse Modeling Project
    • Model Development Tools (MDT)
    • Eclipse OCL™ (Object Constraint Language)

    Tags

    Technology Types
    • Language
    • Modeling
    • Tools
    Build Technologies
    • Jenkins
    • Maven
    • Tycho

    Eclipse Foundation

    • About Us
    • Contact Us
    • Sponsor
    • Members
    • Governance
    • Code of Conduct
    • Logo and Artwork
    • Board of Directors
    • Careers

    Legal

    • Privacy Policy
    • Terms of Use
    • Copyright Agent
    • Eclipse Public License
    • Legal Resources

    Useful Links

    • Report a Bug
    • Documentation
    • How to Contribute
    • Mailing Lists
    • Forums
    • Marketplace

    Other

    • IDE and Tools
    • Projects
    • Working Groups
    • Research@Eclipse
    • Report a Vulnerability
    • Service Status

    Copyright © Eclipse Foundation. All Rights Reserved.

    Back to the top