Abstract
The goal of data exchange is to populate the data model of a target application using data that come from one or more source applications. It is common to address data exchange building on correspondences that are transformed into executable mappings. The problem that we address in this article is how to generate executable mappings in the context of Linked Data applications, that is, applications whose data models are semantic-web ontologies. In the literature, there are many proposals to generate executable mappings. Most of them focus on relational or nested-relational data models, which cannot be applied to our context; unfortunately, the few proposals that focus on ontologies have important drawbacks, namely: they solely work on a subset of taxonomies, they require the target data model to be pre-populated or they interpret correspondences in isolation, not to mention the proposals that actually require the user to handcraft the executable mappings. In this article, we present MostoDE, a new automated proposal to generate SPARQL executable mappings in the context of Linked Data applications. Its salient features are that it does not have any of the previous drawbacks, it is computationally tractable and it has been validated using a series of experiments that prove that it is very efficient and effective in practice.
Similar content being viewed by others
References
Alexe B, Chiticariu L, Miller RJ, Pepper D, Tan WC (2008a) Muse: A system for understanding and designing mappings. In: SIGMOD, pp 1281–1284
Alexe B, Tan WC, Velegrakis Y (2008b) STBenchmark: towards a benchmark for mapping systems. PVLDB 1(1):230–244
Antoniou G, van Harmelen F (2008) A semantic web primer, 2nd edn. The MIT Press, Cambridge
Arenas M, Libkin L (2008) XML data exchange: consistency and query answering. J ACM 55(2):1–72
Arjona JL, Corchuelo R, Ruiz D, Toro M (2007) From wrapping to knowledge. IEEE Trans Knowl Data Eng 19(2):310–323
Bechhofer S, van Harmelen F, Hendler J, Horrocks I, McGuinness DL, Patel-Schneider PF, Stein LA (2004) OWL web ontology language reference. Technical report, W3C. http://www.w3.org/TR/owl-ref/
Bernstein PA, Haas LM (2008) Information integration in the enterprise. Commun ACM 51(9):72–79
Bernstein PA, Melnik S (2007) Model management 2.0: manipulating richer mappings. In: SIGMOD, pp 1–12
Bizer C (2009) The emerging Web of Linked Data. IEEE intelligent systems 5(3):87–92
Bizer C, Lehmann J, Kobilarov G, Auer S, Becker C, Cyganiak R, Hellmann S (2009) DBpedia: a crystallization point for the Web of Data. J Web Semant 7(3):154–165
Bouquet P, Giunchiglia F, van Harmelen F, Serafini L, Stuckenschmidt H (2004) Contextualizing ontologies. J Web Semant 1(4):325–343
Candan KS, Kim JW, Liu H, Suvarna R (2006) Discovering mappings in hierarchical data from multiple sources using the inherent structure. Knowl Inf Syst 10(2):185–210
Choi N, Song I-Y, Han H (2006) A survey on ontology mapping. SIGMOD Rec 35(3):34–41
Deutsch A, Nash A, Remmel JB (2008) The chase revisited. In: PODS, pp 149–158
Dorneles CF, Gonçalves R (2011) Approximate data instance matching: a survey. Knowl Inf Syst 27(1): 1–21
Dou D, McDermott DV, Qi P (2005) Ontology translation on the semantic web. J Data Semant 2:35–57
Euzenat J, Shvaiko P (2007) Ontology matching. Springer, Berlin
Fagin R, Kolaitis PG, Miller RJ, Popa L (2005) Data exchange: semantics and query answering. Theor Comput Sci 336(1):89–124
Flouris G, Konstantinidis G, Antoniou G, Christophides V (2012) Formal foundations for RDF/S KB evolution. Knowl Inf Syst 1–39. doi:10.1007/s10115-012-0500-2
Flouris G, Manakanatas D, Kondylakis H, Plexousakis D, Antoniou G (2008) Ontology change: classification and survey. Knowl Eng Rev 23(2):117–152
Glimm B, Hogan A, Krötzsch M, Polleres A (2012) OWL: yet to arrive on the web of data? In: LDOW
Groza T, Grimnes G, Handschuh S, Decker S (2011) From raw publications to Linked Data. Knowl Inf Syst 1–21. doi:10.1007/s10115-011-0473-6
Haas LM, Hernández MA, Ho H, Popa L, Roth M (2005) Clio grows up: From research prototype to industrial tool. In: SIGMOD, pp 805–810
Halevy AY (2001) Answering queries using views: a survey. VLDB J 10(4):270–294
Hopcroft JE, Tarjan RE (1973) Efficient algorithms for graph manipulation [H] (Algorithm 447). Commun ACM 16(6):372–378
Jing Y, Jeong D, Baik D-K (2009) SPARQL graph pattern rewriting for OWL-DL inference queries. Knowl Inf Syst 20(2):243–262
Klusch M, Fries B, Sycara KP (2009) OWLS-MX: a hybrid semantic web service matchmaker for OWL-S services. J Web Semant 7(2):121–133
Klyne G, Carroll JJ (2004) Resource description framework (RDF): concepts and abstract syntax. Technical report, W3C. http://www.w3.org/TR/rdf-concepts/
Kobilarov G, Scott T, Raimond Y, Oliver S, Sizemore C, Smethurst M, Bizer C, Lee R (2009) Media meets semantic web: how the BBC uses DBpedia and Linked Data to make connections. In: ESWC, pp 723–737
Leite M, Ricarte I (2012) Relating ontologies with a fuzzy information model. Knowl Inf Syst 1–33. doi:10.1007/s10115-012-0482-0
Lenzerini M (2002) Data integration: A theoretical perspective. In: PODS, pp 233–246
Maedche A, Motik B, Silva N, Volz R (2002) MAFRA: A MApping FRAmework for distributed ontologies. In: EKAW, pp 235–250
Mergen SLS, Heuser CA (2006) Data translation between taxonomies. In: CAiSE, pp 111–124
Mocan A, Cimpian E (2007) An ontology-based data mediation framework for semantic environments. Int. J Semant Web Inf Syst 3(2):69–98
Motik B, Horrocks I, Sattler U (2009) Bridging the gap between OWL and relational databases. J Web Semant 7(2):74–89
Mrissa M, Ghedira C, Benslimane D, Maamar Z, Rosenberg F, Dustdar S (2007) A context-based mediation approach to compose semantic web services. ACM Trans Internet Tech 8(1):4
Noy NF (2004) Semantic integration: a survey of ontology-based approaches. SIGMOD Rec 33(4):65–70
Noy NF, Klein MCA (2004) Ontology evolution: not the same as schema evolution. Knowl Inf Syst 6(4):428–440
Omelayenko B (2002) Integrating vocabularies: discovering and representing vocabulary maps. In: ISWC, pp 206–220
Palopoli L, Rosaci D, Terracina G, Ursino D (2005) A graph-based approach for extracting terminological properties from information sources with heterogeneous formats. Knowl Inf Syst 8(4):462–497
Parreiras FS, Staab S, Schenk S, Winter A (2008) Model driven specification of ontology translations. In: ER, pp 484–497
Pedrinaci C, Domingue J (2010) Toward the next wave of services: linked services for the web of data. J UCS 16(13):1694–1719
Petropoulos M, Deutsch A, Papakonstantinou Y, Katsis Y (2007) Exporting and interactively querying web service-accessed sources: the CLIDE system. ACM Trans Database Syst 32(4):22
Polleres A, Scharffe F, Schindlauer R (2007) SPARQL++ for mapping between RDF vocabularies. In: OTM, pp 878–896
Popa L, Velegrakis Y, Miller RJ, Hernández MA, Fagin R (2002) Translating web data. In: VLDB, pp 598–609
Prud’hommeaux E, Seaborne A (2008) SPARQL query language for RDF. Technical report, W3C. http://www.w3.org/TR/rdf-sparql-query/
Qin H, Dou D, LePendu P (2007) Discovering executable semantic mappings between ontologies. In: ODBASE, pp 832–849
Raffio A, Braga D, Ceri S, Papotti P, Hernández MA (2008) Clip: A visual language for explicit schema mappings. In: ICDE, pp 30–39
Rahm E, Bernstein PA (2001) A survey of approaches to automatic schema matching. VLDB J 10(4): 334–350
Ressler J, Dean M, Benson E, Dorner E, Morris C (2007) Application of ontology translation. In: ISWC, pp 830–842
Rivero CR, Hernández I, Ruiz D, Corchuelo R (2011a) Generating SPARQL executable mappings to integrate ontologies. In: ER, pp 118–131
Rivero CR, Hernández I, Ruiz D, Corchuelo R (2011b) Mosto: Generating SPARQL executable mappings between ontologies. In: ER, pp 345–348
Rivero CR, Hernández I, Ruiz D, Corchuelo R (2011c) On benchmarking data translation systems for semantic-web ontologies. In: CIKM, pp 1613–1618
Rivero CR, Hernández I, Ruiz D, Corchuelo R (2012) Benchmarking data exchange amongst semantic-web ontologies. IEEE Trans Knowl Data Eng PP(99). doi:10.1109/TKDE.2012.175
Rivero CR, Ruiz D, Corchuelo R (2011d) Automatic generation of executable mappings: a semantic-web technologies approach. Technical report TDG-247, University of Sevilla. http://www.tdg-seville.info/Download.ashx?id=247
Serafini L, Tamilin A (2007) Instance migration in heterogeneous ontology environments. In: ISWC, pp 452–465
Shadbolt N, Berners-Lee T, Hall W (2006) The semantic web revisited. IEEE Intell Syst 21(3):96–101
Acknowledgments
We would like to thank Dr. Alberto Pan, Dr. Paolo Papotti and Dr. Carlos Pedrinaci for their helpful suggestions on an earlier draft of this article. We also thank our reviewers for their insightful and valuable comments, which helped us improve the paper significantly. The work on which we report was supported by the European Commission (FEDER), the Spanish and the Andalusian R&D&I programmes (grants TIN2007-64119, P07-TIC-2602, P08-TIC-4100, TIN2008-04718-E, TIN2010-21744, TIN2010-09809-E, TIN2010-10811-E, TIN2010-09988-E, and TIN2011-15497-E).
Author information
Authors and Affiliations
Corresponding author
Subset of the OWL 2 Lite profile
Subset of the OWL 2 Lite profile
The OWL 2 Lite profile specification provides a number of constructs that are classified into the following groups [6]: RDFS features, equality, restricted cardinality, property characteristics, general property restrictions, class intersection and meta-information. We analyse them in the following paragraphs. The conclusion is that out of the 43 constructs, the only ones with which our proposal cannot deal are zero-cardinality restrictions, general property restrictions and intersection of classes and restrictions. Our experience proves that this does not hinder its practical applicability since the constructs with which we cannot deal are not so common in real-world applications [21].
RDFS features: This group includes \(owl{:}Class,\,rdfs{:}subClassOf,\,rdf{:}Property,\,rdfs{:}subPropertyOf,\,rdfs{:}domain,\,rdfs{:}range\), and \(owl{:}Individual\). The only one that our proposal ignores is \(owl{:}Individual\), since individuals are retrieved or constructed by means of the executable mappings we generate, but need not be dealt with explicitly in our proposal.
Equality and inequality: The constructs of this group are \(owl{:}equivalentClass,\,owl{:}equivalentProperty,\,owl{:}sameAs,\,owl{:}differentFrom,\,owl{:}AllDifferent\), and \(owl{:}distinctMembers\). The first two constructs need not be dealt with explicitly, since they are actually abbreviations. If an ontology contains a triple of the form \((c_1, owl{:}equivalentClass, c_2)\), it can be replaced by the following triples, with which we can deal natively:
Similarly, if it contains a triple of the form \((p_1, owl{:}equivalentProperty, p_2)\), we may replace it by the following triples, with which we can also deal natively:
The remaining constructs in this category deal with individuals; thus, we may ignore them for data exchange purposes.
Restricted cardinality: The constructs in this group allow to restrict the cardinality of a property, namely: \(owl{:}minCardinality,\,owl{:}maxCardinality\) and \(owl{:}cardinality\).
The \(owl{:}minCardinality\) construct can restrict the minimum cardinality of a property \(p\) with respect to a class \(c\) to be zero as follows:
Note that, by default, all data and object properties have a minimum cardinality of zero. Therefore, it does not require any special treatment. Similarly, construct \(owl{:}minCardinality\) can restrict the minimum cardinality of a property \(p\) with respect to a class \(c\) to be one as follows:
The previous set of triples can be replaced by \((c, mosto{:}strongDomain, p)\), if property \(p\) has class \(c\) as domain, or by \((c, mosto{:}strongRange, p)\), if property \(p\) has class \(c\) as range.
Construct \(owl{:}maxCardinality\) can be used to restrict the maximum cardinality of a property to zero or one. In the former case, the property is annulated, which is a case with which our proposal cannot deal; we, however, have not found this to be a practical limitation since it is not common at all to annulate a property. The later case is the default in the OWL 2 Lite profile; thus, it does not require a special treatment.
Construct \(owl{:}cardinality\) is a shorthand to combine the previous constructs; thus, neither does it require special treatment.
Property characteristics: This group includes constructs \(owl{:}ObjectProperty\) and \(owl{:}DatatypeProperty\), with which we deal natively; \(owl{:}TransitiveProperty\) must actually be dealt with by a semantic-web reasoner, that is, we can assume that their semantics have been made explicit before using our technique; the rest of constructs are shorthands, namely: \(owl{:}inverseOf,\,owl{:}SymmetricProperty,\,owl{:}FunctionalProperty\), and \(owl{:}InverseFunctionalProperty\).
If an ontology contains a subset of triples of the form:
we can transform them into the following triples, with which we can deal natively:
Furthermore, we can transform \((p, rdf{:}type, owl{:}SymmetricProperty)\) into a triple of the form \((p, owl{:}inverseOf, p)\). Similarly, we can transform a triple of the form \((p, rdf{:}type, owl{:}FunctionalProperty)\) into the following triples before using our technique:
Finally, if we find a subset of triples of the form:
we can transform it into the following triples before applying our technique:
General property restrictions: This group includes a number of constructors that allow to express general constraints on properties, namely: \(owl{:}Restriction,\,owl{:}onProperty,\,owl{:}allValuesFrom\) and \(owl{:}someValuesFrom\). We cannot deal with these constructs in a general problem, but only in the cases that we have mentioned in the previous paragraphs, that is, functional properties and cardinality restrictions.
Class intersection: This group includes a single construct: \(owl{:}intersectionOf\). We cannot deal with these constructs.
Meta-information: This category comprises three groups of constructs in the OWL 2 Lite profile, namely: header information, versioning and annotation types. They include constructs like \(owl{:}Ontology,\,owl{:}imports,\,owl{:}versionInfo\) or \(owl{:}backwardCompatibleWith\), to mention a few. They provide meta-information about an ontology, which make them irrelevant for data exchange purposes.
Rights and permissions
About this article
Cite this article
Rivero, C.R., Hernández, I., Ruiz, D. et al. Exchanging Data amongst Linked Data applications. Knowl Inf Syst 37, 693–729 (2013). https://doi.org/10.1007/s10115-012-0587-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10115-012-0587-5