{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,26]],"date-time":"2026-02-26T15:31:37Z","timestamp":1772119897275,"version":"3.50.1"},"reference-count":35,"publisher":"Springer Science and Business Media LLC","issue":"4","license":[{"start":{"date-parts":[[2024,11,4]],"date-time":"2024-11-04T00:00:00Z","timestamp":1730678400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2024,11,4]],"date-time":"2024-11-04T00:00:00Z","timestamp":1730678400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/100008967","name":"Philipps-Universit\u00e4t Marburg","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100008967","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Innovations Syst Softw Eng"],"published-print":{"date-parts":[[2024,12]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>Working with models can lead to inconsistencies, e.g., due to erroneous or contradictory actions during concurrent modeling processes. Modern modeling environments typically tolerate inconsistencies and support their detection. However, at a later stage of development, models are expected to be consistent, meaning their inconsistencies should be considered and resolved. The process of resolving model inconsistencies is commonly referred to as model repair. Our approach to model repair is semi-automatic in the sense that the repair tool computes appropriate repair plans and the modeler decides which path to take. The speciality of our approach is that the repair process can register any small improvement in the model. This allows the interaction with the user to be optimized, resulting in an approach with a high level of automation on the one hand and flexible configuration options on the other. The approach focuses on providing repair plans that do not have side effects, i.e., the computed repair plans do not inadvertently introduce a new inconsistency of already repaired constraints into the model. Since models often have a graph-like structure, we present our approach to model repair based on graphs. Our approach is completely formal\u2014we use the algebraic graph transformation approach to prove its correctness. We also present a prototype implementation of our repair approach based on the Eclipse Modeling Framework and Henshin, a model transformation engine based on graph transformation, to perform the actual model repair. A first performance evaluation shows that graphs with up to 1000 nodes can be repaired in about 10\u00a0s.<\/jats:p>","DOI":"10.1007\/s11334-024-00587-w","type":"journal-article","created":{"date-parts":[[2024,11,4]],"date-time":"2024-11-04T07:03:35Z","timestamp":1730703815000},"page":"597-618","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Empowering model repair: a rule-based approach to graph repair without side effects\u2014extended version"],"prefix":"10.1007","volume":"20","author":[{"ORCID":"https:\/\/orcid.org\/0009-0001-9077-9817","authenticated-orcid":false,"given":"Alexander","family":"Lauer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4733-2777","authenticated-orcid":false,"given":"Jens","family":"Kosiol","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3975-5238","authenticated-orcid":false,"given":"Gabriele","family":"Taentzer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2024,11,4]]},"reference":[{"key":"587_CR1","doi-asserted-by":"publisher","unstructured":"Stevens P (2014) Bidirectionally tolerating inconsistency: partial transformations. In: Fundamental approaches to software engineering\u201417th international conference, FASE 2014. Springer, pp 32\u201346. https:\/\/doi.org\/10.1007\/978-3-642-54804-8_3","DOI":"10.1007\/978-3-642-54804-8_3"},{"key":"587_CR2","doi-asserted-by":"publisher","unstructured":"Mayr-Dorn C, Kretschmer R, Egyed A, Heradio R, Fern\u00e1ndez-Amor\u00f3s D (2021) Inconsistency-tolerating guidance for software engineering processes. In: 43rd IEEE\/ACM international conference on software engineering: new ideas and emerging results, ICSE (NIER) 2021. IEEE, pp 6\u201310. https:\/\/doi.org\/10.1109\/ICSE-NIER52604.2021.00010","DOI":"10.1109\/ICSE-NIER52604.2021.00010"},{"key":"587_CR3","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2016.2620145","author":"N Macedo","year":"2017","unstructured":"Macedo N, Tiago J, Cunha A (2017) A feature-based classification of model repair approaches. IEEE Trans Softw Eng. https:\/\/doi.org\/10.1109\/TSE.2016.2620145","journal-title":"IEEE Trans Softw Eng"},{"key":"587_CR4","doi-asserted-by":"publisher","DOI":"10.1007\/s10270-022-00996-0","author":"L Marchezan","year":"2023","unstructured":"Marchezan L, Kretschmer R, Assun\u00e7\u00e3o WKG, Reder A, Egyed A (2023) Generating repairs for inconsistent models. Softw Syst Model. https:\/\/doi.org\/10.1007\/s10270-022-00996-0","journal-title":"Softw Syst Model"},{"key":"587_CR5","doi-asserted-by":"publisher","unstructured":"Nassar N, Radke H, Arendt T (2017) Rule-based repair of EMF models: an automated interactive approach. In: Theory and practice of model transactions\u201410th international conference, ICMT@STAF 2017. Springer, pp 171\u2013181. https:\/\/doi.org\/10.1007\/978-3-319-61473-1_12","DOI":"10.1007\/978-3-319-61473-1_12"},{"key":"587_CR6","doi-asserted-by":"crossref","unstructured":"Nassar N, Kosiol J, Radke H (2017) Rule-based repair of emf models: formalization and correctness proof. In: Graph computation models (GCM 2017), electronic pre-proceedings. https:\/\/pages.di.unipi.it\/corradini\/Workshops\/GCM2017\/papers\/Nassar-Kosiol-Radke-GCM2017.pdf","DOI":"10.1007\/978-3-319-61473-1_12"},{"key":"587_CR7","doi-asserted-by":"publisher","unstructured":"Schneider S, Lambers L, Orejas F (2019) A logic-based incremental approach to graph repair. In: Fundamental approaches to software engineering\u201422nd international conference, FASE 2019. Springer, pp 151\u2013167. https:\/\/doi.org\/10.1007\/978-3-030-16722-6_9","DOI":"10.1007\/978-3-030-16722-6_9"},{"key":"587_CR8","doi-asserted-by":"publisher","unstructured":"Habel A, Sandmann C (2018) Graph repair by graph programs. In: Software technologies: applications and foundations\u2014STAF 2018. Springer, pp 431\u2013446. https:\/\/doi.org\/10.1007\/978-3-030-04771-9_31","DOI":"10.1007\/978-3-030-04771-9_31"},{"key":"587_CR9","doi-asserted-by":"publisher","unstructured":"Sandmann C, Habel A (2019) Rule-based graph repair. In: Proceedings tenth international workshop on graph computation models, GCM@STAF 2019, pp 87\u2013104. https:\/\/doi.org\/10.4204\/EPTCS.309.5","DOI":"10.4204\/EPTCS.309.5"},{"key":"587_CR10","doi-asserted-by":"publisher","unstructured":"Sandmann C (2020) Graph repair and its application to meta-modeling. In: Hoffmann B, Minas M (eds) Proceedings of the eleventh international workshop on graph computation models, GCM@STAF 2020, pp 13\u201334. https:\/\/doi.org\/10.4204\/EPTCS.330.2","DOI":"10.4204\/EPTCS.330.2"},{"key":"587_CR11","unstructured":"Sandmann C (2021) A theory on graph generation and graph repair with application to meta-modeling. PhD dissertation, University of Oldenburg. http:\/\/uol.de\/f\/2\/dept\/informatik\/download\/Promotionen\/Sandmann_Dissertation.pdf"},{"key":"587_CR12","doi-asserted-by":"publisher","unstructured":"Ehrig H (1978) Introduction to the algebraic theory of graph grammars (a survey). In: Graph-grammars and their application to computer science and biology, international workshop, 1978. Springer, pp 1\u201369. https:\/\/doi.org\/10.1007\/BFb0025714","DOI":"10.1007\/BFb0025714"},{"key":"587_CR13","doi-asserted-by":"publisher","unstructured":"Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of algebraic graph transformation, ser. Monographs in theoretical computer science. An EATCS series. Springer. https:\/\/doi.org\/10.1007\/3-540-31188-2","DOI":"10.1007\/3-540-31188-2"},{"key":"587_CR14","doi-asserted-by":"publisher","unstructured":"Habel A, Pennemann K (2009) Correctness of high-level transformation systems relative to nested conditions. In: Mathematical structures in computer science, pp 245\u2013296. https:\/\/doi.org\/10.1017\/S0960129508007202","DOI":"10.1017\/S0960129508007202"},{"key":"587_CR15","doi-asserted-by":"publisher","unstructured":"Lambers L, Str\u00fcber D, Taentzer G, Born K, Huebert J (2018) Multi-granular conflict and dependency analysis in software engineering based on graph transformation. In: Chaudron M,\u00a0Crnkovic I,\u00a0Chechik M,\u00a0Harman M (eds) Proceedings of the 40th international conference on software engineering, ICSE 2018, Gothenburg, Sweden, May 27\u2013June 03, 2018. ACM, pp 716\u2013727. https:\/\/doi.org\/10.1145\/3180155.3180258","DOI":"10.1145\/3180155.3180258"},{"key":"587_CR16","doi-asserted-by":"publisher","first-page":"105","DOI":"10.1016\/j.jlamp.2018.11.004","volume":"103","author":"L Lambers","year":"2019","unstructured":"Lambers L, Born K, Kosiol J, Str\u00fcber D, Taentzer G (2019) Granularity of conflicts and dependencies in graph transformation systems: a two-dimensional approach. J Log Algebr Methods Program 103:105\u2013129. https:\/\/doi.org\/10.1016\/j.jlamp.2018.11.004","journal-title":"J Log Algebr Methods Program"},{"key":"587_CR17","doi-asserted-by":"publisher","unstructured":"Lauer A, Kosiol J, Taentzer G (2023) Empowering model repair: a rule-based approach to graph repair without side effects. In: ACM\/IEEE international conference on model driven engineering languages and systems, MODELS 2023 companion, V\u00e4ster\u00e5s, Sweden, October 1\u20136, 2023. IEEE, pp 831\u2013840. https:\/\/doi.org\/10.1109\/MODELS-C59198.2023.00132","DOI":"10.1109\/MODELS-C59198.2023.00132"},{"key":"587_CR18","unstructured":"Eclipse (2024) Eclipse modeling framework (emf). http:\/\/www.eclipse.org\/emf"},{"key":"587_CR19","doi-asserted-by":"publisher","unstructured":"Arendt T, Biermann E, Jurack S, Krause C, Taentzer G (2010) Henshin: advanced concepts and tools for in-place EMF model transformations. In: Model driven engineering languages and systems\u201413th international conference, MODELS 2010. Springer, pp 121\u2013135. https:\/\/doi.org\/10.1007\/978-3-642-16145-2_9","DOI":"10.1007\/978-3-642-16145-2_9"},{"key":"587_CR20","doi-asserted-by":"publisher","unstructured":"Str\u00fcber D, Born K, Gill KD, Groner R, Kehrer T, Ohrndorf M, Tichy M (2017) Henshin: a usability-focused framework for EMF model transformation development. In: Graph transformation\u201410th international conference, ICGT 2017. Springer, pp 196\u2013208. https:\/\/doi.org\/10.1007\/978-3-319-61470-0_12","DOI":"10.1007\/978-3-319-61470-0_12"},{"key":"587_CR21","doi-asserted-by":"publisher","unstructured":"Rensink A (2004) Representing first-order logic using graphs. In: Graph transformations, second international conference, ICGT 2004. Springer, pp 319\u2013335. https:\/\/doi.org\/10.1007\/978-3-540-30203-2_23","DOI":"10.1007\/978-3-540-30203-2_23"},{"key":"587_CR22","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2017.08.006","author":"H Radke","year":"2018","unstructured":"Radke H, Arendt T, Becker JS, Habel A, Taentzer G (2018) Translating essential OCL invariants to nested graph constraints for generating instances of meta-models. Sci Comput Program. https:\/\/doi.org\/10.1016\/j.scico.2017.08.006","journal-title":"Sci Comput Program"},{"key":"587_CR23","doi-asserted-by":"publisher","unstructured":"Lauer A (2023) Rule-based graph repair using minimally restricted consistency-improving transformations. Master\u2019s thesis, Philipps-Universit\u00e4t Marburg, Department of Mathematics and Computer Science. https:\/\/doi.org\/10.48550\/arXiv.2307.09150","DOI":"10.48550\/arXiv.2307.09150"},{"key":"587_CR24","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2021.102729","author":"J Kosiol","year":"2022","unstructured":"Kosiol J, Str\u00fcber D, Taentzer G, Zschaler S (2022) Sustaining and improving graduated graph consistency: a static analysis of graph transformations. Sci Comput Program. https:\/\/doi.org\/10.1016\/j.scico.2021.102729","journal-title":"Sci Comput Program"},{"key":"587_CR25","volume-title":"Introduction to algorithms","author":"TH Cormen","year":"2009","unstructured":"Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to algorithms, 3rd edn. MIT Press, Cambridge","edition":"3"},{"key":"587_CR26","doi-asserted-by":"publisher","unstructured":"Plump D (2005) Confluence of graph transformation revisited. In: Processes, terms and cycles: steps on the road to infinity, essays dedicated to Jan Willem Klop, on the occasion of his 60th birthday. Springer, pp 280\u2013308. https:\/\/doi.org\/10.1007\/11601548_16","DOI":"10.1007\/11601548_16"},{"key":"587_CR27","doi-asserted-by":"crossref","unstructured":"Bergmann G, Horv\u00e1th \u00c1, R\u00e1th I, Varr\u00f3 D (2008) A benchmark evaluation of incremental pattern matching in graph transformation. In: International conference on graph transformation. Springer, pp 396\u2013410","DOI":"10.1007\/978-3-540-87405-8_27"},{"key":"587_CR28","doi-asserted-by":"publisher","unstructured":"Anjorin A, Sch\u00fcrr A, Taentzer G (2012) Construction of integrity preserving triple graph grammars. In: Graph Transactions\u20146th international conference, ICGT 2012. Springer, pp 356\u2013370. https:\/\/doi.org\/10.1007\/978-3-642-33654-6_24","DOI":"10.1007\/978-3-642-33654-6_24"},{"key":"587_CR29","doi-asserted-by":"publisher","unstructured":"Kosiol J, Fritsche L, Nassar N, Sch\u00fcrr A, Taentzer G (2019) Constructing constraint-preserving interaction schemes in adhesive categories. In: Recent trends in algebraic development techniques\u201424th IFIP WG 1.3 international workshop, WADT 2018. Springer, pp 139\u2013153. https:\/\/doi.org\/10.1007\/978-3-030-23220-7_8","DOI":"10.1007\/978-3-030-23220-7_8"},{"key":"587_CR30","doi-asserted-by":"publisher","DOI":"10.1017\/S0960129512000345","author":"U Golas","year":"2014","unstructured":"Golas U, Habel A, Ehrig H (2014) Multi-amalgamation of rules with application conditions in M-adhesive categories. Math Struct Comput Sci. https:\/\/doi.org\/10.1017\/S0960129512000345","journal-title":"Math Struct Comput Sci"},{"key":"587_CR31","doi-asserted-by":"publisher","unstructured":"Sch\u00fcrr A (1994) Specification of graph translators with triple graph grammars. In: Graph-theoretic concepts in computer science, 20th international workshop, WG \u201994. Springer, pp 151\u2013163. https:\/\/doi.org\/10.1007\/3-540-59071-4_45","DOI":"10.1007\/3-540-59071-4_45"},{"key":"587_CR32","doi-asserted-by":"publisher","unstructured":"Blanc X, Mougenot A, Mounier I, Mens T (2009) Incremental detection of model inconsistencies based on model operations. In: Advanced information systems engineering, 21st international conference, CAiSE 2009. Springer, pp 32\u201346. https:\/\/doi.org\/10.1007\/978-3-642-02144-2_8","DOI":"10.1007\/978-3-642-02144-2_8"},{"key":"587_CR33","doi-asserted-by":"publisher","unstructured":"Reder A, Egyed A (2012) Computing repair trees for resolving inconsistencies in design models. In: IEEE\/ACM international conference on automated software engineering, ASE\u201912. ACM, pp 220\u2013229. https:\/\/doi.org\/10.1145\/2351676.2351707","DOI":"10.1145\/2351676.2351707"},{"key":"587_CR34","doi-asserted-by":"publisher","DOI":"10.1145\/3419017","author":"M Ohrndorf","year":"2021","unstructured":"Ohrndorf M, Pietsch C, Kelter U, Grunske L, Kehrer T (2021) History-based model repair recommendations. ACM Trans Softw Eng Methodol. https:\/\/doi.org\/10.1145\/3419017","journal-title":"ACM Trans Softw Eng Methodol"},{"key":"587_CR35","doi-asserted-by":"publisher","first-page":"227","DOI":"10.1007\/s10270-011-0199-7","volume":"11","author":"E Biermann","year":"2012","unstructured":"Biermann E, Ermel C, Taentzer G (2012) Formal foundation of consistent emf model transformations by algebraic graph transformation. Softw Syst Model 11:227\u2013250","journal-title":"Softw Syst Model"}],"container-title":["Innovations in Systems and Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s11334-024-00587-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s11334-024-00587-w\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s11334-024-00587-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,12,5]],"date-time":"2024-12-05T05:38:50Z","timestamp":1733377130000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s11334-024-00587-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,11,4]]},"references-count":35,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2024,12]]}},"alternative-id":["587"],"URL":"https:\/\/doi.org\/10.1007\/s11334-024-00587-w","relation":{"has-preprint":[{"id-type":"doi","id":"10.21203\/rs.3.rs-3860049\/v1","asserted-by":"object"}]},"ISSN":["1614-5046","1614-5054"],"issn-type":[{"value":"1614-5046","type":"print"},{"value":"1614-5054","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,11,4]]},"assertion":[{"value":"13 January 2024","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"6 October 2024","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"4 November 2024","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of interest"}}]}}