<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Integration and Coordination of Health Data Systems: State-of-the-Art and Open Problems?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Harald Ko¨ nig</string-name>
          <email>harald.koenig@fhdw.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Patrick Stu¨ nkel</string-name>
          <email>Patrick.Stunkel@hvl.no</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Applied Sciences FHDW Hannover</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Western Norway University of Applied Science</institution>
          ,
          <country country="NO">Norway</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Software Engineering involves a multitude of different tools and concepts. These tools typically produce a wide variety of diverse artifacts such as code, design models, and requirements. Even though these artifacts are highly interdependent, consistency, e.g. semantical correctness, is in general only checked locally within one modeling environment and not globally across tools. A prominent example is consistency of class models and process models. Only recently, research activities have started, which specify frameworks for global consistency maintenance. Such a framework must be capable of detecting, monitoring, and repairing global inconsistencies. But it should also be abstract enough to cover the detection and possible restoration of contradictory data, e.g. distributed but overlapping patient data of electronic health records. We give an overview over recent and current research activities in global consistency management, from which the development and maintenance of heterogeneous eHealth systems will benefit. We outline a possible workflow in a multiuser environment, which aims at keeping all artifacts consistent, and sketch some of the biggest challenges in this area.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Landscapes of ICT-systems must provide a precise and undistorted representation of
the real-world-domain under consideration. The ideal coexistence of a real-world entity
and its electronic reproduction requires a single and unique electronic representation.
However, reality is different, because the distributed nature of health-services,
continuous changes of health records and the vast amount of existing legacy systems and
different information models result in an entirely unclear distribution of data of a single
real-world entity. Unfortunately, natural barriers like the value and importance of stored
information, continuous requirement appearances as well as the permanent pressure to
keep the systems in operation, prevent consolidation.</p>
      <p>But even if electronic data would perfectly be centralized, its prescriptive and
descriptive models in the sense of Model-Driven Software Engineering (MDSE) are highly
inter-dependent and simultanously constrain each other: Requirements specifications,
design definitions, their implementations and documentations each represent the
system from a particular perspective.</p>
      <p>
        Understanding the ensemble of several interrelated heterogeneous models as one
big concept is known as multimodeling [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Other research areas use the terms
”megamodeling” [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], ”feature-driven design” [
        <xref ref-type="bibr" rid="ref40">40</xref>
        ], ”viewpoints” [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], or ”domain-driven
design” [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] for this holistic view. A common goal of all these areas is the
discussion how to sustain high quality of multimodels. Because each involved local artifact
(a component of a multimodel) is subject to perpetual change, this is only possible by
continuous change propagation to the other components in order to re-establish global
consistency.
      </p>
      <p>Especially in e-health environments we are forced to cope with consistency
maintenance of distributed information on different levels of the modeling hierarchy (data,
models, and metamodels): Besides dependent modeling artifacts, also real-world
objects are distributed over several storage facilities, e.g., some portions of the health
record of a patient may be stored in the hospitals’s database whereas other parts are
in the file system of a general practitioner, yet common data like patient’s name and
address occur in both portions. Cross-storage dependencies (and hence inconsistencies)
arise in the presence of constraints, e.g., if a visit to the general practitioner must always
precede a visit to the hospital.</p>
      <p>In view of these overall dependencies, it is a problem that supporting tools (e.g.
relational database, database schema definition tool, file system explorer, UML modeling
tool) are limited to local consistency checks. Since support of multimodel consistency
maintenance is missing, and since the involved local artifacts are subject to accelerated
evolution and change, these artifacts quickly become out-of-sync (i.e. inconsistent).
This barrier decreases productivity and overshadows the advantages of MDSE. Formal
concepts and architectures for the maintenance of overall consistency are required.</p>
      <p>There are many different facets of global consistency3: One distinguishes between
vertical dependencies (e.g., type conformance relations between data (e.g. XML
document, database contents) and data model (e.g. XSD, database schema)) and
horizontal dependencies. The latter arise between artifacts on the same modeling level, e.g.,
use-cases together with their textual descriptions must be in line with process models,
which in turn must not contradict involved class models and activity diagrams. Finally
and most importantly, these conceptual documents must yield correctness of solutions,
i.e. consistency with program code.</p>
      <p>Whereas data model updates may induce data migrations (restoration of vertical
consistency), class models must consistently co-evolve with data models, data exchange
formats, and process model descriptions (restoration of horizontal consistency). Finally,
distributed data portions of a real-world object must at every point in time be consistent.
Thus the main challenge can be stated as follows:
How to achieve cross-tool consistency maintenance and global consistency checking
and restoration by means of an integrated conceptual and architectural framework?
From this main problem statement the following detailed questions can be extracted:
3 Related work will be discussed in Sect. 3
1. Workflow: What are the relevant services for consistency maintenance? Which of
them are automatic / semi-automatic / manual?
2. (Conceptual) framework: In view of the different facets of consistency: Is there an
appropriate abstraction, which covers all the different types of dependencies? What
is an suitable formalisation?
3. Architecture: What is a practical system topology for this framework?
The goal of the following sections is to report on the most important research activities
w.r.t. the conception and implementation of frameworks which detect, monitor, and
repair overall inconsistencies. Another objective is to show that the necessary activities
cannot all be automatic, such that it is necessary to specify workflows in a multi-user
environment. Finally, we sketch open problems and directions of future research.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Example</title>
      <p>
        In this section, we present a simple example (see also [
        <xref ref-type="bibr" rid="ref58">58</xref>
        ]), which already shows some
important challenges in the area. Clearly, real-world examples are far more complex
but can, in principle, be treated in the same way. Consider Fig. 1, which contains two
data models: In the system of some general practitioner, patient’s blood pressure values
and their name are stored, whereas in some central register, possible contacts of certain
persons are maintained. Suppose now that there is an overall constraint, possibly due to
some legal health insurance regulations, requiring that . . .
      </p>
      <p>Patients with hypertension4 must have at least one contact person.</p>
      <p>This regulation is a typical example of a global constraint, since it concerns data
which is typed over both data models. Any tool, which maintains only one of the data
models, cannot check consistency w.r.t. this global constraint, because the first tool
(in the practitioner’s application) knows nothing about contact persons and the second
(maintaining the central register) is not aware of blood pressure values.</p>
      <sec id="sec-2-1">
        <title>4 Systolic and diastolic blood pressure over 140 and over 90</title>
        <p>We can analyse the questions of Sect. 1 with regard to this example: Let’s assume
that John is a patient of the general practitioner Dr. Livingstone and that, some months
ago, John’s blood pressure values turned out to be (125; 85)5. Since these values are
normal, there is currently no contact person registered for John. Suppose further that John’s
wife Mary is also a patient of Dr. Livingstone and that she suffers from hypertension,
because her blood pressure is (150; 100). According to the legal requirement above,
Mary possesses contact person Ben, the son of John and Mary. Thus, in this example,
the constellation is globally consistent w.r.t. to the above constraint. But the situation
changed yesterday, because John visited Dr. Livingstone’s office for some routine
examination and, unexpectedly, his blood pressure values have increased to (145; 95).</p>
        <p>Question 1: The recent blood pressure measurement is an event, which must trigger
a workflow, in which the following services are needed: (a) detection of global
inconsistencies, (b) consistency restoration. If all relevant data is stored electronically, (a) can
be carried out automatically, whereas (b) can at best be performed semi-automatically,
because it is not clear which person becomes John’s new contact: Is it his wife (although
she also suffers from hypertension), is it his son (he is already the contact of Mary), or is
it some other appropriately qualified person? It is unlikely that an automatic algorithm
is able to determine a solution which always fits the participants’ expectations.</p>
        <p>Question 2: How can we formalise the structures of class diagrams in Fig.1 and their
respective object states (i.e. John, Mary, Ben together with their medical observations),
such that these structures are also a basis for handling inconsistencies between other
artifacts like use-case descriptions, activity diagrams, process models, etc? How does a
machine-readable common language for defining global constraint looks like?</p>
        <p>Furthermore, Dr. Livingstone’s data model differs from the central patient model.
Yet both models share common aspects, because PATIENT and PERSON refer to the
same business concept. Stored objects (PATIENT John in Dr. Livinsgtone’s data and
PERSON John in the central register) represent the same real-world object.
Conceptually, this requires a unification of logically separated structures and the formal
crossmodel identification of identical objects.</p>
        <p>Question 3: The practitioner’s database may or may not be located in his office. The
general patient register may physically be on a remote server in the cloud. In general,
systems are located in different geographic areas, composed of smaller components
(e.g., processes, services, and backends), and are constraint by special hardware
properties. Hence, a system architecture has to be provided, which enables (direct or indirect)
communication and data exchange of physically separated components.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Solutions</title>
      <p>In this section, we report on current methodologies for consistency maintenance of
multimodels. Each subsection refers to one of the three above posed questions.</p>
      <sec id="sec-3-1">
        <title>5 Blood pressure values measured in mmHg</title>
        <p>3.1</p>
        <sec id="sec-3-1-1">
          <title>Workflow Services</title>
          <p>
            In Sect.2 we observed that the two crucial workflow services of heterogeneous
multimodeling are detection of global inconsistencies and consistency restoration. For both
services, the research community distinguishes between several fundamentally
different strategies: Amongst many others, [
            <xref ref-type="bibr" rid="ref51">51</xref>
            ] surveys multiview consistency checking and
describes advantages and disadvantages of several approaches. Merging these insights
with a recent survey [
            <xref ref-type="bibr" rid="ref42">42</xref>
            ] on UML-based techniques, which pursues the goal to
determine a heterogeneous, multi-view language for UML-based multimodeling, it turns out
that there are 4 fundamentally different ”consistency techniques”:
– System Model Approach: Heterogeneity is managed by unifying all local models
to one global model. Consistency is checked w.r.t. this global model.
– Heterogeneous Transformations: Separated models are related via additional
satisfiability or dependency rules accompanied by optional model translations.
– Universal Logic: Separated but interdependent models can be investigated by
translating them into a common logic.
– Extended Metamodels: Model integration is supported by extending the abstract
syntax of the modeling language, with additional semantic concepts.
          </p>
          <p>In view of these 4 techniques, implementation proposals of the two services can be
surveyed as follows:</p>
          <p>
            Inconsistency detection: System Model approaches require computation of a
comprehensive model which comprises all artifacts under consideration, e.g., a data model
with PERSONs, MEASUREMENTs, and CONTACTs in Fig 1. This calculation has been
described e.g. in [
            <xref ref-type="bibr" rid="ref20 ref55">55,20</xref>
            ] for the case of two interrelated models and in [
            <xref ref-type="bibr" rid="ref44 ref58">44,58</xref>
            ] for many
models and can be carried out automatically. The original idea, however, can be dated
back to the contributions of Goguen [
            <xref ref-type="bibr" rid="ref35">35</xref>
            ] and Ehrig [
            <xref ref-type="bibr" rid="ref25">25</xref>
            ]. Afterwards, classical
(singlemodel) consistency checking methods can be applied.
          </p>
          <p>
            The most direct (and most well-known) approach to consistency checking is via
monitoring satisfiability of consistency rules. These rules are specified in a special
language ”understanding” all local models, although these models remain separated but
may be homogenised by Heterogenous Transformations as is proposed in [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ]. [
            <xref ref-type="bibr" rid="ref50">50</xref>
            ]
invents the language xlinkit which provides XML-based link generation amongst web
content. In a similar way, cross-model ”affects”-links are often used. Recipes to
increase the efficiency of the checking algorithms can be found in [
            <xref ref-type="bibr" rid="ref16 ref24 ref44">24,16,44</xref>
            ]. Based on
the theory of ”Triple-Graph-Grammars” (TGG) [
            <xref ref-type="bibr" rid="ref56">56</xref>
            ], consistency rules are formulated
as relations between (patterns in) graphical structures, consistency checking then
extends the model parts under consideration by these ”consistency” links, and, if all areas
of the models have been matched, they are considered consistent [
            <xref ref-type="bibr" rid="ref26">26</xref>
            ]. This approach
would specify a rule which searches for CONTACT patterns, if it detects a hypertension
pattern in the related model.
          </p>
          <p>
            [
            <xref ref-type="bibr" rid="ref46">46</xref>
            ] is a typical representative of Universal Logic: Global constraints are
investigated in the context of feature-oriented software development and software product
lines. Inconsistency detection is performed by mapping feature models to propositional
logic. In our example, this means that not only the obligation to have a contact for people
with hypertension is formulated as a logical directive, but also the models themselves
are represented as logical formulas. In the same spirit, the ”Consistency Workbench”
by Ku¨ster, Engels, et al. [
            <xref ref-type="bibr" rid="ref28">28</xref>
            ] translates models into a logic-based semantic domain in
which consistency verification is carried out.
          </p>
          <p>
            Extended Metamodels: [
            <xref ref-type="bibr" rid="ref27">27</xref>
            ] connects several UML metamodels by intelligent links.
E.g., the union of the metamodels for object diagrams and for statecharts is extended by
an associaton ”current” from OBJECT (in the first metamodel) to STATE (in the second
metamodel) thus establishing a semantic link between them. In such a way, global (e.g.,
OCL-)constraints can restrict the set of possible state changes after certain operation
calls. A similar approach, though not intended solely for UML is used in the GEMOC
initiative for globalising modelling languages [
            <xref ref-type="bibr" rid="ref14">14</xref>
            ].
          </p>
          <p>Consistency Restoration: Conceptual approaches for fixing inconsistencies can be
divided into (1) rule-driven, (2) implementation-driven, (3) choice set computation, (4)
universal solutions.6</p>
          <p>
            A typical rule-driven approach are production rules of TGG’s, see above. These
rules already contain the necessary information to fix an inconsistent state of two
related models. In such a way, a detected hypertension pattern is propagated across
models by creating some (initially incomplete) contact. Additionally, linear optimization
techniques support a ranking of several repair rules [
            <xref ref-type="bibr" rid="ref45">45</xref>
            ]. Implementations (i.e.
”TGGengines”) have been provided, e.g. (e)MOFLON [
            <xref ref-type="bibr" rid="ref2 ref3">2,3</xref>
            ], GraTraM [
            <xref ref-type="bibr" rid="ref45">45</xref>
            ].
          </p>
          <p>Local changes that caused global inconsistencies can, in general, not uniquely be
propagated to other models in order to restore consistency. This is only possible, if
a change occurs in an artifact, from which the others can be generated by means of
model transformations (e.g. code generation or object-relational (OR) mappings) with
languages like ATL or operational QVT7. If, in the example, a woman’s name is updated
after her marriage, this can uniquely be propagated to the other model.</p>
          <p>
            In the general case, additional update propagation policies are needed. Whereas
these policies remain abstract in the basic theory of bidirectional transformations (BX)
[
            <xref ref-type="bibr" rid="ref15">15</xref>
            ] and especially in the theory of (delta-)lenses [
            <xref ref-type="bibr" rid="ref21 ref34">34,21</xref>
            ], possible policies can be
derived from inverses of unidirectional transformation encodings with bidirectional
programming languages like, e.g., JTL [
            <xref ref-type="bibr" rid="ref13 ref30">13,30</xref>
            ], BiGUL [
            <xref ref-type="bibr" rid="ref43">43</xref>
            ], or even QVT-R7. A typical
example would be, if a complete name without separating symbols (e,g., ”John
Henderson”) is generated from first name and last name (”John”, ”Henderson”). This is in
general not invertible (e.g. ”Ho Chi Min”). Although minimality policies like minimal
distance (of a consistent structure from the one under repair) w.r.t. to classical
metrics have not been successful [
            <xref ref-type="bibr" rid="ref11">11</xref>
            ], other optimisation approaches like e.g. the policy of
maximal preservation [
            <xref ref-type="bibr" rid="ref36">36</xref>
            ] may be pursued further.
          </p>
          <p>A complete generalisation of this setting would be a specification of change
propagations and amendments after (possibly concurrent and conflicting) updates of several
artifacts under consideration, e.g., if hypertension has been detected and the last contact
has been deleted simultaneously.</p>
          <p>
            Automatic change propagation and amendments of original updates seem to be
possible only in a setting of certain functional (in fact: functorial) update processes [
            <xref ref-type="bibr" rid="ref38">38</xref>
            ],
6 Since we are aiming at a conceptual grouping of approaches, we do not pursue the more
technology-driven classification of model repair approaches in [
            <xref ref-type="bibr" rid="ref48">48</xref>
            ].
7 http://www.omg.org/spec/QVT/
which reveal universal properties such as, for instance, adjoint situations (of functors).
This is by far not possible in general as could already be seen in the simple example of
Sect.2 (we will, additionally, discuss other inherent natural barriers for unique model
repair in Sect.4). Therefore, practical approaches, which do not use additional
bidirectional programming languages, first have to determine all possible restoration choices,
then restrict this choice space, such that the proposals do not cause new inconsistencies,
and then present the remaining choices (possibly prioritised) to the respective modelers
and leave to them the final selection, see e.g. [
            <xref ref-type="bibr" rid="ref23">23</xref>
            ]. Furthermore, other heuristics for
repair proposals, e.g., ”extension precedes deletion” or ”amendment of manual changes
only after user approval” can guide this prioritisation.
          </p>
          <p>
            Other promising approaches to control and present different restoration choices in
a reasonable way is ”Answer Set Programming” [
            <xref ref-type="bibr" rid="ref29">29</xref>
            ], CLP-based8 model completion
[
            <xref ref-type="bibr" rid="ref57">57</xref>
            ], and completion rules [
            <xref ref-type="bibr" rid="ref52">52</xref>
            ], the latter two in combination with the above-mentioned
construction of a unified global model. Last but not least [
            <xref ref-type="bibr" rid="ref41">41</xref>
            ] proposes a practical
approach in the field of model co-evolution [
            <xref ref-type="bibr" rid="ref12 ref53">12,53</xref>
            ], where proposals of model adaptions
after a metamodel change are presented to the modeler as a ranked list, cf. the remarks in
the last paragraph. In this work, top proposals are chosen according to maximal cosine
similarities with the old model and minimal number of edits needed to restore
consistency. This also yields a pragmatic taxonomy for characterizing changes in one model
w.r.t. to possible update propagation by ”unbreaking”, ”resolvable”, and ”breaking”.
          </p>
          <p>
            Choice set computation raises the question, when to select or at least narrow (a)
resonable solution(s). One can distinguish between two viewpoints: Least change policies
as described above and further investigated in the next chapter, see also [
            <xref ref-type="bibr" rid="ref47">47</xref>
            ] and [
            <xref ref-type="bibr" rid="ref36">36</xref>
            ],
but also the possibility to carry on with uncertain models, i.e. leave update propagtation
uncertain: [
            <xref ref-type="bibr" rid="ref39 ref4">39,4</xref>
            ].
          </p>
          <p>
            Finally, a future research direction is to find repair proposals by means of
”cognifications” [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ], e.g. methods where machines learn the modeler’s behaviour and are thus
able to predict reasonable decisions. Whereas Eclipse’s Code Recommender abilities
9 are a first simplistic approach of ”cognified” MDSE, [
            <xref ref-type="bibr" rid="ref10">10</xref>
            ] even proposes to carry out
model transformations by means of hierarchical neural networks. Learning update
propagation policies may also be possible with ”Reinforcement Learning”, a first approach
has been proposed for single models in [
            <xref ref-type="bibr" rid="ref5">5</xref>
            ].
3.2
          </p>
        </sec>
        <sec id="sec-3-1-2">
          <title>Conceptual Framework</title>
          <p>
            Formal system integration must abstract away from the different modeling languages
and from the modeling level of the problems under consideration and it must be able to
uniformly specify commonalities of artifacts and their dependencies. Application-based
”complete product models” were proposed in [
            <xref ref-type="bibr" rid="ref8">8</xref>
            ], but the well-established concept of
directed multi-graphs, which are able to encode most of the artifacts under
consideration, turned out to be more feasible. Binary lenses of BX and (recently) multi-ary lenses
[
            <xref ref-type="bibr" rid="ref19">19</xref>
            ] replace the category10 of graphs with an arbitrary category and provide an abstract
          </p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>8 Constraint Logic Programming</title>
        <p>
          9 http://www.eclipse.org/recommenders/
10 For basic explanations on Category Theory for Software Engineering, see [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ]
interface, in which operations for (forward and backward) propagations are specified.
In the same spirit, conceptual work in the area of ”megamodeling” focusses on the
specification of relevant operations without detailing inner structures, e.g. [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ].
        </p>
        <p>
          Typical common languages for the specification of commonalities and other global
constraints are sentences of first-order-logic, the (more application-oriented)
”description logic” (DL), OCL (Object-Constraint-Language), and the Diagrammatic Predicate
Framework (DPF) [
          <xref ref-type="bibr" rid="ref54">54</xref>
          ]. The latter prevents mismatches between grafical artifacts and
string-based formulas imposed on them. For (an extension of) the example of Sect. 2
this framework has been used in [
          <xref ref-type="bibr" rid="ref58">58</xref>
          ].
        </p>
        <p>
          A sound and fully theoretical underpinning are institution-based multimodeling
laguages [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], which enable homogeneous specifications of models and constraints.
3.3
        </p>
        <sec id="sec-3-2-1">
          <title>Architecture</title>
          <p>The most expedient system topology, which simultaneously specifies the
abovementioned workflow, is depicted in Fig.2. If there are various artifacts (local models) for
the description of data or concepts from several perspectives (left bottom in Fig. 2), then
in a preprocessing phase these artifacts must be transformed into a common language,
e.g. into directed graphs, cf. Sect. 3.2, and then stored in an artifact repository, which
may be located somewhere in a trusted and secured network. This storage may keep
the artifacts separated or it may compute a unified model. Moreover, a special modeler
defines consistency rules and maintains commonality specifications.</p>
          <p>If a change event occurs in a local model, its delta between previous and current
version must immediately and transactionally be synchronized into this repository. If
a unified model is used, it must be re-calculated on the change’s affected parts. After
having re-checked global consistency by the respective service (cf. Sect. 3.1), a detected
inconsistency must be repaired. For this, the restoration service (cf. Sect. 3.1) may
narrow the solution set, which is then sent back to the respective modelers by means of
work items (notifications). As mentioned above, the final selection, how to react on the
original update, is then left to these users.</p>
          <p>This framework is also able to repair inconsistencies of data. In the example of
Sect. 2, the inconsistency detection due to John’s hypertension takes place in the
consistency maintenance space. Then prioritised proposals are contained in the notification
of the responsible user of the central register (e.g. John’s daughter may be the best
proposal for the new contact, because both Mary and Ben are no appropriate choices, see
the discussion in Sect. 2).
4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Open Problems and Summary</title>
      <p>Let’s revisit the main problem statement in Sect. 2: We illustrated how one can ensure
cross-tool consistency maintenance and global consistency checking by means of an
integrated conceptual and architectural framework, if one chooses from possible
implementations of the two main workflow services, see Sect. 3.1, and if these services are
embedded into the depicted architecture of Fig. 2 of Sect.3.3. We defined the scope of
automatisation depending on the different basic approaches (cf. Question 1) and have
delineated the necessary abstraction level (Question 2) for the conceptual aspects of the
framework (Sect. 3.2).</p>
      <p>Obviously the biggest challenge in this area is intelligent consistency restoration11.
There is the intricacy to find the right amount of automatisation while simultaneously
not surprising the modeler(s) too much with strange repair proposals.</p>
      <p>
        [
        <xref ref-type="bibr" rid="ref47">47</xref>
        ] proposes to measure the impact of consistency restorations and thus find least
changes (in the sense of minimal distances). However, [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] points out drawbacks of the
idea to let a formal measure, e.g. the edit distance between grafical structures, guide an
automatic repair procedure. It turns out that in many cases the principle of least surprise
is violated. This principle, originally an HCI design guideline [
        <xref ref-type="bibr" rid="ref37">37</xref>
        ], requires deliberate
modeler’s decisions not to be disrupted by automatic amendments and it demands that
modeling data not shared with other artifacts is not touched. Similarly, [
        <xref ref-type="bibr" rid="ref1 ref49">1,49</xref>
        ] state a
principle of least change: ”The action taken by the maintainer of a constraint after a
violation should change no more than is needed to restore the constraint.” The following
examples, however, show that it is hard to comply with the latter requirement12.
      </p>
      <p>Example 1: Suppose, in an OR-Mapping scenario, class C of some
Ecore-UMLdiagram possesses attribute a. Accordingly, the respective database table C contains
column a. A modeler may now delete column a in the DB table. What would be the
propagated change to the class model, which changes no more than is needed? We think
that many of the readers would say ”delete attribute a in the class, too”. But if a certain
update propagation operation may adhere to the (important) principle to preserve as
much information as possible, it would consequently just set the property ”isTransient”
of attribute a to TRUE. The UML modeler may or may not be surprised!</p>
      <p>
        Example 2: In the next scenario, suppose clubs of your hometown together with
its members are stored in a database owned by the town’s administration department.
11 Because we learned that automatic restoration is not realistic in the majority of use-cases, we
prefer to use the term ”intelligent”.
12 The examples are taken from [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]
Since you are interested in people that are members of your local clubs and not always
have access to this database, you also create a local database with the same schema.
Fortunately, you find an open source tool, which guarantees to transform the contents
of the administration database (the source) into your private environment (the target)
based on the following consistency rule:
      </p>
      <p>For each membership of a person with name N in club C in the source there is the
same membership of a person with name N in club C in the target.</p>
      <p>It sounds as if this perfectly fits your copying requirements. The left part of Fig. 3
shows an excerpt of the administration database indicating that John Henderson is a
member of both depicted clubs. According to the constraint definition, the two models
considered as a multimodel are inconsistent as long as your local database is empty.
The open source transformation promises to restore consistency. What result of the
transformation would you expect? We guess, you would say that ideally ”?” should be
replaced by an exact copy of the left-hand side in Fig. 3. However, surprisingly, the
open source tool produces a different result, see Fig. 4.</p>
      <p>The open source tool may act along the following paradigm (which is the common
QVT-R-”enforce”-semantics7): Since the object structure in the source (the left-hand
side in Fig. 3, this structure is shown again on the left-hand side of Fig. 4) is hierarchical,
the transformation traverses the hierarchy from top (clubs) to bottom (names). At each
level in the source an object on the respective level in the target is constructed except for
elements of primitive data types such as strings: If there is already a respective string
constructed in the target, it is reused. Furthermore, several elements on the same level
in the source are traversed sequentially. And, as a matter of course, determination of
person’s names in the target is according to the given consistency rule.</p>
      <p>Therefore for each club a new person with name ”John Henderson” is created, which
yields two different persons (with the same name) in the target. The paradigm of the
algorithm follows the hierarchical structure of XML-documents, i.e. it assumes
subelements not to be contained in several parent elements. It is not unusual for two persons
to have the same name, such that, subjectively, this does not produce a surprising result.
Moreover, the given constraint is not violated. But this result possibly surprises you!</p>
      <p>We conclude with the remark that some outcome of an update propagation may
surprise one human user and may not surprise another one. Even more may an automatic
restoration algorithm produce unexpected results (in the opinion of one actor)
simultaneously being a desired result (from the point of view of a colleague). We conjecture
that, in the near future, research on intelligent consistency restoration operations will
reveal a tremendous amount of exciting techniques competing with more practical
solutions, where the user selects from possible resulting models. Especially, the health care
industry may hopefully benefit from each new idea in the field.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Abou-Saleh</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cheney</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gibbons</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McKinna</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stevens</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Introduction to bidirectional transformations</article-title>
          .
          <source>In: Bidirectional Transformations - International Summer School</source>
          , Oxford, UK,
          <source>July 25-29</source>
          ,
          <year>2016</year>
          , Tutorial Lectures. pp.
          <fpage>1</fpage>
          -
          <lpage>28</lpage>
          (
          <year>2016</year>
          ), https://doi.org/ 10.1007/978-3-
          <fpage>319</fpage>
          -79108-1\_
          <fpage>1</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Amelunxen</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          , K o¨nigs,
          <string-name>
            <surname>A.</surname>
          </string-name>
          , R o¨tschke, T.,
          <article-title>Schu¨ rr, A.: MOFLON: A standard-compliant metamodeling framework with graph transformations</article-title>
          . In: Rensink,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Warmer</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.)
          <source>Model Driven Architecture - Foundations and Applications</source>
          , Second European Conference, ECMDA-FA
          <year>2006</year>
          , Bilbao, Spain,
          <source>July 10-13</source>
          ,
          <year>2006</year>
          , Proceedings. pp.
          <fpage>361</fpage>
          -
          <lpage>375</lpage>
          . Lecture Notes in Computer Science, Springer (
          <year>2006</year>
          ), https://doi.org/10.1007/ 11787044\_
          <fpage>27</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Anjorin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lauder</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patzina</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Schu¨rr, A.:
          <article-title>Emoflon: leveraging EMF and professional CASE tools</article-title>
          .
          <source>In: Informatik</source>
          <year>2011</year>
          :
          <article-title>Informatik schafft Communities, Beitra¨ge der 41</article-title>
          . Jahrestagung der Gesellschaft fu¨ r Informatik e.V.
          <article-title>(GI), 4</article-title>
          .-
          <fpage>7</fpage>
          .
          <fpage>10</fpage>
          .
          <year>2011</year>
          , Berlin,
          <source>Deutschland (Abstract Proceedings)</source>
          . p.
          <volume>281</volume>
          (
          <year>2011</year>
          ), http://subs.emis.de/LNI/Proceedings/ Proceedings192/article314.html
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bak</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Antkiewicz</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Czarnecki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wasowski</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Partial instances via subclassing</article-title>
          . In: Erwig et al. [
          <volume>31</volume>
          ], pp.
          <fpage>344</fpage>
          -
          <lpage>364</lpage>
          , https://doi.org/10.1007/ 978-3-
          <fpage>319</fpage>
          -02654-1\_
          <fpage>19</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Barriga</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rutle</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heldal</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Automatic model repair using reinforcement learning</article-title>
          .
          <source>In: Proceedings of AMMoRe@MoDELS'18</source>
          (to appear)
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. Be´zivin, J., Bu¨ttner,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Gogolla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Jouault</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Kurtev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Lindow</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          : Model Transformations? Transformation Models! In: Nierstrasz,
          <string-name>
            <surname>O</surname>
          </string-name>
          . (ed.)
          <source>MoDELS</source>
          <year>2006</year>
          , Genova,
          <source>Italy. Lecture Notes in Computer Science</source>
          , vol.
          <volume>4199</volume>
          , pp.
          <fpage>440</fpage>
          -
          <lpage>453</lpage>
          . Springer (
          <year>2006</year>
          ), http: //dx.doi.org/10.1007/11880240_
          <fpage>31</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Boronat</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Knapp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meseguer</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wirsing</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>What is a multi-modeling language</article-title>
          ? In: Corradini,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Montanari</surname>
          </string-name>
          ,
          <string-name>
            <surname>U</surname>
          </string-name>
          . (eds.) Recent Trends in Algebraic Development Techniques, 19th International Workshop, WADT 2008, Pisa, Italy, June 13-16,
          <year>2008</year>
          ,
          <source>Revised Selected Papers. Lecture Notes in Computer Science</source>
          , vol.
          <volume>5486</volume>
          , pp.
          <fpage>71</fpage>
          -
          <lpage>87</lpage>
          . Springer (
          <year>2008</year>
          ), https: //doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -03429-9\_
          <fpage>6</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Broy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Feilkas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herrmannsdoerfer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merenda</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ratiu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Seamless modelbased development: From isolated tools to integrated model engineering environments</article-title>
          .
          <source>Proceedings of the IEEE</source>
          <volume>98</volume>
          (
          <issue>4</issue>
          ),
          <fpage>526</fpage>
          -
          <lpage>545</lpage>
          (
          <year>2010</year>
          ), https://doi.org/10.1109/JPROC.
          <year>2009</year>
          .2037771
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Cabot</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Clariso</surname>
            <given-names>´</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Brambilla</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          , Ge´rard, S.:
          <article-title>Cognifying model-driven software engineering</article-title>
          .
          <source>In: Software Technologies: Applications</source>
          and
          <string-name>
            <surname>Foundations - STAF 2017 Collocated Workshops</surname>
          </string-name>
          , Marburg, Germany,
          <source>July 17-21</source>
          ,
          <year>2017</year>
          , Revised Selected Papers. pp.
          <fpage>154</fpage>
          -
          <lpage>160</lpage>
          (
          <year>2017</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -74730-9\_
          <fpage>13</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Liu</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Song</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Tree-to-tree neural networks for program translation</article-title>
          . CoRR abs/
          <year>1802</year>
          .03691 (
          <year>2018</year>
          ), http://arxiv.org/abs/
          <year>1802</year>
          .03691
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Cheney</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gibbons</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McKinna</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stevens</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>On principles of least change and least surprise for bidirectional transformations</article-title>
          .
          <source>Journal of Object Technology</source>
          <volume>16</volume>
          (
          <issue>1</issue>
          ), 3:
          <fpage>1</fpage>
          -
          <lpage>31</lpage>
          (
          <year>2017</year>
          ), https://doi.org/10.5381/jot.
          <year>2017</year>
          .
          <volume>16</volume>
          .1.a3
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Cicchetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ruscio</surname>
            ,
            <given-names>D.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eramo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierantonio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automating co-evolution in modeldriven engineering</article-title>
          .
          <source>In: 12th International IEEE Enterprise Distributed Object Computing Conference, ECOC</source>
          <year>2008</year>
          ,
          <volume>15</volume>
          -
          <fpage>19</fpage>
          September 2008, Munich, Germany. pp.
          <fpage>222</fpage>
          -
          <lpage>231</lpage>
          (
          <year>2008</year>
          ), https://doi.org/10.1109/EDOC.
          <year>2008</year>
          .44
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Cicchetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ruscio</surname>
            ,
            <given-names>D.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eramo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierantonio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>JTL: A bidirectional and change propagating transformation language</article-title>
          .
          <source>In: Software Language</source>
          Engineering - Third International Conference, SLE 2010, Eindhoven,
          <source>The Netherlands, October 12-13</source>
          ,
          <year>2010</year>
          , Revised Selected Papers. pp.
          <fpage>183</fpage>
          -
          <lpage>202</lpage>
          (
          <year>2010</year>
          ), https://doi.org/10.1007/ 978-3-
          <fpage>642</fpage>
          -19440-5\_
          <fpage>11</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Combemale</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>DeAntoni</surname>
          </string-name>
          , J.,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , France, R.B., Je´ze´quel, J.,
          <string-name>
            <surname>Gray</surname>
          </string-name>
          , J.:
          <article-title>Globalizing modeling languages</article-title>
          .
          <source>IEEE Computer 47(6)</source>
          ,
          <fpage>68</fpage>
          -
          <lpage>71</lpage>
          (
          <year>2014</year>
          ), https://doi.org/10. 1109/
          <string-name>
            <surname>MC</surname>
          </string-name>
          .
          <year>2014</year>
          .147
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Czarnecki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Foster</surname>
            ,
            <given-names>J.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          , La¨mmel, R., Schu¨rr,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Terwilliger</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.F.</surname>
          </string-name>
          :
          <article-title>Bidirectional transformations: A cross-discipline perspective</article-title>
          .
          <source>In: Proceedings of the 2Nd International Conference on Theory and Practice of Model Transformations</source>
          . pp.
          <fpage>260</fpage>
          -
          <lpage>283</lpage>
          . ICMT '
          <volume>09</volume>
          , Springer-Verlag, Berlin, Heidelberg (
          <year>2009</year>
          ), http://dx.doi.org/10.1007/ 978-3-
          <fpage>642</fpage>
          -02408-5_
          <fpage>19</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Demuth</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl-Ehrenleitner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Egyed</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Towards flexible, incremental, and paradigm-agnostic consistency checking in multi-level modeling environments</article-title>
          .
          <source>In: Proceedings of the Workshop on Multi-Level Modelling co-located with ACM/IEEE 17th International Conference on Model Driven Engineering Languages &amp; Systems (MoDELS</source>
          <year>2014</year>
          ), Valencia, Spain,
          <year>September 28</year>
          ,
          <year>2014</year>
          . pp.
          <fpage>73</fpage>
          -
          <lpage>82</lpage>
          (
          <year>2014</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1286</volume>
          /p8.pdf
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          :
          <article-title>Towards generic formal semantics for consistency of heterogeneous multimodels</article-title>
          .
          <source>Tech. Rep. 2011-07</source>
          , The University of Waterloo (
          <year>2011</year>
          ), http://gsd.uwaterloo.ca/ node/330
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kokaly</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maibaum</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Mapping-aware megamodeling: Design patterns and laws</article-title>
          . In: Erwig et al. [
          <volume>31</volume>
          ], pp.
          <fpage>322</fpage>
          -
          <lpage>343</lpage>
          , https://doi.org/10.1007/ 978-3-
          <fpage>319</fpage>
          -02654-1\_
          <fpage>18</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          , Ko¨nig, H.,
          <string-name>
            <surname>Lawford</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Multiple model synchronization with multiary delta lenses</article-title>
          . In: Fundamental Approaches to Software Engineering, 21st International Conference, FASE 2018,
          <article-title>Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018</article-title>
          , Thessaloniki, Greece,
          <source>April 14-20</source>
          ,
          <year>2018</year>
          , Proceedings. pp.
          <fpage>21</fpage>
          -
          <lpage>37</lpage>
          (
          <year>2018</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -89363-1\_
          <fpage>2</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiong</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Czarnecki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Specifying overlaps of heterogeneous models for global consistency checking</article-title>
          .
          <source>In: Models, LNCS</source>
          , vol.
          <volume>6627</volume>
          , pp.
          <fpage>165</fpage>
          -
          <lpage>179</lpage>
          . Springer (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiong</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Czarnecki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ehrig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          , Hermann,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Orejas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            :
            <surname>From</surname>
          </string-name>
          state
          <article-title>- to delta-based bidirectional model transformations: The symmetric case</article-title>
          . In: Whittle,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Clark</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          , Ku¨hne, T. (eds.)
          <source>Model Driven Engineering Languages and Systems</source>
          , 14th International Conference, MODELS 2011, Wellington, New Zealand,
          <source>October 16-21</source>
          ,
          <year>2011</year>
          .
          <source>Proceedings. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6981</volume>
          , pp.
          <fpage>304</fpage>
          -
          <lpage>318</lpage>
          . Springer (
          <year>2011</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -24485-8\_
          <fpage>22</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Easterbrook</surname>
            ,
            <given-names>S.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chechik</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A framework for multi-valued reasoning over inconsistent viewpoints</article-title>
          .
          <source>In: ICSE</source>
          . pp.
          <fpage>411</fpage>
          -
          <lpage>420</lpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Egyed</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Fixing inconsistencies in UML design models</article-title>
          .
          <source>In: 29th International Conference on Software Engineering (ICSE</source>
          <year>2007</year>
          ), Minneapolis, MN, USA, May
          <volume>20</volume>
          -26,
          <year>2007</year>
          . pp.
          <fpage>292</fpage>
          -
          <lpage>301</lpage>
          (
          <year>2007</year>
          ), http://dx.doi.org/10.1109/ICSE.
          <year>2007</year>
          .38
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Egyed</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automatically detecting and tracking inconsistencies in software design models</article-title>
          .
          <source>IEEE Trans. Software Eng</source>
          .
          <volume>37</volume>
          (
          <issue>2</issue>
          ),
          <fpage>188</fpage>
          -
          <lpage>204</lpage>
          (
          <year>2011</year>
          ), https://doi.org/10.1109/ TSE.
          <year>2010</year>
          .38
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Ehrig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mahr</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Fundamentals of Algebraic Specification 1: Equations</article-title>
          and
          <string-name>
            <given-names>Initial</given-names>
            <surname>Semantics</surname>
          </string-name>
          . Springer-Verlag Berlin, Heidelberg (
          <year>1985</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Ehrig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ehrig</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hermann</surname>
          </string-name>
          , F.:
          <article-title>From model transformation to model integration based on the algebraic approach to triple graph grammars</article-title>
          .
          <source>ECEASST</source>
          <volume>10</volume>
          (
          <year>2008</year>
          ), http:// journal.ub.tu-berlin.de/index.php/eceasst/article/view/154
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Engels</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hausmann</surname>
            ,
            <given-names>J.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heckel</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sauer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Dynamic meta modeling: A graphical approach to the operational semantics of behavioral diagrams in UML</article-title>
          . In:
          <article-title>UML 2000 - The Unified Modeling Language, Advancing the Standard</article-title>
          , Third International Conference, York, UK, October 2-
          <issue>6</issue>
          ,
          <year>2000</year>
          , Proceedings. pp.
          <fpage>323</fpage>
          -
          <lpage>337</lpage>
          (
          <year>2000</year>
          ), https://doi.org/ 10.1007/3-540-40011-7\_
          <fpage>23</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Engels</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heckel</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , Ku¨ster,
          <string-name>
            <surname>J.M.:</surname>
          </string-name>
          <article-title>The consistency workbench: A tool for consistency management in uml-based development</article-title>
          . In: Stevens,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Whittle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Booch</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.)
          <article-title>UML 2003 - The Unified Modeling Language</article-title>
          ,
          <source>Modeling Languages and Applications</source>
          , 6th International Conference, San Francisco, CA, USA, October
          <volume>20</volume>
          -
          <issue>24</issue>
          ,
          <year>2003</year>
          ,
          <source>Proceedings. Lecture Notes in Computer Science</source>
          , vol.
          <volume>2863</volume>
          , pp.
          <fpage>356</fpage>
          -
          <lpage>359</lpage>
          . Springer (
          <year>2003</year>
          ), https: //doi.org/10.1007/978-3-
          <fpage>540</fpage>
          -45221-8\_
          <fpage>30</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Eramo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Malavolta</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Muccini</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pelliccione</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierantonio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A model-driven approach to automate the propagation of changes among architecture description languages</article-title>
          .
          <source>Software and System Modeling</source>
          <volume>11</volume>
          (
          <issue>1</issue>
          ),
          <fpage>29</fpage>
          -
          <lpage>53</lpage>
          (
          <year>2012</year>
          ), https://doi.org/10.1007/ s10270-010-0170-z
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Eramo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierantonio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Enhancing the JTL tool for bidirectional transformations</article-title>
          .
          <source>In: Conference Companion of the 2nd International Conference on Art, Science, and Engineering of Programming</source>
          , Nice, France,
          <source>April 09-12</source>
          ,
          <year>2018</year>
          . pp.
          <fpage>36</fpage>
          -
          <lpage>41</lpage>
          (
          <year>2018</year>
          ), http://doi.acm.
          <source>org/10</source>
          .1145/3191697.3191720
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Erwig</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paige</surname>
            ,
            <given-names>R.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wyk</surname>
          </string-name>
          , E.V. (eds.):
          <source>Software Language Engineering - 6th International Conference, SLE 2013</source>
          ,
          <article-title>Indianapolis</article-title>
          , IN, USA, October
          <volume>26</volume>
          -
          <issue>28</issue>
          ,
          <year>2013</year>
          . Proceedings, LNCS, vol.
          <volume>8225</volume>
          . Springer (
          <year>2013</year>
          ), http://dx.doi.org/10.1007/ 978-3-
          <fpage>319</fpage>
          -02654-1
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Evans</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Domain-Driven</surname>
          </string-name>
          Design
          <article-title>- Tackling Complexity in the Heart of Software</article-title>
          .
          <source>AddisonWesley (Sep</source>
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>Fiadeiro</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          :
          <article-title>Categories for Software Engineering</article-title>
          . Springer (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>Foster</surname>
            ,
            <given-names>J.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greenwald</surname>
            ,
            <given-names>M.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moore</surname>
            ,
            <given-names>J.T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierce</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schmitt</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem</article-title>
          .
          <source>ACM Trans. Program. Lang. Syst</source>
          .
          <volume>29</volume>
          (
          <issue>3</issue>
          ),
          <volume>17</volume>
          (
          <year>2007</year>
          ), http://doi.acm.
          <source>org/10</source>
          .1145/ 1232420.1232424
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>Goguen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ginali</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>A categorical approach to general systems theory</article-title>
          .
          <source>In: Category Theory and Computer Programming</source>
          . pp.
          <fpage>257</fpage>
          -
          <lpage>270</lpage>
          . Plenum, New York (
          <year>1978</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          36.
          <string-name>
            <surname>Habel</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sandmann</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Graph repair by graph programs</article-title>
          . To appear
          <source>in Proc. of GCM@STAF</source>
          ,
          <year>2018</year>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          37.
          <string-name>
            <surname>James</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>The Tao of Programming</article-title>
          .
          <source>InfoBooks</source>
          (
          <year>1987</year>
          ), https://books.google.de/ books?id=idkNAAAACAAJ
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          38.
          <string-name>
            <surname>Johnson</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosebrugh</surname>
            ,
            <given-names>R.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wood</surname>
            ,
            <given-names>R.J.</given-names>
          </string-name>
          :
          <article-title>Lenses, fibrations and universal translations</article-title>
          .
          <source>Mathematical Structures in Computer Science</source>
          <volume>22</volume>
          (
          <issue>1</issue>
          ),
          <fpage>25</fpage>
          -
          <lpage>42</lpage>
          (
          <year>2012</year>
          ), https://doi.org/ 10.1017/S0960129511000442
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          39. Ka¨stner,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Gogolla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Selic</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          :
          <article-title>From (imperfect) object diagrams to (imperfect) class diagrams: New ideas and vision paper</article-title>
          .
          <source>In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS</source>
          <year>2018</year>
          , Copenhagen, Denmark,
          <source>October 14-19</source>
          ,
          <year>2018</year>
          . pp.
          <fpage>13</fpage>
          -
          <lpage>22</lpage>
          (
          <year>2018</year>
          ), http://doi.acm.
          <source>org/10</source>
          . 1145/3239372.3239381
        </mixed-citation>
      </ref>
      <ref id="ref40">
        <mixed-citation>
          40. Ka¨stner,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Apel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            :
            <surname>Feature-Oriented Software</surname>
          </string-name>
          Development, pp.
          <fpage>346</fpage>
          -
          <lpage>382</lpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg (
          <year>2013</year>
          ), https://doi.org/10.1007/ 978-3-
          <fpage>642</fpage>
          -35992-7_
          <fpage>10</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref41">
        <mixed-citation>
          41.
          <string-name>
            <surname>Kessentini</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sahraoui</surname>
            ,
            <given-names>H.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wimmer</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>Automated metamodel/model co-evolution using a multi-objective optimization approach</article-title>
          .
          <source>In: Modelling Foundations and Applications - 12th European Conference, ECMFA</source>
          <year>2016</year>
          ,
          <article-title>Held as Part of STAF 2016</article-title>
          , Vienna, Austria,
          <source>July 6-7</source>
          ,
          <year>2016</year>
          , Proceedings. pp.
          <fpage>138</fpage>
          -
          <lpage>155</lpage>
          (
          <year>2016</year>
          ), https://doi.org/10.1007/ 978-3-
          <fpage>319</fpage>
          -42061-5\_
          <fpage>9</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref42">
        <mixed-citation>
          42.
          <string-name>
            <surname>Knapp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mossakowski</surname>
          </string-name>
          , T.:
          <article-title>Multi-view consistency in UML: A survey</article-title>
          . In: Graph Transformation, Specifications, and Nets - In
          <source>Memory of Hartmut Ehrig</source>
          . pp.
          <fpage>37</fpage>
          -
          <lpage>60</lpage>
          (
          <year>2018</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -75396-6\_
          <fpage>3</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref43">
        <mixed-citation>
          43.
          <string-name>
            <surname>Ko</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zan</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          :
          <article-title>Bigul: a formally verified core language for putback-based bidirectional programming</article-title>
          .
          <source>In: Proceedings of the 2016 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation</source>
          ,
          <string-name>
            <surname>PEPM</surname>
          </string-name>
          <year>2016</year>
          ,
          <article-title>St</article-title>
          . Petersburg, FL, USA, January
          <volume>20</volume>
          -
          <issue>22</issue>
          ,
          <year>2016</year>
          . pp.
          <fpage>61</fpage>
          -
          <lpage>72</lpage>
          (
          <year>2016</year>
          ), http://doi.acm.
          <source>org/10</source>
          .1145/2847538.2847544
        </mixed-citation>
      </ref>
      <ref id="ref44">
        <mixed-citation>
          44. Ko¨nig, H.,
          <string-name>
            <surname>Diskin</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          :
          <article-title>Efficient consistency checking of interrelated models</article-title>
          .
          <source>In: Modelling Foundations and Applications - 13th European Conference, ECMFA</source>
          <year>2017</year>
          ,
          <article-title>Held as Part of STAF 2017</article-title>
          , Marburg, Germany,
          <source>July 19-20</source>
          ,
          <year>2017</year>
          , Proceedings. pp.
          <fpage>161</fpage>
          -
          <lpage>178</lpage>
          (
          <year>2017</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -61482-3_
          <fpage>10</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref45">
        <mixed-citation>
          45.
          <string-name>
            <surname>Leblebici</surname>
          </string-name>
          , E.:
          <article-title>Inter-Model Consistency Checking and Restoration with Triple Graph Grammars</article-title>
          .
          <source>Ph.D. thesis</source>
          , Darmstadt University of Technology, Germany (
          <year>2018</year>
          ), http:// tuprints.ulb.tu-darmstadt.de/7426/
        </mixed-citation>
      </ref>
      <ref id="ref46">
        <mixed-citation>
          46.
          <string-name>
            <surname>Lopez-Herrejon</surname>
            ,
            <given-names>R.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Egyed</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Detecting inconsistencies in multi-view models with variability</article-title>
          .
          <source>In: 6th European Conference on Modelling Foundations and Applications (ECMFA)</source>
          , Paris, France. pp.
          <fpage>217</fpage>
          -
          <lpage>232</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref47">
        <mixed-citation>
          47.
          <string-name>
            <surname>Macedo</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cunha</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Least-change bidirectional model transformation with QVT-R and ATL</article-title>
          .
          <source>Software and System Modeling</source>
          <volume>15</volume>
          (
          <issue>3</issue>
          ),
          <fpage>783</fpage>
          -
          <lpage>810</lpage>
          (
          <year>2016</year>
          ), https://doi.org/10. 1007/s10270-014-0437-x
        </mixed-citation>
      </ref>
      <ref id="ref48">
        <mixed-citation>
          48.
          <string-name>
            <surname>Macedo</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tiago</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cunha</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A feature-based classification of model repair approaches</article-title>
          .
          <source>IEEE Trans. Software Eng</source>
          .
          <volume>43</volume>
          (
          <issue>7</issue>
          ),
          <fpage>615</fpage>
          -
          <lpage>640</lpage>
          (
          <year>2017</year>
          ), https://doi.org/10.1109/ TSE.
          <year>2016</year>
          .2620145
        </mixed-citation>
      </ref>
      <ref id="ref49">
        <mixed-citation>
          49.
          <string-name>
            <surname>Meertens</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Designing constraint maintainers for user interaction</article-title>
          . In: Mu,
          <string-name>
            <surname>C</surname>
          </string-name>
          . (ed.) Third Workshop on Programmable Structured Documents, PSD Laboratory, Tokyo University. pp.
          <fpage>1</fpage>
          -
          <lpage>3</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref50">
        <mixed-citation>
          50.
          <string-name>
            <surname>Nentwich</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Finkelstein</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Consistency management with repair actions</article-title>
          .
          <source>In: Proceedings of the 25th International Conference on Software Engineering, May</source>
          <volume>3</volume>
          -
          <issue>10</issue>
          ,
          <year>2003</year>
          , Portland, Oregon, USA. pp.
          <fpage>455</fpage>
          -
          <lpage>464</lpage>
          (
          <year>2003</year>
          ), http://computer.org/ proceedings/icse/1877/18770455abs.htm
        </mixed-citation>
      </ref>
      <ref id="ref51">
        <mixed-citation>
          51.
          <string-name>
            <surname>Paige</surname>
            ,
            <given-names>R.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brooke</surname>
            ,
            <given-names>P.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ostroff</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          :
          <article-title>Metamodel-based model conformance and multiview consistency checking</article-title>
          .
          <source>ACM Trans. Softw. Eng. Methodol</source>
          .
          <volume>16</volume>
          (
          <issue>3</issue>
          ),
          <volume>11</volume>
          (
          <year>2007</year>
          ), http: //doi.acm.
          <source>org/10</source>
          .1145/1243987.1243989
        </mixed-citation>
      </ref>
      <ref id="ref52">
        <mixed-citation>
          52.
          <string-name>
            <surname>Rabbi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lamo</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>I.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kristensen</surname>
            ,
            <given-names>L.M.:</given-names>
          </string-name>
          <article-title>A diagrammatic approach to model completion</article-title>
          . In: Dingel,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Kokaly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Lucio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Salay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Vangheluwe</surname>
          </string-name>
          , H. (eds.)
          <source>Proceedings of the 4th Workshop on the Analysis of Model Transformations co-located with the 18th International Conference on Model Driven Engineering Languages and Systems (MODELS</source>
          <year>2015</year>
          ), Ottawa, Canada,
          <year>September 28</year>
          ,
          <year>2015</year>
          .
          <source>CEUR Workshop Proceedings</source>
          , vol.
          <volume>1500</volume>
          , pp.
          <fpage>56</fpage>
          -
          <lpage>65</lpage>
          . CEUR-WS.org (
          <year>2015</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1500</volume>
          /paper7.pdf
        </mixed-citation>
      </ref>
      <ref id="ref53">
        <mixed-citation>
          53.
          <string-name>
            <surname>Ruscio</surname>
            ,
            <given-names>D.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Iovino</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pierantonio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Coupled evolution in model-driven engineering</article-title>
          .
          <source>IEEE Software 29(6)</source>
          ,
          <fpage>78</fpage>
          -
          <lpage>84</lpage>
          (
          <year>2012</year>
          ), https://doi.org/10.1109/MS.
          <year>2012</year>
          .153
        </mixed-citation>
      </ref>
      <ref id="ref54">
        <mixed-citation>
          54.
          <string-name>
            <surname>Rutle</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lamo</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>A Diagrammatic Approach to Model Transformations</article-title>
          .
          <source>In: Proceedings of the 2008 Euro American Conference on Telematics and Information Systems (EATIS</source>
          <year>2008</year>
          ). pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          . ACM (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref55">
        <mixed-citation>
          55.
          <string-name>
            <surname>Sabetzadeh</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nejati</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Liaskos</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Easterbrook</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chechik</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Consistency checking of conceptual models via model merging</article-title>
          .
          <source>In: RE</source>
          . pp.
          <fpage>221</fpage>
          -
          <lpage>230</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref56">
        <mixed-citation>
          56.
          <string-name>
            <surname>Schuerr</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Specification of graph translators with triple graph grammars</article-title>
          .
          <source>Lecture Notes in Comput. Sci</source>
          .
          <volume>903</volume>
          ,
          <fpage>151</fpage>
          -
          <lpage>163</lpage>
          (
          <year>1994</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref57">
        <mixed-citation>
          57.
          <string-name>
            <surname>Sen</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Precup</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Partial model completion in model driven engineering using constraint logic programming</article-title>
          .
          <source>In: Proceedings of the International Conference on the Applications of Declarative Programming</source>
          (
          <year>2007</year>
          ), http://www.irisa.fr/triskell/ publis/2007/sen07b.pdf
        </mixed-citation>
      </ref>
      <ref id="ref58">
        <mixed-citation>
          58. Stu¨nkel,
          <string-name>
            <given-names>P.</given-names>
            , Ko¨nig, H.,
            <surname>Lamo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            ,
            <surname>Rutle</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Multimodel correspondence through inter-model constraints</article-title>
          .
          <source>In: Conference Companion of the 2nd International Conference on Art, Science, and Engineering of Programming</source>
          , Nice, France,
          <source>April 09-12</source>
          ,
          <year>2018</year>
          . pp.
          <fpage>9</fpage>
          -
          <lpage>17</lpage>
          (
          <year>2018</year>
          ), http: //doi.acm.
          <source>org/10</source>
          .1145/3191697.3191715
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>