Toward Bidirectionalization of ATL with GRoundTram

  • Isao Sasano
  • Zhenjiang Hu
  • Soichiro Hidaka
  • Kazuhiro Inaba
  • Hiroyuki Kato
  • Keisuke Nakano
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6707)

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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 2.
    The BiG project web site, http://www.biglab.org/
  3. 3.
    ATLAS group. KM3: Kernel MetaMetaModel manual, http://www.eclipse.org/gmt/atl/doc/
  4. 4.
    Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Transactions on Database Systems 6(4), 557–575 (1981)CrossRefMATHGoogle Scholar
  5. 5.
    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)CrossRefGoogle Scholar
  6. 6.
    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)CrossRefGoogle Scholar
  7. 7.
    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)Google Scholar
  8. 8.
    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)CrossRefGoogle Scholar
  9. 9.
    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)CrossRefGoogle Scholar
  10. 10.
    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)Google Scholar
  11. 11.
    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)Google Scholar
  12. 12.
    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)CrossRefGoogle Scholar
  13. 13.
    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)CrossRefGoogle Scholar
  14. 14.
    Hu, Z., Mu, S.-C., Takeichi, M.: A programmable editor for developing structured documents based on bidirectional transformations. Higher-Order and Symbolic Computation 21(1-2), 89–118 (2008)CrossRefMATHGoogle Scholar
  15. 15.
    Jouault, F., Allilaire, F., Bezivin, J., Kurtev, I.: Atl: A model transformation tool. Science of Computer Programming 72(1-2), 31–39 (2008)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  17. 17.
    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)CrossRefGoogle Scholar
  18. 18.
    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)CrossRefGoogle Scholar
  19. 19.
    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)Google Scholar
  20. 20.
    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)CrossRefGoogle Scholar
  21. 21.
    Xiong, 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)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Isao Sasano
    • 1
  • Zhenjiang Hu
    • 2
  • Soichiro Hidaka
    • 2
  • Kazuhiro Inaba
    • 2
  • Hiroyuki Kato
    • 2
  • Keisuke Nakano
    • 3
  1. 1.Shibaura Institute of TechnologyJapan
  2. 2.National Institute of InformaticsJapan
  3. 3.The University of Electro-CommunicationsJapan

Personalised recommendations