Eiffel: the language
Executable UML: A Foundation for Model-Driven Architectures
Executable UML: A Foundation for Model-Driven Architectures
Modular architecture for a toolset supporting OCL
Science of Computer Programming - Special issue on unified modeling language (UML 2000)
A Meta-model Facility for a Family of UML Constraint Languages
Object Modeling with the OCL, The Rationale behind the Object Constraint Language
Modular Domain Specific Languages and Tools
ICSR '98 Proceedings of the 5th International Conference on Software Reuse
The Object Constraint Language: Getting Your Models Ready for MDA
The Object Constraint Language: Getting Your Models Ready for MDA
MDA Distilled
Transformation techniques for OCL constraints
Science of Computer Programming
USE: A UML-based specification environment for validating UML and OCL
Science of Computer Programming
ATL: A model transformation tool
Science of Computer Programming
Shortcomings of the Embedding of OCL into QVT ImperativeOCL
Models in Software Engineering
Ensuring UML Models Consistency Using the OCL Environment
Electronic Notes in Theoretical Computer Science (ENTCS)
HOL-OCL: a formal proof environment for UML/OCL
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Transformation-based structure model evolution
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
The epsilon object language (EOL)
ECMDA-FA'06 Proceedings of the Second European conference on Model Driven Architecture: foundations and Applications
On integrating structure and behavior modeling with OCL
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
On the use of an internal DSL for enriching EMF models
Proceedings of the 12th Workshop on OCL and Textual Modelling
Modeling and executing ConcurTaskTrees using a UML and SOIL-based metamodel
Proceedings of the 12th Workshop on OCL and Textual Modelling
Employing the object constraint language in model-based engineering
ECMFA'13 Proceedings of the 9th European conference on Modelling Foundations and Applications
Hi-index | 0.00 |
The Object Constraint Language (OCL) is a well-accepted ingredient in model-driven engineering and accompanying modeling languages like UML (Unified Modeling Language) or EMF (Eclipse Modeling Framework) which support object-oriented software development. Among various possibilities, OCL offers the formulation of state invariants and operation contracts in form of pre- and postconditions. With OCL, side effect free query operations can be implemented. However, for operations changing the system state an implementation cannot be given within OCL. In order to fill this gap, this paper proposes the language SOIL (Simple OCL-like Imperative Language). The expression sub-language of SOIL is identical to OCL. SOIL adds well-known, traditional imperative constructs. Thus by employing OCL and SOIL, it is possible to describe any operation in a declarative way and in an operational way on the modeling level without going into the details of a conventional programming language. In contrast to other similar approaches, the embedding of OCL into SOIL is done in a new, careful way so that elementary properties in OCL are preserved (for example, commutativity of logical conjunction). The paper discusses the major criteria of a conservative embedding of OCL into SOIL. SOIL has a sound formal semantics and is implemented in the UML and OCL tool USE (UML-based Specification Environment).