<?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">IncMap: Pay as you go Matching of Relational Schemata to OWL Ontologies</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Christoph</forename><surname>Pinkel</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">fluid Operations AG</orgName>
								<address>
									<postCode>D-69190</postCode>
									<settlement>Walldorf</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Carsten</forename><surname>Binnig</surname></persName>
							<affiliation key="aff1">
								<orgName type="institution">University of Mannheim</orgName>
								<address>
									<postCode>D-68131</postCode>
									<settlement>Mannheim</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Evgeny</forename><surname>Kharlamov</surname></persName>
							<affiliation key="aff2">
								<orgName type="institution">University of Oxford</orgName>
								<address>
									<settlement>Oxford</settlement>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Peter</forename><surname>Haase</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">fluid Operations AG</orgName>
								<address>
									<postCode>D-69190</postCode>
									<settlement>Walldorf</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">IncMap: Pay as you go Matching of Relational Schemata to OWL Ontologies</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">69AC1CFC2F8F0F4F5FC7FA598D2620E5</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T07:43+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>Ontology Based Data Access (OBDA) enables access to relational data with a complex structure through ontologies as conceptual domain models. A key component of an OBDA system are mappings between the schematic elements in the ontology and their correspondences in the relational schema. Today, in existing OBDA systems these mappings typically need to be compiled by hand, which is a complex and labor intensive task. In this paper we address the problem of creating such mappings and present IncMap, a system that supports a semi-automatic approach for matching relational schemata and ontologies. Our approach is based on a novel matching technique that represents the schematic elements of an ontology and a relational schema in a unified way. IncMap is designed to work in a query-driven, pay as you go fashion and leverages partial, user-verified mappings to improve subsequent mapping suggestions. This effectively reduces the overall effort compared to compiling a mappings in one step. Moreover, IncMap can incorporate knowledge from user queries to enhance suggestion quality.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Effective understanding of complex data is a crucial task for enterprises to support decision making and retain competitiveness on the market. This task is not trivial especially since the data volume and complexity keep growing fast in the light of Big Data <ref type="bibr" target="#b0">[1]</ref>. While there are many techniques and tools for scalable data analytics today, there is little known on how to find the right data.</p><p>Today, enterprise information systems of large companies store petabytes of data distributed across multiple -typically relational -databases, each with hundreds or sometimes even thousands of tables (e.g., <ref type="bibr" target="#b1">[2]</ref>). For example, an installation of an SAP ERP system comes with tens of thousands of tables <ref type="bibr">[3]</ref>. Due to the complexity of data a typical scenario for data analyses today involves a domain expert who formulates an analytical request and an IT expert who has to understand the request, find the data relevant to it, and then translate the request into an executable query. In large enterprises this process may iterate several times between the domain and IT experts, the complexity of data and other factors, and may take up to several weeks.</p><p>Ontology-based data access (OBDA) <ref type="bibr" target="#b2">[4]</ref> is an approach that has recently emerged to provide semantic access to complex structured relational data. The core elements of an OBDA system are an ontology, describing the application domain, and a set of declarative mappings, relating the ontological schema elements (e.g., names of classes and properties) with the relational schema elements (e.g., names of table and attributes) of the underlying data sources. Using the ontology and the mappings, domain experts can access the data directly by formulating queries in terms defined in the ontology that reflects their vocabulary and conceptualization. Using query rewriting techniques, the end-user queries are then translated into queries over the underlying data sources.</p><p>Today, most approaches for ontology-based data access focus on the definition of mapping languages and the efficient translation of high-level user queries over an ontology into executable queries over relational data <ref type="bibr" target="#b2">[4,</ref><ref type="bibr" target="#b3">5]</ref>. These approaches assume that a declarative mapping of the schema elements of the ontology to the relational elements is already given. So far, in real-world systems <ref type="bibr" target="#b4">[6,</ref><ref type="bibr" target="#b5">7]</ref> that follow the ontology-based data access principle, the mappings have to be created manually. The costs for the manual creation of mappings constitute a significant entry barrier for applying OBDA in practice.</p><p>To overcome this limitation we propose a novel semi-automatic schema matching approach and a system called IncMap to support the creation of mappings directly from relational schemata to ontologies.</p><p>We focus on finding one-to-one (direct) correspondences of ontological and relational schema elements, while we also work on extensions for finding more complex correspondences. In order to compute mapping suggestions IncMap uses a relational schema, an OWL ontology, a set of user conjunctive queries over the ontology, and user feedback as basic input.</p><p>The matching approach of IncMap is inspired by the Similarity Flooding algorithm of Melnik et al. <ref type="bibr" target="#b6">[8]</ref> that works well for schemata that follow the same modeling principles (e.g., same level of granularity). However, applying the Similarity Flooding algorithm naively for matching schema elements of a relational schema to an OWL ontology results in rather poor quality of the suggested correspondences as we show in our experiments. A major reason is the impedance mismatch between ontologies and relational schemata: While ontologies typically model high-level semantic information, relational schemata describe the syntactical structure on a very low level of granularity.</p><p>The contributions of the paper are the following:</p><p>-In Section 3, we propose a novel graph structure called IncGraph to represent schema elements from both ontologies and relational schemata in a unified way. Therefore, we devise algorithms to convert an ontology as well as a relational schema into their unified IncGraph representation. We also briefly discuss techniques to further improve IncGraph. -In Section 4, we present our matching algorithm that we use for matching</p><p>IncGraphs. Its most prominent feature is that IncMap can produce the mapping incrementally, query by query. While the original Similarity Flooding algorithm generates correspondences for all schema elements, IncMap supports a pay as you go matching strategy. For each query we produce only required mappings. IncMap leverages the structure of mappings from previ-ous queries to improve suggestion quality. This effectively reduces the total effort for the user to verify mapping suggestions. -Section 5 presents an experimental evaluation using different (real-world) relational schemata and ontologies. We see that even in the basic version of IncMap, the effort for creating a mapping is up to 20% less than using the Similarity Flooding algorithm in a naive way. In addition, the incremental version of IncMap can reduce the total effort by another 50% − 70%.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Background</head><p>In this section we briefly introduce ontologies <ref type="bibr" target="#b7">[9]</ref>, relational schemata, and the Similarity Flooding algorithm <ref type="bibr" target="#b6">[8]</ref>.</p><p>Ontologies. Relational Schemata. A relational schema R defines a set of relations (tables) T , where each table defines a set of columns c. We also assume that a schema contains foreign keys k that define references between tables.</p><p>Similarity Flooding Algorithm. The Similarity Flooding algorithm matches a given schema S with a schema S . In the first step, directed labeled graphs G(S) and G(S ) are constructed from S and S , where the nodes represent the schema elements, and the edges with labels define relationships between the schema elements. There is no exact procedure to construct the graphs from the schemata given in <ref type="bibr" target="#b6">[8]</ref>. Thus, the Similarity Flooding algorithm is open for any graph construction process. The second step in the algorithm is to merge G(S) and G(S ) into one graph, a so-called pairwise connectivity graph PCG.</p><p>Intuitively, each node of the PCG is a pair of nodes, and represents a potential match between schema elements of S and S . Then, the PCG is enriched with inverse edges and edge weights (propagation coefficients), where the value of the weights is based on the number of outgoing edges with the same label from a given node. This graph is called the induced propagation graph IPG. The final step of the algorithm is a fix-point computation to propagate initial similarities by using the structural dependencies represented by the propagation coefficients. The fix-point computation termination is based either on threshold values or the number of iterations. The result is a ranked list of suggested mappings. We refer to <ref type="bibr" target="#b6">[8]</ref> for further details.</p><p>Algorithm 1: IncGraph for constructing graphs from ontologies Algorithm 2: IncGraph for constructing graphs from relational schemata</p><formula xml:id="formula_0">INPUT : OWL ontology O OUTPUT: Graph G = (V, Lbl V , E, Lbl E ) 1 Let G = (V, Lbl V , E, Lbl E ), V = {n }, Lbl V = {(n , )}, E = ∅, Lbl E = ∅; 2 foreach C ∈ Class(O) do V := V ∪ {n C } and Lbl E (n C ) := C 3 foreach P ∈ Property(O) do</formula><formula xml:id="formula_1">INPUT : Relational Schema R OUTPUT: Graph G = (V, Lbl V , E, Lbl E ) 1 Let V = ∅, Lbl V = ∅, E = ∅, Lbl E = ∅; 2 foreach table T in R do 3 V := V ∪ {n T } and Lbl V (n T ) := T ; 4 foreach column c in R do 5 V := V ∪ {nc} and Lbl V (nc) := c; 6 E := E ∪ {(n T , nc)} and Lbl E ((n T , nc)) := 'value' 7 if c has a foreign key k to some table T then 8 V := V ∪ {n k } and Lbl V (n k ) := k; 9 E := E ∪ {(n T , n k )} and Lbl E ((n T , n k )) := 'ref' 10 E := E ∪ {(n k , n T )} and Lbl E ((n k , n T )) := 'ref'</formula><p>11 return G.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">The IncGraph Model</head><p>In this section, we describe the IncGraph model used by IncMap to represent schema elements of an OWL ontology O and a relational schema R in a unified way.</p><p>An IncGraph model is defined as directed labeled graph G = (V, Lbl V , E, Lbl E ). It can be used as input by the original Similarity Flooding algorithm (Section 2) or IncMap. V represents a set of vertices, E a set of directed edges, Lbl V a set of labels for vertices (i.e., one label for each vertex) and Lbl E a set of labels for edges (i.e., one label for each edge). A label l V ∈ Lbl V represents a name of a schema element whereas a label l E ∈ Lbl E is either "ref" representing a so called ref-edge or "value" representing a so called val-edge.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">IncGraph Construction</head><p>The goal of the procedures for the basic construction is to incorporate explicit schema information from O and R into the IncGraph model. Incorporating implicit schema information is discussed in the next section.</p><p>Algorithm 1 creates an IncGraph model G for a given ontology O. The algorithm constructs a vertex n C for each class name C ∈ Class(O) and a vertex The algorithm constructs a vertex n T for each table and a vertex n c for each column using the names of these schema elements as labels Lbl V . Directed edges with the label "value" are created from a node n T representing a table to a node n c representing a columns of that table. For columns with a foreign key k an additional node n k is created. Moreover, two directed edges with the label "ref" are added, which represent a path from node n T to a node n T representing the referenced table via node n k .</p><formula xml:id="formula_2">!"#$%&amp;!!'() *+,-$./,) 0/1&amp;+2) 0+,-$.!) 3/4+-) ,&amp;25-) 6%&amp;!!) !"#$%&amp;!!'() '#7-$.</formula><p>Figure <ref type="figure" target="#fig_1">1</ref> shows the result of applying these two algorithms to the ontology O and the relational schema R in this figure. Both O and R describe the same entities Directors and Movies using different schema elements. The resulting IncGraph models of O and R represent the schema structure in a unified way.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">IncGraph Annotations</head><p>IncGraph is designed to represent both relational schemata and ontologies in a structurally similar fashion because matching approaches such as ours work best when the graph representations on both the source and target side are as similar as possible. However, even in IncGraph structural differences remain due to the impedance mismatch and different design patterns used in ontologies and relational schemata, respectively.</p><p>We consider this issue by supporting annotations in IncGraph. Annotations basically are additional ref-edges in either the source or target model that can be designed to bridge structural gaps for different design patterns or levels of granularity. For instance, shortcut edges in the relational IncGraph model could represent a multi-hop join over a chain of relationship relations. Annotations can be constructed by plug-ins during IncGraph construction.</p><p>We plan to evaluate the opportunities of different kinds of annotations in future work.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">The IncMap System</head><p>In this section, we present our matching approach and system called IncMap. In-cMap takes a source and target IncGraph as input, i.e., the IncGraphs produced for a relational schema and for an ontology as described in Section 3.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Overview of IncMap</head><p>In its basic version, IncMap applies the original Similarity Flooding algorithm (with minor adaptions) and thus creates initial mapping suggestions for the IncGraph of an ontology O and a relational schema R. In its extended version, IncMap activates inactive ref-edges before executing the Similarity Flooding algorithm to achieve better mapping suggestions.</p><p>Another extension is the incremental version of IncMap. In this version the initial mapping suggestions are re-ranked by IncMap in a semi-automatic approach by including user feedback. Re-ranking works iteratively in a query-driven fashion thus increasing the quality of the suggested mappings. In each iteration, IncMap applies a version of the Similarity Flooding algorithm (as described before). However, in addition between each iteration user feedback is incorporated.</p><p>The idea of user feedback is that the user confirms those mapping suggestions of the previous iteration, which are required to answer a given user query over ontology O. Confirmed suggestions are used as input for the next iteration to produce better suggestions for follow-up queries. This is in contrast to many other existing approaches (including the original Similarity Flooding algorithm) that return a mapping for the complete source and target schema only once.</p><p>IncMap is designed as a framework and provides different knobs to control which extensions to use and within each extension which concrete variants to choose (e.g., to select a concrete strategy for activating inactive edges). The goal of this section is to present IncMap with all its variants and to show their benefits for different real-world data sets in our experimental evaluation in Section 5. A major avenue of future work is to apply optimization algorithms to find the best configurations of IncMap for a given ontology O and schema R automatically by searching the configuration space based on the knobs presented before.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Basic Matching in IncMap</head><p>As already mentioned, in the basic version of IncMap, we simply apply the Similarity Flooding algorithm for the two IncGraphs produced for a relational schema R and for an ontology O similar to the process as described in Section 2.</p><p>As a first step, IncMap generates the PCG (i.e., a combined graph which pairs similar nodes of both input IncGraphs) using an initial lexical matching, which supports interchangeable matchers as one knob for configuration. One difference is the handling of inactive ref-edges in the input IncGraphs. For inactive refedges, which are not handled in the original Similarity Flooding, we apply the following rule when building the PCG: if an edge in the PCG refers to at least one inactive ref-edge in one of the IncGraph models, it also becomes inactive in the PCG.</p><p>In addition, other than in the original Similarity Flooding approach, where propagation coefficients for the IPG are ultimately determined during graph construction, our propagation coefficients can be calculated several times when the graph changes with the activation and deactivation of edges. Also, propagation coefficients in IncMap are modular and can be changed. In particular, a new weighting formula supported by IncMap considers the similarity scores on both ends of an edge in the IPG. The intuition behind this is that a higher score indicates better chances of the match being correct. Thus, an edge between two matches with relatively high scores is more relevant for the structure than an edge between one isolated well-scored match and another with a poor score. For calculating the weight w(e) of a directed edge e = (n 1 , n 2 ) from n 1 to n 2 in the IPG where l is the label of the edge, we currently use two alternatives:</p><p>-Original Weight as in <ref type="bibr" target="#b6">[8]</ref> : w(e) = 1/out l where out l is the number of edges connected to node n 1 with the same label l -Normalized Similarity Product: w(e) = (score(n 1 ) * score(n 2 ))/out l .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.3">Extended IncMap: Iterative User Feedback</head><p>Query-driven incremental mappings allow to leverage necessary user feedback after each iteration to improve the quality of mapping suggestions in subsequent iterations. One of the reasons why we have chosen Similarity Flooding as a basis for IncMap is the fact that user feedback can be integrated by adopting the initial match scores in an IPG before the fix-point computation starts.</p><p>Though the possibility of an incremental approach has been mentioned already in the Similarity Flooding paper <ref type="bibr" target="#b6">[8]</ref>, it so far has not been implemented and evaluated. Also, while it is simple to see where user feedback could be incorporated in the IPG, it is far less trivial to decide which feedback should be employed and how exactly it should be integrated in the graph. In this paper we focus on leveraging only the most important kind of user feedback, i.e., the previous confirmation and rejection of suggested mappings. We have devised three alternative methods how to add this kind of feedback into the graph.</p><p>First, as a confirmed match corresponds to a certain score of 1.0, while a rejected match corresponds to a score of 0.0, we could simply re-run the fix-point computation with adjusted initial scores of confirmed and/or rejected matches. We consequently name this first method Initializer. However, there is a clear risk that the influence of such a simple initialization on the resulting mapping is too small as scores tend to change rapidly during the first steps of the fix-point computation.</p><p>To tackle this potential problem, our second method guarantees maximum influence of feedback throughout the fix-point computation. Instead of just initializing a confirmed or rejected match with their final score once, we could repeat the initialization at the end of each step of the fix-point computation after normalization. This way, nodes with definite user feedback influence their neighborhood with their full score during each step of the computation. We therefore call this method Self-Confidence Nodes. However, as scores generally decrease in most parts of the graph during the fix-point computation and high scores become more important for the ranking of matches in later fix-point computation steps, this method implies the risk of over-influencing parts of the graph. For example, one confirmed match in a partially incorrect graph neighborhood would almost certainly move all of its neighbors to the top of their respective suggestion lists.</p><p>Finally, with our third method, we attempt to balance the effects of the previous two methods. We therefore do not change a confirmed match directly but include an additional node in IPG that can indirectly influence the match score during the fix-point computation. We name this method Influence Nodes. By keeping the scores of those additional influence nodes invariant we ensure permanent influence throughout all steps of the fix-point computation. Yet, the influence node only indirectly affects the neighborhood of confirmed nodes through the same propagation mechanism that generally distributes scores through the graph.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Experimental Evaluation</head><p>The main goal of IncMap is to reduce the human effort for constructing mappings between existing relational database schemata and ontologies. Mapping suggestions are intended to be used only after they have been validated by a user. Thus, there are two relevant evaluation measures: first, the percentage of the mappings in the reference mappings that can be represented by IncMap. We specify this percentage for all reference mappings when introducing them. Certain complex mappings (e.g., mappings performing data transformations) cannot be represented by IncMap. These complex mappings are rare in all realworld reference mappings we used in this paper. The second and most important measure is the amount of work that a user needs to invest to transform a set of mapping suggestions into the correct (intended) mappings. As the latter is the most crucial aspect, we evaluate our approach by measuring the work time required to transform our suggestions into the existing reference mappings.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.1">Relational Schemata and Ontologies</head><p>To show the general viability of our approach, we evaluate IncMap in two scenarios with fairly different schematic properties. In addition to showing the key benefits of the approach under different conditions, this also demonstrates how the impact of modular parameters varies for different scenarios.</p><p>IMDB and Movie Ontology. As a first scenario, we evaluate a mapping from the schema of well known movie database IMDB<ref type="foot" target="#foot_0">4</ref> to the Movie Ontology <ref type="bibr" target="#b8">[10]</ref>. With 27 foreign keys connecting 21 tables in the relational schema and 27 explicitly modeled object properties of 21 classes in the ontology, this scenario is average in size and structural complexity. The reference mappings we use to derive correspondences for this scenario<ref type="foot" target="#foot_1">5</ref> has been made available by the -ontop-team <ref type="bibr" target="#b9">[11]</ref>. A set of example queries is provided together with these reference mappings. We use these to construct annotations for user queries as well as to structure our incremental, query-by-query experiments. We extract a total of 73 potential correspondences from this mapping, 65 of which can be represented by IncMap as mapping suggestions. This corresponds to 89% of the mappings that could be represented in IncMap. MusicBrainz and Music Ontology. The second scenario is a mapping from the database <ref type="foot" target="#foot_2">6</ref> to the Music Ontology <ref type="bibr" target="#b10">[12]</ref>. The relational schema contains 271 foreign keys connecting 149 tables, while the ontology contains 169 explicitly modeled object properties and 100 classes, making the scenario both larger and more densely connected than the previous one. Here we use R2RML reference mappings that have been developed in the project EUCLID. <ref type="foot" target="#foot_3">7</ref> As there were no example queries provided with the mapping in this case, we use example queries provided by the Music Ontology for user query annotations and to structure the incremental experiment runs.</p><p>For these reference mappings, two out of 48 correspondences cannot be represented as mapping suggestions by IncMap as they require data transformations. This corresponds to 95.8% of the mappings that could be represented in IncMap.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.2">Work Time Cost Model</head><p>We evaluate our algorithms w.r.t. reducing work time (human effort). As the user feedback process always needs to transform mapping suggestions generated by IncMap into the correct mappings (i.e. to achieve a precision and recall of 100%), the involved effort is the one distinctive quality measure. To this end, we have devised a simple and straightforward work time cost model as follows: we assume that users validate mappings one by one, either accepting or rejecting them. We further assume that each validation, on average, takes a user the same amount of time t validate . The costs for finding the correct correspondence for any concept in this case is identical with the rank of the correct mapping suggestion in the ranked list of mapping suggestions for the concept times t validate .</p><p>As IncMap is interactive by design and would propose the user one mapping suggestion after another, this model closely corresponds to end user reality. We are aware that this process represents a simplification of mapping reality where users may compile some of the mappings by other means for various reasons. Nevertheless, this happens in the same way for any suggestion system and therefore does not impact the validity of our model for the purpose of comparison.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.3">Experimental Evaluation</head><p>Experiment 1 -Naive vs. IncGraph. In our first experiment we compare the effort required to correct the mapping suggestions when the schema and ontol- </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Related Work</head><p>Many existing mapping systems rely on two-step mapping procedures: They employ lexical similarity of terms together with structural similarity of the structures ( <ref type="bibr" target="#b11">[13,</ref><ref type="bibr" target="#b12">14,</ref><ref type="bibr" target="#b13">15]</ref> or <ref type="bibr" target="#b14">[16,</ref><ref type="bibr" target="#b15">17]</ref> for surveys). A very few of them rely on variations of Similarity Flooding to perform the latter task. However, to the best of our knowledge, all of these approaches focus on ontology-to-ontology rather than relational schema-to-ontology mappings. RiMOM <ref type="bibr" target="#b16">[18]</ref> performs a multi-strategy mapping discovery between ontologies and performs mappings using a variant of the Similarity Flooding algorithm, while it relies on structural similarities of ontologies derived from sub-class and sub-property relationships, rather than connectivity of classes via properties as we do in order to get a better alignment of relational schemata and ontologies. In Yamm++ <ref type="bibr" target="#b17">[19]</ref> the authors used Similarity Flooding and exploit both sub-class and sub-property relationships, and domain and ranges of ontologies, while they did it in a naive way which, as our experimental results showed, does not give good results for relational schemata-to-ontology mappings. Moreover, they use Similarity Flooding to obtain new mappings on top of the ones obtained via linguistic similarities, while we do not derive new mappings but refine the ranking over the linguistically derived ones. There are works on semi-automatic discovery of relational schema-to-ontology mappings, but they use approaches different from ours: For example, <ref type="bibr" target="#b18">[20]</ref> transforms relational schemata and ontologies into directed labeled graphs respectively and reuse COMA <ref type="bibr" target="#b19">[21]</ref> for essentially syntactic graph matching. Ronto <ref type="bibr" target="#b20">[22]</ref> uses a combination of syntactic strategies to discover mappings by distinguishing the types of entities in relational schemata. The authors of <ref type="bibr" target="#b21">[23]</ref> exploit structure of ontologies and relational schemata by calculating the confidence measures between virtual documents corresponding to them via the TF/IDF model. All these approaches do not incorporate implicit schema information and do not support an incremental mapping construction in the pay as you go fashion as IncMap does. Finally, <ref type="bibr" target="#b22">[24]</ref> describes an approach to derive complex correspondences for a relational schema-to-ontology mapping using simple correspondences as input. This work is orthogonal to the approach presented in this paper.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="7">Conclusions and Outlook</head><p>We presented IncMap, a novel semi-automatic matching approach for generating relational schema-to-ontology mappings. Our approach is based on a novel unified graph model called IncGraph for ontologies and relational schemata. In-cMap implements a semi-automatic matching approach to derive mappings from IncGraphs using both lexical and structural similarities between ontologies and relational schemata. In order to find structural similarities IncMap exploits both explicit and implicit schema information. Moreover, IncMap allows to incorporate user queries and user feedback in an incremental way, thus, enabling a pay as you go fashion of the mapping generation. Our experiments with IncMap on different real-world relational schemata and ontologies showed that the effort for creating a mapping with IncMap is up to 20% less than using the Similarity Flooding algorithm in a naive way. The incremental version of IncMap reduces the total effort of mapping creation by another 50% − 70%. As future work we plan to follow three lines: (1) add more implicit schema information (annotations) to the IncGraphs, (2) support more complex mappings in IncMap, and</p><p>(3) devise a search strategy over the configuration space to auto-tune IncMap.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="8">Acknowledgements</head><p>This work was supported by the Seventh Framework Program (FP7) of the European Commission under Grant Agreement 318338, the Optique project.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>4 V 5 if P is an object property then 6 E 7 Let C ∈ Range(P ); 8 E 9 else if P is a data property then 10 E</head><label>45678910</label><figDesc>:= V ∪ {n P } and Lbl V (n P ) := P ; Let C ∈ Domain(P ); := E ∪ {(n C , n P )} and Lbl V ((n C , n P )) := 'ref'; := E ∪ {(n P , n C )} and Lbl V ((n P , n C )) := 'ref'; := E ∪ {(n C , n P )} and Lbl E ((n C , n P )) := 'value' 11 return G.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. IncGraph Construction Example n P for each property name P ∈ Property(O) using the names of these ontology elements as label in Lbl V . Directed edges in the IncGraph model are created for each domain and range definition in O. The labels Lbl E for edges are either "ref" in case of an object property or "value" in case of a data property. For a domain definition in O the direction of the edge in G is from the node n C representing the domain of P to the node n P representing the property P . For a range definition the direction of the edge in G is from the node n P representing object property to the node n C representing the range of P (i.e., another class). If an object property in O has no range (respectively, domain) definition, then a directed labeled edge to a node n is added to explicitly model the most general range (respectively, domain), i.e., a top-level concept like Thing.Algorithm 2 creates a IncGraph model G for a given relational schema R: The algorithm constructs a vertex n T for each table and a vertex n c for each column using the names of these schema elements as labels Lbl V . Directed edges with the label "value" are created from a node n T representing a table to a node n c representing a columns of that table. For columns with a foreign key k an additional node n k is created. Moreover, two directed edges with the label "ref" are added, which represent a path from node n T to a node n T representing the referenced table via node n k .Figure1shows the result of applying these two algorithms to the ontology O and the relational schema R in this figure. Both O and R describe the same entities Directors and Movies using different schema elements. The resulting IncGraph models of O and R represent the schema structure in a unified way.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>An ontology O specifies a conceptualization of a domain in terms of classes and properties and consists of a set of axioms. Without explanation, ontologies in this paper are OWL ontologies and we will use the following OWL constructs: object and data properties P , and domains Domain(P ) and ranges Range(P ) of properties. We denote with Class(O) and Property(O) the sets of class and property names, respectively, occurring in the ontology O. For a given ontology O, with C ∈ Domain(P ) we denote the fact that one can derive from O that the class name C is a domain of the property P . Also, C ∈ Range(P ) denotes the fact that C is a range of P and it is derivable from O.</figDesc><table /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_0">http://www.imdb.com</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_1">https://babbage.inf.unibz.it/trac/obdapublic/wiki/Example MovieOntology</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_2">http://musicbrainz.org/doc/MusicBrainz Database</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="7" xml:id="foot_3">http://euclid-project.eu</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">Big Data&apos; is Only the Beginning of Extreme Information Management</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Beyer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Lapkin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Gall</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Feinberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">T</forename><surname>Sribar</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page">G00211490</biblScope>
		</imprint>
	</monogr>
	<note type="report_type">Gartner rep</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<author>
			<persName><forename type="first">J</forename><surname>Crompton</surname></persName>
		</author>
		<ptr target="http://www.w3.org/2008/12/ogws-slides/Crompton.pdf" />
		<title level="m">Keynote talk at the W3C Workshop on Sem. Web in Oil &amp; Gas Industry</title>
				<imprint>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Linking Data to Ontologies</title>
		<author>
			<persName><forename type="first">A</forename><surname>Poggi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Lembo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Calvanese</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">D</forename><surname>Giacomo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lenzerini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Rosati</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">J. Data Semantics</title>
		<imprint>
			<biblScope unit="volume">10</biblScope>
			<biblScope unit="page" from="133" to="173" />
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">The Combined Approach to Ontology-Based Data Access</title>
		<author>
			<persName><forename type="first">R</forename><surname>Kontchakov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Lutz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Toman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Wolter</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Zakharyaschev</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IJCAI</title>
				<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page" from="2656" to="2661" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">OntoNaviERP: Ontology-Supported Navigation in ERP Software Documentation</title>
		<author>
			<persName><forename type="first">M</forename><surname>Hepp</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Wechselberger</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">International Semantic Web Conference</title>
				<imprint>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">SODA: Generating SQL for Business Users</title>
		<author>
			<persName><forename type="first">L</forename><surname>Blunschi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Jossen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Kossmann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mori</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Stockinger</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">PVLDB</title>
		<imprint>
			<biblScope unit="volume">5</biblScope>
			<biblScope unit="issue">10</biblScope>
			<biblScope unit="page" from="932" to="943" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Similarity Flooding: A Versatile Graph Matching Algorithm and its Application to Schema Matching</title>
		<author>
			<persName><forename type="first">S</forename><surname>Melnik</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Garcia-Molina</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Rahm</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ICDE, IEEE Computer Society</title>
				<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">OWL 2 Web Ontology Language 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><forename type="middle">F</forename><surname>Patel-Schneider</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Parsia</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">W3C Rec</title>
		<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<author>
			<persName><forename type="first">A</forename><surname>Bouza</surname></persName>
		</author>
		<ptr target="http://www.movieontology.org" />
		<title level="m">MO -The Movie Ontology</title>
				<imprint>
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">High Performance Query Answering over DL-Lite Ontologies</title>
		<author>
			<persName><forename type="first">M</forename><surname>Rodriguez-Muro</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Calvanese</surname></persName>
		</author>
		<editor>KR.</editor>
		<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<ptr target="www.musicontology.com" />
		<title level="m">Music Ontology</title>
				<editor>
			<persName><forename type="first">Y</forename><surname>Raimond</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Giasson</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">LogMap: Logic-Based and Scalable Ontology Matching</title>
		<author>
			<persName><forename type="first">E</forename><surname>Jiménez-Ruiz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">C</forename><surname>Grau</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">International Semantic Web Conference</title>
				<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page" from="273" to="288" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">SAMBO -A system for aligning and merging biomedical ontologies</title>
		<author>
			<persName><forename type="first">P</forename><surname>Lambrix</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Tan</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">J. Web Sem</title>
		<imprint>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="196" to="206" />
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Clio: Schema Mapping Creation and Data Exchange</title>
		<author>
			<persName><forename type="first">R</forename><surname>Fagin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><forename type="middle">M</forename><surname>Haas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Hernández</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">J</forename><surname>Miller</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Popa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Velegrakis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Conceptual Modeling: Foundations and Applications</title>
				<imprint>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page" from="198" to="236" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">Ontology Matching: State of the Art and Future Challenges</title>
		<author>
			<persName><forename type="first">P</forename><surname>Shvaiko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Euzenat</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Trans. Knowl. Data Eng</title>
		<imprint>
			<biblScope unit="volume">25</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="158" to="176" />
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">A Survey of Approaches to Automatic Schema Matching</title>
		<author>
			<persName><forename type="first">E</forename><surname>Rahm</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">A</forename><surname>Bernstein</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">VLDB J</title>
		<imprint>
			<biblScope unit="page" from="334" to="350" />
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">RiMOM: A Dynamic Multistrategy Ontology Alignment Framework</title>
		<author>
			<persName><forename type="first">J</forename><surname>Li</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Tang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Li</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Q</forename><surname>Luo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Trans. Knowl. Data Eng</title>
		<imprint>
			<biblScope unit="page" from="1218" to="1232" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">YAM++: A Multi-strategy Based Approach for Ontology Matching Task</title>
		<author>
			<persName><forename type="first">D</forename><surname>Ngo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Z</forename><surname>Bellahsene</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">EKAW</title>
		<imprint>
			<biblScope unit="page" from="421" to="425" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">Composing Mappings Between Schemas Using a Reference Ontology</title>
		<author>
			<persName><forename type="first">E</forename><forename type="middle">C</forename><surname>Dragut</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Lawrence</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">CoopIS/DOA/ODBASE</title>
		<imprint>
			<biblScope unit="volume">1</biblScope>
			<biblScope unit="page" from="783" to="800" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">COMA -A System for Flexible Combination of Schema Matching Approaches</title>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">H</forename><surname>Do</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Rahm</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">VLDB</title>
				<imprint>
			<date type="published" when="2002">2002</date>
			<biblScope unit="page" from="610" to="621" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Ronto: Relational to Ontology Schema Matching</title>
		<author>
			<persName><forename type="first">P</forename><surname>Papapanagiotou</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Katsiouli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Tsetsos</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Anagnostopoulos</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Hadjiefthymiades</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">AIS SIGSEMIS BULLETIN</title>
		<imprint>
			<biblScope unit="page" from="32" to="34" />
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">Discovering Simple Mappings Between Relational Database Schemas and Ontologies</title>
		<author>
			<persName><forename type="first">W</forename><surname>Hu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Qu</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ISWC/ASWC</title>
				<imprint>
			<date type="published" when="2007">2007</date>
			<biblScope unit="page" from="225" to="238" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<analytic>
		<title level="a" type="main">Inferring Complex Semantic Mappings Between Relational Tables and Ontologies from Simple Correspondences</title>
		<author>
			<persName><forename type="first">Y</forename><surname>An</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Borgida</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">OTM Conferences</title>
		<imprint>
			<biblScope unit="issue">2</biblScope>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

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