SerVCS: Serialization Agnostic Ontology Development in Distributed Settings

The development of domain-specific ontologies requires joint efforts among different groups of stakeholders, such as knowledge engineers and domain experts. During the development processes, ontology changes need to be tracked and propagated across developers. Version Control Systems (VCSs) collect metadata describing changes and allow for the synchronization of different versions of the same ontology. Commonly, VCSs follow optimistic approaches to enable the concurrent modification of ontology artifacts, as well as conflict detection and resolution. For conflict detection, VCSs usually apply techniques where files are compared line by line. However, ontology changes can be serialized in different ways during the development process. As a consequence, existing VCSs may detect a large number of false-positive conflicts, i.e., conflicts that do not result from ontology changes but from the fact that two ontology versions are differently serialized. We developed SerVCS in order to enhance VCSs to cope with different serializations of the same ontology, following the principle of prevention is better than cure. SerVCS resorts on unique ontology serializations and minimizes the number of false-positive conflicts. It is implemented on top of Git, utilizing tools such as Rapper and RDF-toolkit for syntax validation and unique serialization, respectively. We conducted an empirical evaluation to determine the conflict detection accuracy of SerVCS whenever simultaneous changes to an ontology are performed using different ontology editors. Experimental results suggest that SerVCS allows VCSs to conduct more effective synchronization processes by preventing false-positive conflicts.

[1]  Irlán Grangel-González,et al.  Git4Voc: Collaborative Vocabulary Development Based on Git , 2016, Int. J. Semantic Comput..

[2]  Peter Müller,et al.  Precise Version Control of Trees with Line-Based Version Control Systems , 2017, FASE.

[3]  Asunción Gómez-Pérez,et al.  A holistic approach to collaborative ontology development based on change management , 2011, J. Web Semant..

[4]  Kerstin Altmanninger Models in Conflict - A Semantically Enhanced Version Control System for Models , 2007, MoDELS.

[5]  Manuel Wimmer,et al.  A survey on model versioning approaches , 2009, Int. J. Web Inf. Syst..

[6]  Tim Berners-Lee,et al.  Delta: an ontology for the distribution of differences between RDF graphs , 2004 .

[7]  Bernd Brügge,et al.  Model-based Real-time Synchronization , 2014, Softwaretechnik-Trends.

[8]  W. Keith Edwards,et al.  Flexible conflict detection and management in collaborative applications , 1997, UIST '97.

[9]  Torbjörn Ekman,et al.  Refactoring-aware versioning in Eclipse , 2004, Electron. Notes Theor. Comput. Sci..

[10]  Alberto O. Mendelzon,et al.  Foundations of Semantic Web databases , 2011, J. Comput. Syst. Sci..

[11]  Antonio Cicchetti,et al.  Managing Model Conflicts in Distributed Development , 2008, MoDELS.

[12]  Zheng Qin,et al.  Composite-based conflict resolution in merging versions of UML models , 2016, 2016 17th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD).

[13]  Hung Viet Nguyen,et al.  Detecting semantic merge conflicts with variability-aware execution , 2015, ESEC/SIGSOFT FSE.

[14]  Ralph E. Johnson,et al.  Refactoring-Aware Configuration Management for Object-Oriented Programs , 2007, 29th International Conference on Software Engineering (ICSE'07).

[15]  Tudor Groza,et al.  SemVersion: RDF-based ontology versioning system , 2006 .

[16]  Yuriy Brun,et al.  Proactive detection of collaboration conflicts , 2011, ESEC/FSE '11.

[17]  Mark A. Musen,et al.  A Framework for Ontology Evolution in Collaborative Environments , 2006, SEMWEB.

[18]  Petra Broschy Improving conflict resolution in model versioning systems , 2009, 2009 31st International Conference on Software Engineering - Companion Volume.

[19]  Maria-Esther Vidal,et al.  Proactive Prevention of False-Positive Conflicts in Distributed Ontology Development , 2016, KEOD.

[20]  Tom Mens,et al.  A State-of-the-Art Survey on Software Merging , 2002, IEEE Trans. Software Eng..

[21]  Steve Cassidy,et al.  Version Control for RDF Triple Stores , 2007, ICSOFT.

[22]  Sebastian Burckhardt,et al.  Implementing real-time collaboration in TouchDevelop using AST merges , 2015, MobileDeLi.