JTL: A Bidirectional and Change Propagating Transformation Language
In Model Driven Engineering bidirectional transformations are considered a core ingredient for managing both the consistency and synchronization of two or more related models. However, while non-bijectivity in bidirectional transformations is considered relevant, current languages still lack of a common understanding of its semantic implications hampering their applicability in practice.
In this paper, the Janus Transformation Language (JTL) is presented, a bidirectional model transformation language specifically designed to support non-bijective transformations and change propagation. In particular, the language propagates changes occurring in a model to one or more related models according to the specified transformation regardless of the transformation direction. Additionally, whenever manual modifications let a model be non reachable anymore by a transformation, the closest model which approximate the ideal source one is inferred. The language semantics is also presented and its expressivity and applicability are validated against a reference benchmark. JTL is embedded in a framework available on the Eclipse platform which aims to facilitate the use of the approach, especially in the definition of model transformations.
KeywordsState Machine Source Model Model Transformation Target Model Trace Link
Unable to display preview. Download preview PDF.
- 4.Stevens, P.: A Landscape of Bidirectional Model Transformations. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 408–424. Springer, Heidelberg (2008)Google Scholar
- 6.Object Management Group (OMG): MOF QVT Final Adopted Specification, OMG Adopted Specification ptc/05-11-01 (2005)Google Scholar
- 7.Stevens, P.: Bidirectional model transformations in qvt: semantic issues and open questions. Software and Systems Modeling 8 (2009)Google Scholar
- 8.Steven Witkop: MDA users’ requirements for QVT transformations. OMG document 05-02-04 (2005)Google Scholar
- 9.Czarnecki, K., Helsen, S.: Feature-based Survey of Model Transformation Approaches. IBM Systems J. 45(3) (June 2006)Google Scholar
- 11.Gelfond, M., Lifschitz, V.: The Stable Model Semantics for Logic Programming. In: Kowalski, R.A., Bowen, K. (eds.) Proceedings of the Fifth Int. Conf. on Logic Programming, pp. 1070–1080. The MIT Press, Cambridge (1988)Google Scholar
- 13.Leone, N., Pfeifer, G., Faber, W., Eiter, T., Gottlob, G., Perri, S., Scarcello, F.: The dlv system for knowledge representation and reasoning (2004)Google Scholar
- 18.Budinsky, F., Steinberg, D., Merks, E., Ellersick, R., Grose, T.: Eclipse Modeling Framework. Addison-Wesley, Reading (2003)Google Scholar
- 23.Foster, J., Greenwald, M., Moore, J., Pierce, B., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM Trans. Program. Lang. Syst. 29(3) (2007)Google Scholar
- 26.Balogh, Z., Varró, D.: Model transformation by example using inductive logic programming. Software and Systems Modeling (2009)Google Scholar
- 27.Compuware and Sun: XMOF queries, views and transformations on models using MOF, OCL and patterns, OMG Document ad/2003-08-07 (2003)Google Scholar
- 28.Cicchetti, A., Di Ruscio, D., Eramo, R.: Towards Propagation of Changes by Model Approximations. In: 10th IEEE Int. Enterprise Distributed Object Computing Conf. Workshops (EDOCW 2006), vol. 0, p. 24 (2006)Google Scholar