Abstract
ATL is a language for describing model transformations currently in uni-direction. In our previous work we have shown that transformations of graph structures given in some form can be bidirectionalized and have implemented a system called GRoundTram system for bidirectional graph transformations. We say a transformation t is bidirectionalized when we obtain a backward transformation t′ so that the pair (t,t′) of transformations satisfies certain well-behavedness properties. Bidirectional model transformation is used to reflect the changes in the target model back to the source model, and vice versa. In this paper, as a first step toward realizing practical bidirectional model transformations, we present bidirectionalization of core part of the ATL by encoding it in the UnQL language, which is used as a transformation language in the GRoundTram system. We give the algorithm for the encoding, based on which we have implemented the system for bidirectionalizing the core ATL in OCaml language.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
The ATL web site, http://www.eclipse.org/m2m/atl/
The BiG project web site, http://www.biglab.org/
ATLAS group. KM3: Kernel MetaMetaModel manual, http://www.eclipse.org/gmt/atl/doc/
Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Transactions on Database Systems 6(4), 557–575 (1981)
Barbosa, D.M.J., Cretin, J., Foster, N., Greenberg, M., Pierce, B.C.: Matching lenses: Alignment and view update. In: ACM SIGPLAN International Conference on Functional Programming, pp. 193–204. ACM, New York (2010)
Bézivin, J., Schürr, A., Tratt, L.: Model Transformations in Practice Workshop. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 120–127. Springer, Heidelberg (2006)
Bohannon, A., Pierce, B.C., Vaughan, J.A.: Relational lenses: a language for updatable views. In: Vansummeren, S. (ed.) PODS, pp. 338–347. ACM Press, New York (2006)
Buneman, P., Fernandez, M.F., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB Journal: Very Large Data Bases 9(1), 76–110 (2000)
Czarnecki, K., Nathan Foster, J., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.F.: Bidirectional Transformations: A Cross-Discipline Perspective. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 260–283. Springer, Heidelberg (2009)
Nathan Foster, J., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bi-directional tree transformations: a linguistic approach to the view update problem. In: POPL 2005: ACM SIGPLAN–SIGACT Symposium on Principles of Programming Languages, pp. 233–246 (2005)
Hidaka, S., Hu, Z., Inaba, K., Kato, H., Matsuda, K., Nakano, K.: Bidirectionalizing graph transformations. In: ICFP 2010, pp. 205–216. ACM Press, New York (2010)
Hidaka, S., Hu, Z., Inaba, K., Kato, H., Matsuda, K., Nakano, K.: Bidirectionalizing graph transformations. In: ACM SIGPLAN International Conference on Functional Programming, pp. 205–216. ACM, New York (2010)
Hidaka, S., Hu, Z., Kato, H., Nakano, K.: Towards a compositional approach to model transformation for software development. In: SAC 2009: Proceedings of the 2009 ACM symposium on Applied Computing pp. 468–475. ACM, New York (2009)
Hu, Z., Mu, S.-C., Takeichi, M.: A programmable editor for develo** structured documents based on bidirectional transformations. Higher-Order and Symbolic Computation 21(1-2), 89–118 (2008)
Jouault, F., Allilaire, F., Bezivin, J., Kurtev, I.: Atl: A model transformation tool. Science of Computer Programming 72(1-2), 31–39 (2008)
Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)
Matsuda, K., Hu, Z., Nakano, K., Hamana, M., Takeichi, M.: Bidirectionalization transformation based on automatic derivation of view complement functions. In: 12th ACM SIGPLAN International Conference on Functional Programming (ICFP 2007), pp. 47–58. ACM Press, New York (2007)
Stevens, P.: Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)
Voigtländer, J.: Bidirectionalization for free (pearl). In: POPL 2009: ACM SIGPLAN–SIGACT Symposium on Principles of Programming Languages, pp. 165–176. ACM, New York (2009)
Voigtländer, J., Hu, Z., Matsuda, K., Wang, M.: Combining syntactic and semantic bidirectionalization. In: ACM SIGPLAN International Conference on Functional Programming, pp. 181–192. ACM, New York (2010)
**ong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), pp. 164–173. ACM Press, New York (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sasano, I., Hu, Z., Hidaka, S., Inaba, K., Kato, H., Nakano, K. (2011). Toward Bidirectionalization of ATL with GRoundTram. In: Cabot, J., Visser, E. (eds) Theory and Practice of Model Transformations. ICMT 2011. Lecture Notes in Computer Science, vol 6707. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21732-6_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-21732-6_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21731-9
Online ISBN: 978-3-642-21732-6
eBook Packages: Computer ScienceComputer Science (R0)