02. – 07. Dezember 2018, Dagstuhl-Seminar 18491

Multidirectional Transformations and Synchronisations


Anthony Cleve (University of Namur, BE)
Ekkart Kindler (Technical University of Denmark – Lyngby, DK)
Perdita Stevens (University of Edinburgh, GB)
Vadim Zaytsev (RainCode – Brussels, BE)

Auskunft zu diesem Dagstuhl-Seminar erteilt

Dagstuhl Service Team


Dagstuhl Report, Volume 8, Issue 12 Dagstuhl Report
Dagstuhl's Impact: Dokumente verfügbar
Programm des Dagstuhl-Seminars [pdf]


The Dagstuhl Seminar on “Multidirectional Transformations and Synchronisations” was the latest on a sequence of events [1] (coordinated by the Bx Steering Committee [2]) on bidirectional transformations (abbreviated bx) and related topics. Broadly speaking, the concern of the growing community interested in this topic is the maintenance of consistency between multiple data sources, in the presence of change that may affect any of them. The focus of this Dagstuhl meeting, in particular, was the special issues that arise when one considers more than two data sources at one time. Technical definitions of bx have always allowed for there to be more than two, but in practice, most work to date has focused on maintaining consistency between two data sources. We abbreviate “multidirectional transformation”, hereinafter and generally, to multx or mx.

We began the week with a presentation of case studies and introductory tutorials, and towards the end of the week we had several plenary talks, in cases where someone was able to discuss work that seemed likely to be of general interest. Overall, though, this was a highly interactive Dagstuhl: most of our time during the week was spent either in working groups or, synergistically, discussing in plenary session the outcomes of those working groups and what else needed to be addressed. Reports from each of those working groups, and descriptions of the case studies, are found in the body of this report. Here we briefly introduce them. Inevitably, the topics of the groups overlapped, and some topics that were proposed for working groups were not reached during the week. We encouraged participants to move freely between groups to foster cross-fertilisation of ideas. The names given are those of the authors of the brief reports. Collectively, these topics comprise a research roadmap for the subject.

  • WG1: Whether Networks of Bidirectional Transformations Suffice for Multidirectional Transformations. This group began what turned out to be a recurring theme of the week: see below.
  • WG2: Partial Consistency Notions. This relates to handling situations in which consistency is not perfectly restored, but only improved to some extent.
  • WG3: Semantics of Multidirectional Transformations. This group raised questions about definitions of syntactic and semantic consistencies, vertical and horizontal propagation, etc. After creating enough awareness of the importance of this topic, the working group dissolved and its efforts were merged into others, in particular WG4, WG8 and WG12. WG4: Multiple Interacting Bidirectional Transformations. This group started with an intention of providing a good example of a “truly” multidirectional transformation and defined scenarios where several multx and bx work together towards restoring consitency.
  • WG5:Mathematical Backgrounds for Multidirectional Transformations. Following on from WG1, this group considered, from a theoretical perspective, handling multx by the use of a common “federated” supermodel related by spans of asymmetric lenses.
  • WG6: Synchronisation Policy. Separate from the issue of what the mechanism is to restore consistency, when should the mechanism be used, and whose decides that?
  • WG7: Use Cases and the Definition of Multidirectional Transformations. When are multx really necessary in practice, and how?
  • WG8: Human Factors: Interests of Transformation Developers and Users. Sometimes in our focus on technical aspects we lose the human element – who are the humans involved and what do they need from whatever languages, tools and techniques are developed for multx?
  • WG9: Provenance in Multidirectional Transformations. Information about what changed and why – provenance and traceability – are crucial to trust in multx; how can that information be provided and handled?
  • WG10: Living in the Feet of the Span. Following on from WG1 and WG5: what happens when one conceptually uses a common supermodel, but does not wish to materialise it?
  • WG11: Programming Languages for Multidirectional Transformations. This group discussed the challenges that need to be met to produce such languages, with a focus on their type systems.
  • WG12: Verification and Validation of Multidirectional Transformations. What needs to be verified or validated about multx, and in what ways do these needs challenge the state of the art in verification and validation?

A recurring theme of the week, turning up in one guise or another in most of the working groups, was the question of the extent to which excellent solutions to the two-source bx problems would, or would not, automatically solve the multx problems. Do problems involving multx really introduce new issues, or are they just more complicated than problems involving bx, perhaps organised in networks? The bx problem is far from solved – we do not yet, for example, have widely adopted and well-supported specialist bx languages – and so there was some feeling that we lacked a firm foundation on which to address multx. More positively, considering multx has the potential to help bx research make progress, by motivating areas that still require more study in order to support the multx case. For example, heterogeneity of the languages in which the data sources and the changes to them are expressed clearly points to a need for bx, and hence multx, approaches that do not need to materialise edit histories for all the sources, nor a common supermodel for them – even if the theory that addresses them might still call on such things conceptually.

The following case study descriptions are also included in the report:

  • Multidirectional Transformations for Microservices
  • Multidirectionality in Compiler Testing
  • Bringing Harmony to the Web
  • A Health Informatics Scenario

Perhaps the most important observation from this Dagstuhl meeting, though, is how broad the scope of the research necessary to address multx concerns is. The issues and examples discussed by participants went far beyond multidirectional versions of issues and examples already raised in earlier bx meetings. For example, microservices, the focus of the case study presented by Albert Zündorf (§4.1), would not traditionally have fallen under the bx umbrella, yet is clearly related. This widening of scope is natural. As IT systems become more interdependent and more important to our everyday lives, it is inevitable that data, and the (often separately developed) behaviour it supports, reside in many places. They are coupled, in the sense that changes in one place may mean that changes in another place are necessary, in order to maintain all of these systems in useful operation. Making all such changes manually does not scale: some degree of automated maintenance of consistency is inevitably required. Multx thus subsumes much of software engineering and inherits its concerns. Readers of this document may wish to join the Bx community by subscribing to its mailing list and/or consulting the Bx wiki: see There is also a catalogue of examples of bx and multx, including some that were discussed at this Dagstuhl [3].

  1. Bidirectional Transformations Wiki: Bx Events,, 2012.
  2. Bidirectional Transformations Wiki: Bx Steering Committee,
    http://bx-community., 2012.
  3. Bidirectional Transformations Wiki: List of pages tagged with multxdagstuhl,, 2018.
Summary text license
  Creative Commons BY 3.0 Unported license
  Ekkart Kindler and Perdita Stevens

Related Dagstuhl-Seminar


  • Data Bases / Information Retrieval
  • Programming Languages / Compiler
  • Software Engineering


  • Multidirectional model transformation
  • Synchronisation
  • Consistency
  • Traceability
  • Model-driven development


In der Reihe Dagstuhl Reports werden alle Dagstuhl-Seminare und Dagstuhl-Perspektiven-Workshops dokumentiert. Die Organisatoren stellen zusammen mit dem Collector des Seminars einen Bericht zusammen, der die Beiträge der Autoren zusammenfasst und um eine Zusammenfassung ergänzt.


Download Übersichtsflyer (PDF).

Dagstuhl's Impact

Bitte informieren Sie uns, wenn eine Veröffentlichung ausgehend von Ihrem Seminar entsteht. Derartige Veröffentlichungen werden von uns in der Rubrik Dagstuhl's Impact separat aufgelistet  und im Erdgeschoss der Bibliothek präsentiert.


Es besteht weiterhin die Möglichkeit, eine umfassende Kollektion begutachteter Arbeiten in der Reihe Dagstuhl Follow-Ups zu publizieren.