Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2428516.2428519acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

An extensible OCL virtual machine and code generator

Published: 30 September 2012 Publication History

Abstract

The Object Constraint Language (OCL) is a specification language that is also executable and so a variety of OCL execution capabilities have evolved. Some are interpreted while others use a code generator for an implementation language such as Java. The mapping of much of OCL to Java is obvious and so many implementations pursue the obvious approach but then find that the approach can only support an OCL subset.
In this paper we revisit OCL evaluation. We first establish a simple uniform execution framework that applies to the whole of OCL. We call this an OCL Virtual Machine. We then identify how optimizations can bridge the gap between the uniform framework and how applicability predicates can determine when the optimization can be applied without needing to resort to a subset OCL. We finally identify how this uniform framework is extensible to OCL-based languages such as QVT.

References

[1]
Eclipse mdt/ocl project.
[2]
M. Bräuer and B. Demuth. Model-level integration of the OCL standard library using a pivot model with generics support. In Ocl4All: Modelling Systems with OCL, Models 2007, Nashville.
[3]
J. Cabot and E. Teniente. Constraint support in mda tools: a survey. In European Conference on Model-Driven Architecture 2006, LNCS 4066, pp. 256--267.
[4]
M. Egea, C. Dania, and M. Clavel. Mysql4ocl: A stored procedure-based mysql code generator for OCL. In OCL 2010: Workshop on OCL and Textual Modelling, Models 2010, Oslo.
[5]
F. Heidenreich, C. Wende, and B. Demuth. A framework for generating query language code from OCL invariants. In Ocl4All: Modelling Systems with OCL, Models 2007, Nashville.
[6]
B. Izsö, Z. Szatmári, and I. Ráth. High performance model queries and their novel applications. In Third Biannual Workshop on Eclipse Open Source Software and OMG Open Specifications, OMG quarterly meeting, Reston.
[7]
G. Mezei, T. Levendovszky, and H. Charaf. Optimization algorithms for OCL constraint evaluation in visual models. In Periodica Polytechnica 2007.
[8]
R. Moiseev, S. Hayashi, and M. Saeki. Generating assertion code from OCL: A transformational approach based on similarities of implementation languages. In Proceedings of the ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems (MODELS 2009), pages 650--664, Oct. 4--9 2009.
[9]
Object Management Group. MOF Model to Text Transformation Language, v1.0, OMG Document Number: formal/2008-01-16 edition.
[10]
Object Management Group. Object Constraint Language, version 2.0 draft, OMG Document Number: ptc/03-10-14 edition.
[11]
Object Management Group. Object Constraint Language, version 2.3.1, OMG Document Number: formal/2012-01-01 edition.
[12]
Object Management Group. OMG Unified Modeling Language (OMG UML), Superstructure, version 2.4.1, OMG Document Number: formal/2011-08-06 edition.
[13]
Object Management Group. Query/View/Transformation Specification, version 1.1, OMG Document Number: formal/2011-01-01, 2011 edition.
[14]
A. J. Shidqie. Compilation of OCL into Java for the Eclipse OCL Implementation. 2007.
[15]
C. Wilke. Java Code Generation for Dresden OCL2 for Eclipse, technische universitat dresden, 2009 edition.
[16]
C. Wilke and B. Demuth. OCL is still inconsistent! how to improve OCL constraints in the OCL 2.3 superstructure. In OCL 2010: Workshop on OCL and Textual Modelling, Models 2010, Oslo.
[17]
C. Wilke, M. Thiele, and C. Wende. Extending variability for OCL interpretation. In OCL 2010: Workshop on OCL and Textual Modelling, Models 2010, Oslo.
[18]
E. D. Willink. Aligning OCL with UML. In OCL 2011, International Workshop on OCL and Textual Modelling, TOOLS 2011, Zurich.
[19]
E. D. Willink. Modeling the OCL Standard Library. In OCL 2011, International Workshop on OCL and Textual Modelling, TOOLS 2011, Zurich.

Cited By

View all
  • (2024)Definitions and Computational Properties of OCL: A Systematic ReviewIEEE Access10.1109/ACCESS.2024.342886512(99704-99738)Online publication date: 2024
  • (2022)Challenges for code generated OCL executionProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3550356.3561537(872-881)Online publication date: 23-Oct-2022
  • (2018)Deterministic Lazy Mutable OCL CollectionsSoftware Technologies: Applications and Foundations10.1007/978-3-319-74730-9_30(340-355)Online publication date: 23-Jan-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
OCL '12: Proceedings of the 12th Workshop on OCL and Textual Modelling
September 2012
66 pages
ISBN:9781450317993
DOI:10.1145/2428516
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 September 2012

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

MODELS '12
Sponsor:

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Definitions and Computational Properties of OCL: A Systematic ReviewIEEE Access10.1109/ACCESS.2024.342886512(99704-99738)Online publication date: 2024
  • (2022)Challenges for code generated OCL executionProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3550356.3561537(872-881)Online publication date: 23-Oct-2022
  • (2018)Deterministic Lazy Mutable OCL CollectionsSoftware Technologies: Applications and Foundations10.1007/978-3-319-74730-9_30(340-355)Online publication date: 23-Jan-2018
  • (2018)Translating UML-RSDS OCL to ANSI CSoftware Technologies: Applications and Foundations10.1007/978-3-319-74730-9_28(317-330)Online publication date: 23-Jan-2018
  • (2017)Formal validation of domain-specific languages with derived features and well-formedness constraintsSoftware and Systems Modeling (SoSyM)10.1007/s10270-015-0485-x16:2(357-392)Online publication date: 1-May-2017
  • (2015)Viatra 3Proceedings of the 8th International Conference on Theory and Practice of Model Transformations - Volume 915210.1007/978-3-319-21155-8_8(101-110)Online publication date: 20-Jul-2015
  • (2013)Validation of Derived Features and Well-Formedness Constraints in DSLsProceedings of the 16th International Conference on Model-Driven Engineering Languages and Systems - Volume 810710.1007/978-3-642-41533-3_33(538-554)Online publication date: 29-Sep-2013
  • (2013)Yet Another Three QVT LanguagesTheory and Practice of Model Transformations10.1007/978-3-642-38883-5_8(58-59)Online publication date: 2013

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media