Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
With “different serializations”, we refer to two different ontology files that represent the same ontology using the same syntax (RDF/XML, Turtle, Manchester, etc.) but use a different structure to list and group the ontology concepts.
- 2.
Given two RDF-documents A and \(A^*\), and \(ChangeSet(A^*/A) = (\delta ^+(A^*/A),\) \(\delta ^-(A^*/A), < )\), there are only syntactical conflicts between A and \(A^*\), iff \(size(A^*)=size(A)\), and for each RDF triples \(t_i\) and \(t_j\):
-
\(t_i\) \(\in \) \(\delta ^-(A^*/A)\) and \(t_j\) \(\in \) \(\delta ^+(A^*/A)\),
then, there is a pair (\(t_i\), \(t_j\)) \(\in \;<\;\), and \(t_i = (s, p, o_i)\), \(t_j = (s, p, o_j)\), and \(o_i\) \(\ne \) \(o_j\).
-
References
Palma, R., Corcho, Ó., Gómez-Pérez, A., Haase, P.: A holistic approach to collaborative ontology development based on change management. J. Web Semant. 9, 299–314 (2011)
Halilaj, L., Grangel-González, I., Coskun, G., Lohmann, S., Auer, S.: Git4Voc: collaborative vocabulary development based on Git. Int. J. Semant. Comput. 10, 167–192 (2016)
Mens, T.: A state-of-the-art survey on software merging. IEEE Trans. Softw. Eng. 28, 449–462 (2002)
Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. Int. J. Web Inf. Syst. 5, 271–304 (2009)
Halilaj, L., Grangel-González, I., Vidal, M., Lohmann, S., Auer, S.: Proactive prevention of false-positive conflicts in distributed ontology development. In: 8th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management (IC3K), vol. 2 (KEOD), pp. 43–51 (2016)
Dig, D., Manzoor, K., Johnson, R., Nguyen, T.N.: Refactoring-aware configuration management for object-oriented programs. In: 29th International Conference on Software Engineering (ICSE), pp. 427–436. IEEE (2007)
Ekman, T., Asklund, U.: Refactoring-aware versioning in eclipse. Electron. Notes Theor. Comput. Sci. 107, 57–69 (2004)
Nguyen, H.V., Nguyen, M.H., Dang, S.C., Kästner, C., Nguyen, T.N.: Detecting semantic merge conflicts with variability-aware execution. In: 10th Joint Meeting on Foundations of Software Engineering (ESEC/FSE), pp. 926–929. ACM (2015)
Asenov, D., Guenat, B., Müller, P., Otth, M.: Precise version control of trees with line-based version control systems. In: Fundamental Approaches to Software Engineering (FASE) (2017, to appear)
Protzenko, J., Burckhardt, S., Moskal, M., McClurg, J.: Implementing real-time collaboration in TouchDevelop using AST merges. In: 3rd International Workshop on Mobile Development Lifecycle (MobileDeLi), pp. 25–27. ACM (2015)
Brun, Y., Holmes, R., Ernst, M.D., Notkin, D.: Proactive detection of collaboration conflicts. In: 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE) and 13th European Software Engineering Conference (ESEC), pp. 168–178 (2011)
Lee, T.B., Connolly, D.: Delta: an ontology for the distribution of differences between RDF graphs. Technical report, W3C (2001)
Völkel, M., Groza, T.: SemVersion: an RDF-based ontology versioning system. In: IADIS International Conference on WWW/Internet (IADIS), IADIS, pp. 195–202 (2006)
Cassidy, S., Ballantine, J.: Version control for RDF triple stores. In: 2nd International Conference on Software and Data Technologies (ICSOFT). pp. 5–12 (2007)
Edwards, W.K.: Flexible conflict detection and management in collaborative applications. In: 10th Annual ACM Symposium on User Interface Software and Technology (UIST), pp. 139–148. ACM (1997)
Noy, N.F., Chugh, A., Liu, W., Musen, M.A.: A framework for ontology evolution in collaborative environments. In: 5th International Semantic Web Conference (ISWC), pp. 544–558 (2006)
Altmanninger, K.: Models in conflict - a semantically enhanced version control system for models. In: Doctoral Symposium at the ACM/IEEE 10th International Conference on Model-Driven Engineering Languages and Systems (MoDELS), CEUR-WS 262, CEUR-WS.org (2007)
Altmanninger, K., Schwinger, W., Kotsis, G.: Semantics for accurate conflict detection in SMoVer: specification, detection and presentation by example. In: Enterprise Information Systems and Advancing Business Solutions: Emerging Models, pp. 337–353. IGI Global (2012)
Brosch, P.: Improving conflict resolution in model versioning systems. In: Companion Volume of the 31st International Conference on Software Engineering (ICSE), pp. 355–358. IEEE (2009)
Cicchetti, A., Ruscio, D.D., Pierantonio, A.: Managing model conflicts in distributed development. In: 11th International Conference on Model Driven Engineering Languages and Systems (MoDELS), pp. 311–325 (2008)
Krusche, S., Brügge, B.: Model-based real-time synchronization. In: Softwaretechnik-Trends, vol. 34 (2014)
Chong, H., Zhang, R., Qin, Z.: Composite-based conflict resolution in merging versions of UML models. In: 17th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD), pp. 127–132 (2016)
Gutierrez, C., Hurtado, C.A., Mendelzon, A.O., Pérez, J.: Foundations of semantic web databases. J. Comput. Syst. Sci. 77, 520–541 (2011)
Acknowledgements
This work has been supported by the European Union’s Horizon 2020 programme for the project BigDataEurope (grant no. 644564), and the German Federal Ministry of Education and Research (BMBF) for the projects Industrial Data Space (grant no. 01IS15054) and SDI-X (grant no. 01IS15035C).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Halilaj, L., Grangel-González, I., Vidal, ME., Lohmann, S., Auer, S. (2019). SerVCS: Serialization Agnostic Ontology Development in Distributed Settings. In: Fred, A., Dietz, J., Aveiro, D., Liu, K., Bernardino, J., Filipe, J. (eds) Knowledge Discovery, Knowledge Engineering and Knowledge Management. IC3K 2016. Communications in Computer and Information Science, vol 914. Springer, Cham. https://doi.org/10.1007/978-3-319-99701-8_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-99701-8_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-99700-1
Online ISBN: 978-3-319-99701-8
eBook Packages: Computer ScienceComputer Science (R0)