MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Extending variability for OCL interpretation
MODELS'10 Proceedings of the 13th international conference on Model driven engineering languages and systems: Part I
Constraint support in MDA tools: a survey
ECMDA-FA'06 Proceedings of the Second European conference on Model Driven Architecture: foundations and Applications
Hi-index | 0.00 |
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.