Direkt zum Inhalt
Eine algebraische Fläche vom Grad 6 (eine "Sextik"), die 65 Singularitäten besitzt.
Sie sind hier:» Universität » Mathematik und Informatik » Arbeitsgruppen » Softwaretechnik » nassar » EMF Model Repair
  • Print this page
  • create PDF file
  • EMF Model Repair (Installation and running example)

    First of all, the following Figure presents our approach:


   2. The invalid webpage model: Please download and import the zip file which contains the invalid Webpage model presented in the paper.

  • Use Guide:
    1. Generating the model transformation system containing the repair rules from a given meta-model: It could be done via File -> New -> Other -> EMF Model Repair-> Create EMF Repair grammar project. Then, select the meta-model from registry. The output is an Eclipse plug-in containing the corresponding model transformation system. Please note that the model transformation system is generated once to repair instance models of the given meta-model.

    2. Repair a given instance model of the given meta-model: First run the generated Eclipse plug-in which contains the corresponding model transformation system (repair actions) , e.g., by starting a new Eclipse instance via right mouse-click on it and selecting Run As -> Eclipse application. After that, you are able to use the tool to repair any instance model of the given meta-model. Note that the instance model has to contain exactly one root node of the root type. (Regarding our running example, you can here import the previous zip file containing the invalid Webpage model and repair it using our tool)

      To repair your model at any time of the model design, right click on an element of the instance model (opened by the EMF editor) and then you will get the following EMF Model Repair options as shown in the Figure below:
      1. Repair Interactively (Semi-automatic)
      2. Trim Model (Randomly)
      3. Complete Model (Randomly)
      4. Set Required Attribute Values (Randomly)
      5. Set Required Attribute Values (JSON file)


    Please note that model repair may be interleaved with model editing, i.e., the modeler starts creating a model, let it repair (or complete) at some point, continues editing, let it repair (or complete), and so on.  Additionally, the tool can automatically guide the modeller to repair the whole model in two modes: randomly or interactively.

    Fully instantiable meta-model: We call a meta-model fully instantiable (fully finitely instantiable) if it satisfies the property that for every given finite model M w.r.t. the meta-model such that the model M does not violate any upper bound, there exists a finite valid model M' w.r.t the meta-model which satisfies the lower bounds and upper bounds of the meta-model and the model M is a submodel of the model M'.
  • An example of the semi-automatic repair (supporting user interaction):

    We present an example of repairing the invalid Webpage model (presented in Fig. 2 of the paper) in a semi-automatic way.

    Figures 1-9 show all the dialogs presented to the modeler to interactively repair the whole model step by step.

    Figure 11 presents the second output of the repair process. The second output is an ordered list of rule applications  presented as a log model. The log model presents all the repair actions and their model contexts which are selected by the modeller to repair the whole model.


    Fig. 1
     Fig. 2
     Fig. 3
     Fig. 4
     Fig. 5
     Fig. 6
     Fig. 7
     Fig. 8
     Fig. 9
     Fig. 10
     Fig. 11 The second output: An ordered list of the selected rule applications with their contexts



  • Scalability test case

An interesting test case that motivates us to carry out a scalability study in the future is that we have applied the tool to randomly resolve more than
150 inconsistencies of three different kinds in a model with 10,000 elements. The tool just took about 58 milliseconds to complete such a large model. The
used meta-model composes 8 constrained element types and the test model is designed so that its structure is increased fairly w.r.t the model size: The test
model is composed of copies of an initial valid model part containing elements of all given meta-model types.

Please note that the meta-model used in the scalability test is a much more complex version than the one presented in the paper.

1. Please download and import the following zip file containing the meta-model and the derived repair rules to your first Eclipse instance.
2. Please download and import the following zip file containing the instance model with 10,000 elements and 160 inconsistencies of three different kinds.


  • Rule Schemes and example rules can be found here.


  • Correctness proof:
    Please note that in [1] the whole formalization of the work and  the correctness proof are presented. 
    [1]  Nebras Nassar, Jens Kosiol and Hendrik Radke: Rule-based Repair of EMF Models: Formalization and Correctness Proof. In: 8th International Workshop on Graph Computation Models (GCM), 2017. accepted. (to appear).


Zuletzt aktualisiert: 13.12.2017 · Nassarn

Fb. 12 - Mathematik und Informatik

Fb. 12 - Mathematik und Informatik, Hans-Meerwein-Straße 6, D-35032 Marburg
Tel. +49 6421/28-21514, Fax +49 6421/28-25466, E-Mail: dekanatfb12@mathematik.uni-marburg.de

URL dieser Seite: https://www.uni-marburg.de/fb12/arbeitsgruppen/swt/nassarn/modelrepair/index.html

Impressum | Datenschutz