{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,6]],"date-time":"2025-12-06T17:14:32Z","timestamp":1765041272128,"version":"3.37.3"},"reference-count":38,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2022,3,9]],"date-time":"2022-03-09T00:00:00Z","timestamp":1646784000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2022,3,9]],"date-time":"2022-03-09T00:00:00Z","timestamp":1646784000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100006041","name":"Innovate UK","doi-asserted-by":"publisher","award":["113213"],"award-info":[{"award-number":["113213"]}],"id":[{"id":"10.13039\/501100006041","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Softw Syst Model"],"published-print":{"date-parts":[[2022,12]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Conflicts in software artefacts can appear during collaborative development through version control systems. When these conflicts happen in XMI models, the conflict sections generated by diff programs break the XMI serialisation and compromise the ability to use model editors that assume well-formedness of this serialisation. While these conflict sections already mark the conflicting lines of the model, current tools for conflict resolution in models ignore them and instead load the different versions of a model from the repository, over which they perform a full and costly comparison that re-identifies the conflicts. We present a novel approach that prevents this repetition of work by directly parsing XMI-based models with conflict sections, which allows for a targeted analysis of only the lines of the model that have been detected to be in conflict by the version control system. We have implemented this approach in the <jats:sc>Peacemaker<\/jats:sc> tool, which can load XMI models with conflict sections, compute and display conflicts at the model level, and provide appropriate resolution actions. Compared with state-of-the-art model comparison tools with support for conflict resolution, <jats:sc>Peacemaker<\/jats:sc> is able to identify the vast majority of conflicts in models while reducing the required time by up to 60%. The small subset of non-identified conflicts does not introduce issues into the models, e.g. there is no loss of model information, and the resulting models after line-merging these conflicts conform to their metamodels.<\/jats:p>","DOI":"10.1007\/s10270-022-00976-4","type":"journal-article","created":{"date-parts":[[2022,3,9]],"date-time":"2022-03-09T12:03:00Z","timestamp":1646827380000},"page":"2461-2487","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["An efficient line-based approach for resolving merge conflicts in XMI-based models"],"prefix":"10.1007","volume":"21","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-7109-4249","authenticated-orcid":false,"given":"Alfonso","family":"de la Vega","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1724-6563","authenticated-orcid":false,"given":"Dimitris","family":"Kolovos","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2022,3,9]]},"reference":[{"issue":"5","key":"976_CR1","doi-asserted-by":"publisher","first-page":"449","DOI":"10.1109\/TSE.2002.1000449","volume":"28","author":"T Mens","year":"2002","unstructured":"Mens, T.: A state-of-the-art survey on software merging. IEEE Trans. Softw. Eng. 28(5), 449\u2013462 (2002). https:\/\/doi.org\/10.1109\/TSE.2002.1000449","journal-title":"IEEE Trans. Softw. Eng."},{"key":"976_CR2","doi-asserted-by":"publisher","unstructured":"Khanna, S., Kunal, K., Pierce, B.C.: A formal investigation of diff3. In: FSTTCS 2007: Foundations of Software Technology and Theoretical Computer Science, pp. 485\u2013496. Springer, Berlin, Heidelberg (2007). https:\/\/doi.org\/10.1007\/978-3-540-77050-3_40","DOI":"10.1007\/978-3-540-77050-3_40"},{"key":"976_CR3","doi-asserted-by":"publisher","unstructured":"Brosch, P., Kappel, G., Langer, P., Seidl, M., Wieland, K., Wimmer, M.: An introduction to model versioning. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 7320 LNCS, pp. 336\u2013398 (2012). https:\/\/doi.org\/10.1007\/978-3-642-30982-3_10","DOI":"10.1007\/978-3-642-30982-3_10"},{"key":"976_CR4","doi-asserted-by":"publisher","first-page":"272","DOI":"10.1016\/j.jss.2015.08.047","volume":"111","author":"RF Paige","year":"2016","unstructured":"Paige, R.F., Matragkas, N., Rose, L.M.: Evolving models in model-driven engineering: state-of-the-art and future challenges. J. Syst. Softw. 111, 272\u2013280 (2016). https:\/\/doi.org\/10.1016\/j.jss.2015.08.047","journal-title":"J. Syst. Softw."},{"key":"976_CR5","unstructured":"Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley Professional (2009)"},{"key":"976_CR6","doi-asserted-by":"publisher","unstructured":"Kelly, S.: Collaborative modelling with version control. In: Software Technologies: Applications and Foundations, pp. 20\u201329. Springer (2018). https:\/\/doi.org\/10.1007\/978-3-319-74730-9_3","DOI":"10.1007\/978-3-319-74730-9_3"},{"key":"976_CR7","unstructured":"No Magic: MagicDraw. https:\/\/www.nomagic.com\/products\/magicdraw"},{"key":"976_CR8","unstructured":"Obeo: Obeo Designer. https:\/\/www.obeodesigner.com\/"},{"key":"976_CR9","unstructured":"Object Management Group: XML Metadata Interchange Specification. https:\/\/www.omg.org\/spec\/XMI\/"},{"key":"976_CR10","unstructured":"Eclipse Foundation: Sirius. https:\/\/www.eclipse.org\/sirius\/"},{"key":"976_CR11","unstructured":"Eclipse Foundation: EMF Compare. https:\/\/www.eclipse.org\/emf\/compare\/"},{"key":"976_CR12","unstructured":"Eclipse Foundation: EMF DiffMerge. https:\/\/www.eclipse.org\/diffmerge\/"},{"key":"976_CR13","unstructured":"Barrett, S., Chalin, P., Butler, G.: Model merging falls short of software engineering needs. In: Proceedings of the 2nd Workshop on Model-Driven Software Evolution (2008)"},{"key":"976_CR14","unstructured":"Altmanninger, K., Brosch, P., Langer, P., Seidl, M., Wiel, K., Wimmer, M.: Why model versioning research is needed!? An experience report. In: MoDSE-MCCM Workshop in MoDELS, pp. 1\u201312 (2009)"},{"key":"976_CR15","doi-asserted-by":"publisher","unstructured":"Schw\u00e4gerl, F., Uhrig, S., Westfechtel, B.: A graph-based algorithm for three-way merging of ordered collections in EMF models. Sci. Comput. Program. 113, 51\u201381 (2015). https:\/\/doi.org\/10.1016\/j.scico.2015.02.008. (Model Driven Development (Selected & extended papers from MODELSWARD 2014))","DOI":"10.1016\/j.scico.2015.02.008"},{"key":"976_CR16","unstructured":"Object Management Group: Meta Object Facility (MOF) Core Specification. https:\/\/www.omg.org\/spec\/MOF\/ (2016)"},{"issue":"5","key":"976_CR17","doi-asserted-by":"publisher","first-page":"350","DOI":"10.1145\/359581.359603","volume":"20","author":"JW Hunt","year":"1977","unstructured":"Hunt, J.W., Szymanski, T.G.: A fast algorithm for computing longest common subsequences. Commun. ACM 20(5), 350\u2013353 (1977). https:\/\/doi.org\/10.1145\/359581.359603","journal-title":"Commun. ACM"},{"issue":"11","key":"976_CR18","doi-asserted-by":"publisher","first-page":"1025","DOI":"10.1002\/spe.4380151102","volume":"15","author":"W Miller","year":"1985","unstructured":"Miller, W., Myers, E.W.: A file comparison program. Softw. Pract. Exp. 15(11), 1025\u20131040 (1985). https:\/\/doi.org\/10.1002\/spe.4380151102","journal-title":"Softw. Pract. Exp."},{"issue":"3","key":"976_CR19","doi-asserted-by":"publisher","first-page":"693","DOI":"10.1007\/s10270-019-00760-x","volume":"19","author":"FA Somogyi","year":"2020","unstructured":"Somogyi, F.A., Asztalos, M.: Systematic review of matching techniques used in model-driven methodologies. Softw. Syst. Model. 19(3), 693\u2013720 (2020). https:\/\/doi.org\/10.1007\/s10270-019-00760-x","journal-title":"Softw. Syst. Model."},{"key":"976_CR20","unstructured":"SAX Project: Simple API for XML. http:\/\/www.saxproject.org\/"},{"key":"976_CR21","doi-asserted-by":"publisher","unstructured":"L\u00f3pez, J.A.H., Cuadrado, J.S.: Towards the characterization of realistic model generators using graph neural networks. In: 2021 ACM\/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 58\u201369 (2021). https:\/\/doi.org\/10.1109\/MODELS50736.2021.00015","DOI":"10.1109\/MODELS50736.2021.00015"},{"key":"976_CR22","doi-asserted-by":"crossref","unstructured":"Cooper, J., de\u00a0la Vega, A., Paige, R.F., Kolovos, D.S., Bennett, M., Brown, C., Pi\u00f1a, B.S., Rodriguez, H.H.: Model-based development of engine control systems: Experiences and lessons learnt. In: 24th International Conference on Model Driven Engineering Languages and Systems, MODELS 2021, Fukuoka, Japan, October 10\u201315, 2021, pp. 308\u2013319. IEEE (2021). https:\/\/doi.org\/10.1109\/MODELS50736.2021.00038","DOI":"10.1109\/MODELS50736.2021.00038"},{"issue":"3","key":"976_CR23","doi-asserted-by":"publisher","first-page":"153","DOI":"10.1080\/01449290410001669914","volume":"23","author":"FFH Nah","year":"2004","unstructured":"Nah, F.F.H.: A study on tolerable waiting time: how long are web users willing to wait? Behav. Inf. Technol. 23(3), 153\u2013163 (2004). https:\/\/doi.org\/10.1080\/01449290410001669914","journal-title":"Behav. Inf. Technol."},{"key":"976_CR24","doi-asserted-by":"crossref","unstructured":"Bendix, L., Emanuelsson, P.: Diff and merge support for model based development. In: Proceedings of the 2008 International Workshop on Comparison and Versioning of Software Models\u2014CVSM\u201908, p.\u00a031. ACM Press, Leipzig, Germany (2008). https:\/\/doi.org\/10.1145\/1370152.1370161. http:\/\/portal.acm.org\/citation.cfm?doid=1370152.1370161","DOI":"10.1145\/1370152.1370161"},{"key":"976_CR25","doi-asserted-by":"publisher","first-page":"152","DOI":"10.1007\/978-3-662-54494-5_9","volume-title":"Fundamental Approaches to Software Engineering (FASE)","author":"D Asenov","year":"2017","unstructured":"Asenov, D., Guenat, B., M\u00fcller, P., Otth, M.: Precise version control of trees with line-based version control systems. In: Fundamental Approaches to Software Engineering (FASE), pp. 152\u2013169. Springer, Berlin, Heidelberg (2017). https:\/\/doi.org\/10.1007\/978-3-662-54494-5_9"},{"key":"976_CR26","doi-asserted-by":"publisher","unstructured":"Falleri, J.R., Morandat, F., Blanc, X., Martinez, M., Monperrus, M.: Fine-grained and accurate source code differencing. In: Proceedings of the 29th ACM\/IEEE International Conference on Automated Software Engineering, ASE\u201914, pp. 313\u2013324. Association for Computing Machinery, New York (2014). https:\/\/doi.org\/10.1145\/2642937.2642982","DOI":"10.1145\/2642937.2642982"},{"issue":"11","key":"976_CR27","doi-asserted-by":"publisher","first-page":"725","DOI":"10.1109\/TSE.2007.70731","volume":"33","author":"B Fluri","year":"2007","unstructured":"Fluri, B., Wursch, M., PInzger, M., Gall, H.: Change distilling: tree differencing for fine-grained source code change extraction. IEEE Trans. Softw. Eng. 33(11), 725\u2013743 (2007). https:\/\/doi.org\/10.1109\/TSE.2007.70731","journal-title":"IEEE Trans. Softw. Eng."},{"key":"976_CR28","doi-asserted-by":"publisher","unstructured":"Apel, S., Liebig, J., Brandl, B., Lengauer, C., K\u00e4stner, C.: Semistructured merge: Rethinking merge in revision control systems. In: Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC\/FSE\u201911, pp. 190\u2013200. Association for Computing Machinery, New York (2011). https:\/\/doi.org\/10.1145\/2025113.2025141","DOI":"10.1145\/2025113.2025141"},{"key":"976_CR29","doi-asserted-by":"publisher","unstructured":"Cavalcanti, G., Borba, P., Seibt, G., Apel, S.: The impact of structure on software merging: semistructured versus structured merge. In: 2019 34th IEEE\/ACM International Conference on Automated Software Engineering (ASE), pp. 1002\u20131013. IEEE (2019). https:\/\/doi.org\/10.1109\/ASE.2019.00097","DOI":"10.1109\/ASE.2019.00097"},{"key":"976_CR30","unstructured":"MathWorks: Merge Simulink Models. https:\/\/uk.mathworks.com\/help\/simulink\/ug\/merge-simulink-models-from-the-comparison-report.html"},{"key":"976_CR31","unstructured":"DiffPlug: Simulink Diff. https:\/\/www.diffplug.com\/features\/simulink"},{"key":"976_CR32","unstructured":"IBM: Rational Rhapsody DiffMerge. https:\/\/www.ibm.com\/support\/knowledgecenter\/SSB2MU_8.2.0\/com.ibm.rhp.diffmerge.doc\/topics\/rhp_c_col_parallel_dev_with_diffmerge.html"},{"key":"976_CR33","doi-asserted-by":"publisher","unstructured":"Schmidt, M., Gloetzner, T.: Constructing difference tools for models using the sidiff framework. In: W.\u00a0Sch\u00e4fer, M.B. Dwyer, V.\u00a0Gruhn (eds.) 30th International Conference on Software Engineering (ICSE 2008), Leipzig, Germany, May 10\u201318, 2008, Companion Volume, pp. 947\u2013948. ACM (2008). https:\/\/doi.org\/10.1145\/1370175.1370201","DOI":"10.1145\/1370175.1370201"},{"key":"976_CR34","doi-asserted-by":"publisher","unstructured":"Alanen, M., Porres, I.: Difference and Union of Models. In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 2863, pp. 2\u201317 (2003). https:\/\/doi.org\/10.1007\/978-3-540-45221-8_2","DOI":"10.1007\/978-3-540-45221-8_2"},{"key":"976_CR35","unstructured":"Eclipse Foundation: Eclipse CDO. https:\/\/www.eclipse.org\/cdo\/"},{"key":"976_CR36","doi-asserted-by":"publisher","unstructured":"Koegel, M., Helming, J.: Emfstore: A model repository for EMF models. In: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering\u2014Volume 2, ICSE\u201910, pp. 307\u2013308. Association for Computing Machinery, New York (2010). https:\/\/doi.org\/10.1145\/1810295.1810364","DOI":"10.1145\/1810295.1810364"},{"key":"976_CR37","doi-asserted-by":"publisher","unstructured":"Koegel, M., Helming, J., Seyboth, S.: Operation-based conflict detection and resolution. In: 2009 ICSE Workshop on Comparison and Versioning of Software Models, pp. 43\u201348. IEEE (2009). https:\/\/doi.org\/10.1109\/CVSM.2009.5071721","DOI":"10.1109\/CVSM.2009.5071721"},{"issue":"1","key":"976_CR38","doi-asserted-by":"publisher","first-page":"239","DOI":"10.1007\/s10270-012-0248-x","volume":"13","author":"G Taentzer","year":"2014","unstructured":"Taentzer, G., Ermel, C., Langer, P., Wimmer, M.: A fundamental approach to model versioning based on graph modifications: from theory to implementation. Softw. Syst. Model. 13(1), 239\u2013272 (2014). https:\/\/doi.org\/10.1007\/s10270-012-0248-x","journal-title":"Softw. Syst. Model."}],"container-title":["Software and Systems Modeling"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-022-00976-4.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10270-022-00976-4\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-022-00976-4.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,11,11]],"date-time":"2022-11-11T17:14:40Z","timestamp":1668186880000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10270-022-00976-4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,3,9]]},"references-count":38,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2022,12]]}},"alternative-id":["976"],"URL":"https:\/\/doi.org\/10.1007\/s10270-022-00976-4","relation":{},"ISSN":["1619-1366","1619-1374"],"issn-type":[{"type":"print","value":"1619-1366"},{"type":"electronic","value":"1619-1374"}],"subject":[],"published":{"date-parts":[[2022,3,9]]},"assertion":[{"value":"8 July 2021","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"24 November 2021","order":2,"name":"revised","label":"Revised","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"10 January 2022","order":3,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"9 March 2022","order":4,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}