Intermodeling, Queries, and Kleisli Categories

  • Zinovy Diskin
  • Tom Maibaum
  • Krzysztof Czarnecki
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7212)


Specification and maintenance of relationships between models are vital for MDE. We show that a wide class of such relationships can be specified in a compact and precise manner, if intermodel mappings are allowed to link derived model elements computed by corresponding queries. Composition of such mappings is not straightforward and requires specialized algebraic machinery. We present a formal framework, in which such machinery can be defined generically for a wide class of metamodel definitions. This enables algebraic specification of practical intermodeling scenarios, e.g., model merge.


Query Language Category Theory View Model Triple Graph Query Mechanism 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F.: Inter-modelling: From Theory to Practice. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 376–391. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  2. 2.
    Romero, J., Jaen, J., Vallecillo, A.: Realizing correspondences in multi-viewpoint specifications. In: EDOC, pp. 163–172. IEEE Computer Society (2009)Google Scholar
  3. 3.
    Bernstein, P.: Applying model management to classical metadata problems. In: Proc. CIDR 2003, pp. 209–220 (2003)Google Scholar
  4. 4.
    Goguen, J.: A categorical manifesto. Mathematical Structures in Computer Science 1(1), 49–67 (1991)MathSciNetzbMATHCrossRefGoogle Scholar
  5. 5.
    Fiadeiro, J.: Categories for Software Engineering. Springer, Heidelberg (2004)Google Scholar
  6. 6.
    Batory, D.S., Azanza, M., Saraiva, J.: The Objects and Arrows of Computational Design. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 1–20. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Sabetzadeh, M., Easterbrook, S.M.: View merging in the presence of incompleteness and inconsistency. Requir. Eng. 11(3), 174–193 (2006)CrossRefGoogle Scholar
  8. 8.
    Rossini, A., Rutle, A., Lamo, Y., Wolter, U.: A formalisation of the copy-modify-merge approach to version control in mde. J. Log. Algebr. Program. 79(7), 636–658 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  9. 9.
    Diskin, Z., Xiong, Y., Czarnecki, K.: Specifying Overlaps of Heterogeneous Models for Global Consistency Checking. In: Dingel, J., Solberg, A. (eds.) MODELS 2010. LNCS, vol. 6627, pp. 165–179. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  10. 10.
    Diskin, Z.: Model Synchronization: Mappings, Tiles, and Categories. In: Fernandes, J.M., Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2009. LNCS, vol. 6491, pp. 92–165. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  11. 11.
    Diskin, Z., Maibaum, T., Czarnecki, K.: Intermodeling, queries, and Kleisli categories. Technical Report GSDLab-TR 2011-10-01, University of Waterloo (2011),
  12. 12.
    Ehrig, H., Ehrig, K., Prange, U., Taenzer, G.: Fundamentals of Algebraic Graph Transformation (2006)Google Scholar
  13. 13.
    Barr, M., Wells, C.: Category theory for computing science. PrenticeHall (1995)Google Scholar
  14. 14.
    Jacobs, B.: Categorical logic and type theory. Elsevier Science Publishers (1999)Google Scholar
  15. 15.
    Manes, E.: Algebraic Theories. Springer, Heidelberg (1976)zbMATHCrossRefGoogle Scholar
  16. 16.
    Jüllig, R., Srinivas, Y.V., Liu, J.: Specware: An Advanced Evironment for the Formal Development of Complex Software Systems. In: Nivat, M., Wirsing, M. (eds.) AMAST 1996. LNCS, vol. 1101, pp. 551–554. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  17. 17.
    Moggi, E.: Notions of computation and monads. Information and Computation 93(1), 55–92 (1991)MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Goguen, J., Burstall, R.: Institutions: Abstract model theory for specification and programming. Journal of ACM 39(1), 95–146 (1992)MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    Diskin, Z.: Towards generic formal semantics for consistency of heterogeneous multimodels. Technical Report GSDLAB 2011-02-01, University of Waterloo (2011)Google Scholar
  20. 20.
    Goguen, J., Burstall, R.: A Study in the Foundations of Programming Methodology: Specifications, Institutions, Charters and Parchments. In: Poigné, A., Pitt, D.H., Rydeheard, D.E., Abramsky, S. (eds.) Category Theory and Computer Programming. LNCS, vol. 240, pp. 313–333. Springer, Heidelberg (1986)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Zinovy Diskin
    • 1
    • 2
  • Tom Maibaum
    • 1
  • Krzysztof Czarnecki
    • 2
  1. 1.Software Quality Research LabMcMaster UniversityCanada
  2. 2.Generative Software Development LabUniversity of WaterlooCanada

Personalised recommendations