<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">ContentCVS: A CVS-based Collaborative ONTology ENgineering Tool</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">E</forename><surname>Jiménez-Ruiz</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Universitat Jaume I</orgName>
								<address>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">B</forename><surname>Cuenca Grau</surname></persName>
							<affiliation key="aff1">
								<orgName type="institution">Oxford University Computing Laboratory</orgName>
								<address>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">I</forename><surname>Horrocks</surname></persName>
							<affiliation key="aff1">
								<orgName type="institution">Oxford University Computing Laboratory</orgName>
								<address>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">R</forename><surname>Berlanga</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Universitat Jaume I</orgName>
								<address>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">ContentCVS: A CVS-based Collaborative ONTology ENgineering Tool</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">51A44EBCE2C0C5C92035AF259B41288A</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T02:23+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>We present ContentCVS, a system that implements a novel approach to facilitate the collaborative development of ontologies. Our approach adapts Concurrent Versioning, a successful paradigm in collaborative software development, to allow several developers to make changes concurrently to an ontology. Conflict detection and resolution are based on novel techniques that take into account the structure and semantics of the ontology versions to be reconciled by using precisely-defined notions of structural and semantic differences between ontologies and by extending existing ontology debugging and repair techniques.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Motivation</head><p>OWL Ontologies are already being used in many application domains. In particular, OWL is extensively used in life sciences; prominent examples of OWL ontologies are the National Cancer Institute (NCI) Thesaurus, SNOMED CT, the Gene Ontology (GO), the Foundational Model of Anatomy (FMA), and GALEN.</p><p>Most realistic ontologies, including the ones just mentioned, are being developed collaboratively. Maintaining such large ontologies in a collaborative way is a highly complex process: developers need to regularly merge and reconcile their modifications to ensure that the ontology captures a consistent unified view of the domain. Changes performed by different users may, however, conflict in complex ways and lead to errors. These errors may manifest themselves both as structural (i.e., syntactic) mismatches between developers' ontological descriptions, and as unintended logical consequences.</p><p>Tools supporting collaboration should therefore provide means for: (i) keeping track of ontology versions and changes and reverting, if necessary, to a previously agreed upon version, (ii) comparing potentially conflicting versions and identifying conflicting parts, (iii) identifying errors in the reconciled ontology constructed from conflicting versions, and (iv) suggesting possible ways to repair the identified errors with a minimal impact on the ontology.</p><p>In this paper we present ContentCVS 3 , a system that is available for download as a Protégé 4 plugin <ref type="bibr" target="#b0">[1]</ref>. In sections 2-5 we briefly describe the functionality provided by ContentCVS to satisfy each of the above-mentioned requirements. Finally, in Section 6 we summarize the results of a pilot user study that we have conducted to evaluate the usability of the system. For additional information, we refer the reader to <ref type="bibr" target="#b0">[1]</ref>.</p><p>The author is supported by the PhD Fellowship of the Generalitat Valenciana. The author is supported by a Royal Society University Research Fellowship. 3 A Collaborative ONTology ENgineering Tool.</p><p>ContentCVS closely follows the Concurrent Versioning paradigm. The change history and the most recent version O R of the ontology, which represents the developers' shared understanding of the domain, are kept in a server's shared repository. Each developer with access to the repository can connect to the server to check out a copy of O R , allowing developers to work on their own local copy O L , which they can modify at will. Developers can commit their changes to the server at any time. This allows several developers to make changes concurrently to the shared ontology. To keep the system in a consistent state, the server only accepts changes to the latest version of the shared ontology. Developers should hence use the CVS client to regularly update their local copy with changes made by others.</p><p>Manual intervention is only needed when a conflict arises between a committed version in the server and a yet-uncommitted local version. Conflicts are reported whenever the two compared versions of an ontology are not "equivalent" according to a given notion of equivalence, which we describe next.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Detecting Conflicts</head><p>A typical CVS system treats the files in a software project as ordinary text files and hence checking equivalence amounts to determining whether the two compared files are syntactically equal (i.e., they contain exactly the same characters in exactly the same order). This notion of equivalence is, however, too strict in the case of ontologies, since OWL files have very specific structure and semantics. For example, if two OWL files are identical except for the fact that the axioms appear in different order, the corresponding ontologies should be clearly treated as equivalent: an ontology contains a set of axioms and hence the order in which they appear is irrelevant.</p><p>An alternative in the case of ontologies is to use the notion of logical equivalence. This notion is, however, too permissive: even if two ontologies are logically equivalent (the strongest assumption from a semantic point of view), conflicts may still exist. This might result from incompatible annotations (statements that act as comments and do not carry logical meaning), mismatches in modelling styles, and so on.</p><p>ContentCVS uses the notion of structural equivalence between OWL 2 ontologies <ref type="bibr" target="#b1">[2]</ref> to compare ontology versions and identify conflicts. Intuitively, this notion is based solely on comparing the OWL modeling structures. For example, changes in the order in which structures such as axioms and conjunction of concepts appear in the ontology file are irrelevant. Structural equivalence is thus more permissive than syntactical equality, but stricter than logical equivalence. Figure <ref type="figure" target="#fig_0">1</ref> shows the structural comparison between two ontologies in ContentCVS. The left-hand-side shows axioms in O L that do not have an structurally equivalent axiom in O R ; the right-hand-side shows the axioms in O R without an structurally equivalent axiom in O L . All the axioms in Figure <ref type="figure" target="#fig_0">1</ref> are thus regarded as conflicts. To facilitate the comparison, the conflicting axioms are sorted and aligned according to the entities they define. ContentCVS also provides functionality for examining and comparing the change histories of the local and repository ontologies since the latest CVS update operation. Once the user has selected the desired axioms from the structural difference (marked with a in Figure <ref type="figure" target="#fig_0">1</ref>) a temporary version of the reconciled ontology O L tmp is built from the non-conflicting part of O L plus the axioms selected from the structural difference. At this point, the user may declare the conflict resolved and commit O L tmp to the repository, in which case conflict resolution remains a purely syntactic process. Otherwise, ContentCVS allows the ontology developer to use a reasoner to examine the semantic consequences of their choices and ensure that O L tmp meets their requirements (typically, that it includes as much intended information as possible without leading to inconsistencies or other undesired entailments).</p><p>To facilitate error detection, ContentCVS compares the entailments that hold in O L tmp with those that hold in O L and O R by using the notion of logical difference <ref type="bibr" target="#b2">[3]</ref>. Roughly, the logical difference between O and O is the set of all axioms entailed by O, but not by O . This difference can in theory be infinite, and ContentCVS allows users to (finitely) approximate it by indicating which types of entailments should be included. For example, users can ask ContentCVS to compute differences in the entailed concept and role hierarchies, differences in the entailed disjointness axioms, differences in entailed axioms of the form A ∃R.B (with A and B atomic), and so on.</p><p>Figure <ref type="figure" target="#fig_1">2</ref>(a) shows the GUI in ContentCVS for displaying new entailments, that is, those that hold in O L tmp but not in O L . The GUI allows users to indicate which of those entailments are unintended and should be "deleted". ContentCVS provides a similar GUI for displaying lost entailments (those that hold in O L but not in O L tmp ) and for selecting which of those should be "recovered".</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Repairing Errors in the Reconciled Ontology</head><p>Changing the set of entailments in an ontology can only be achieved by modifying the ontology itself (see for example <ref type="bibr" target="#b3">[4]</ref>). Hence, if the user selects any new entailments to "delete" or any lost entailments to "recover", then O L tmp clearly needs to be modified. ContentCVS provides functionality for automatically suggesting the required modifications. Each possible solution (called a repair plan) is presented to the user as a set of axioms to be removed from O L tmp and a set of axioms to be added to O L tmp . Con-tentCVS implements a number of heuristics for ranking the possible repair plans and provides a GUI (see Figure <ref type="figure" target="#fig_1">2(b)</ref>) that indicates whether the axioms in the plan come from O L or O R (marked with "L", "R" respectively), and whether an axiom is shared by all plans (marked with a "P").</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Conclusions from User Study</head><p>We conducted a pilot user study to evaluate the usability of ContentCVS and to show the adequacy of our approach in practice (see <ref type="bibr" target="#b0">[1]</ref> for details). Our results show that most users considered very useful the implemented CVS functionality as well as the computation of structural differences between ontology versions. Users were also satisfied with the detection of errors using logical differences: when using ContentCVS all the participants could identify both new unintended entailments and lost intended entailments. Most users were also satisfied with the functionality for computing repair plans as well as with the reconciled ontology finally obtained.</p><p>The main points of criticism were, on the one hand, the excessive amount of information displayed when using "large" approximations of the logical difference and, on the other hand, slow response of the tool when performing reasoning-intensive tasks. We consider addressing these deficiencies as a part of our future work.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. GUI for Displaying Structural Differences in ContentCVS</figDesc><graphic coords="3,152.11,115.96,311.04,121.54" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 2 .</head><label>2</label><figDesc>Fig. 2. Error Detection and Plan Visualization in ContentCVS</figDesc><graphic coords="4,309.96,137.83,165.79,62.71" type="bitmap" /></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Conflict detection and resolution in collaborative ontology development</title>
		<author>
			<persName><forename type="first">E</forename><surname>Jimenez-Ruiz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Cuenca Grau</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Horrocks</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Berlanga</surname></persName>
		</author>
		<ptr target="http://krono.act.uji.es/people/Ernesto/contentcvs" />
	</analytic>
	<monogr>
		<title level="m">Tool and user study</title>
				<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Parsia: OWL 2 structural specification and functional-style syntax</title>
		<author>
			<persName><forename type="first">B</forename><surname>Motik</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Patel-Schneider</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename></persName>
		</author>
		<ptr target="http://www.w3.org/TR/owl2-syntax/" />
	</analytic>
	<monogr>
		<title level="m">W3C Recommendation</title>
				<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">The logical difference problem for description logic terminologies</title>
		<author>
			<persName><forename type="first">B</forename><surname>Konev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Walther</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Wolter</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of IJCAR</title>
				<meeting>of IJCAR</meeting>
		<imprint>
			<date type="published" when="2008">2008</date>
			<biblScope unit="page" from="259" to="274" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Repairing unsatisfiable concepts in OWL ontologies</title>
		<author>
			<persName><forename type="first">A</forename><surname>Kalyanpur</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Parsia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Sirin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Cuenca Grau</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of ESWC</title>
				<meeting>of ESWC</meeting>
		<imprint>
			<date type="published" when="2006">2006</date>
			<biblScope unit="page" from="170" to="184" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
