Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Benjamin Cogrel, Accès aux données à un niveau conceptuel avec Ontop

6,337 views

Published on

L'utilisation d'Ontop pour connecter une ou plusieurs bases de données à une ontologie afin de les interroger avec SPARQL

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

Benjamin Cogrel, Accès aux données à un niveau conceptuel avec Ontop

  1. 1. Acc`es aux donn´ees `a un niveau conceptuel avec Ontop Benjamin Cogrel KRDB Research Centre for Knowledge and Data Universit´e Libre de Bozen-Bolzano, Italie Free University of Bozen-Bolzano Journ´ees Ontologie en Sciences Humaines et Sociales, Tours, le 9 novembre 2015
  2. 2. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Un cas d’usage d’Ontop : le projet EPNET Bases de donn´ees relationnelles EPNET et EDH : objets antiques (amphores, monuments, etc.) Pleiades : informations g´eographiques sur des sites arch´eologiques Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (1/17)
  3. 3. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Besoins d’information Donne moi toutes les transcriptions des inscriptions ´ecrites sur des amphores retrouv´ees dans telle ville Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (2/17)
  4. 4. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion D´efinition d’une nouvelle requˆete SQL Sans syst`eme OBDA Exp. M´etier Sources hétérogènes Application Expert SI Traduction Besoin d’information Requˆete SQL R´esultats Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (3/17)
  5. 5. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion F´ed´eration SQL Base de donn´ees f´ed´er´ees Sources de donn´ees h´et´erog`enes. . . . . . f´ed´er´ees en une seule base de donn´ees virtuelle Syst`emes support´es par Ontop Teiid (LGPL) : http://teiid.jboss.org/ Exareme (licence libre, partenaire Optique) : http://exareme.org/ Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (4/17)
  6. 6. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Exemple de requˆete SQL (extrait) SELECT * FROM ( SELECT QVIEW8."simplifiedtranscription" AS "transcription" FROM Inscription QVIEW1, InformationCarrier QVIEW2, LinguisticObject_Inscription QVIEW3, Finding QVIEW4, Activity_Location QVIEW5, Location_FallsWithin QVIEW6, GeographicLocation QVIEW7, LinguisticObject QVIEW8 WHERE (QVIEW1."carrier" = QVIEW2."id") AND QVIEW1."id" IS NOT NULL AND QVIEW1."carrier" IS NOT NULL AND (QVIEW1."id" = QVIEW3."inscription") AND QVIEW3."linguisticobject" IS NOT NULL AND (QVIEW2."finding" = QVIEW4."id") AND (QVIEW2."finding" = QVIEW5."activity") AND QVIEW5."location" IS NOT NULL AND (QVIEW5."location" = QVIEW6."location1") AND QVIEW6."location2" IS NOT NULL AND (QVIEW6."location2" = QVIEW7."id") AND (QVIEW7."name" = ’Barcelona’) AND (QVIEW3."linguisticobject" = QVIEW8."id") AND QVIEW8."simplifiedtranscription" IS NOT NULL UNION ALL [... 12 autres sous-requˆetes ...] SELECT QVIEW1."taggedtranscription" AS "transcription" FROM edh.inscriptions QVIEW1, edh.findingPlaces QVIEW2, edh.places QVIEW3, edh.places_not_in_corpus2 QVIEW4, edh.places QVIEW5, edh.places QVIEW6 WHERE (QVIEW1."objtypeurl" = ’http://www.eagle-network.eu/voc/objtyp/lod/140’) AND QVIEW1."id" IS NOT NULL AND QVIEW1."taggedtranscription" IS NOT NULL AND (QVIEW1."ancientfindingplace" = QVIEW2."id") AND (QVIEW2."spot" = QVIEW3."id") AND (QVIEW3."numberid" = QVIEW4."id") AND QVIEW3."pleiadesid" IS NULL AND QVIEW3."numberid" IS NOT NULL AND (QVIEW3."numberid" = QVIEW5."numberid") AND (QVIEW3."numberid" = QVIEW6."numberid") AND (QVIEW6."name" = ’Barcelona’) ) SUB_QVIEW Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (5/17)
  7. 7. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Automatisation avec la plateforme Optique Ontology-Based Data Access (OBDA) Acc`es aux donn´ees `a un niveau conceptuel Exp. M´etier Application Sources hétérogènes Ontop 1. Requˆete SPARQL (haut-niveau) 4. R´esultats SPARQL 2. Requˆete SQL (bas-niveau) 3. R´esultats SQL Onto- logie Map- pings Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (6/17)
  8. 8. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Extrait de l’ontologie du projet EPNET Hi´erarchies Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (7/17)
  9. 9. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Requˆete SPARQL de haut-niveau Niveau conceptuel Ind´ependant du stockage Vue homog`ene Terminologie du domaine formalis´ee (ontologie) Requˆetes concises SELECT ?transcription WHERE { ?inscription a :Inscription ; :engravedOn ?amphora ; :isTranscribedBy ?trans . ?amphora a :Amphora ; :hasFindingPlace ?findingPlace . ?findingPlace :fallsWithin ?city . ?city dcterms:title "Barcelona" . ?trans :hasTranscription ?transcription . } Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (8/17)
  10. 10. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion SPARQL et les bases de donn´ees relationnelles Transformation d’une BD relationnelle en un graphe RDF Pour ˆetre requˆet´ee avec SPARQL Mappings SQL-RDF (R2RML) Contraintes de l’ontologie (opt.) Virtuelle ou mat´erielle RDFR2RML Graphe RDF mat´erialis´e Mat´erialisation du graphe RDF satur´e − Maintenance + Profils d’ontologie expressifs (comme OWL 2 RL) Graphe RDF virtuel Reformulation de requˆete + Aucune mat´erialisation − Profil d’ontologie moins expressif (OWL 2 QL) * Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (9/17)
  11. 11. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion SPARQL et les bases de donn´ees relationnelles Transformation d’une BD relationnelle en un graphe RDF Pour ˆetre requˆet´ee avec SPARQL Mappings SQL-RDF (R2RML) Contraintes de l’ontologie (opt.) Virtuelle ou mat´erielle RDFR2RML Graphe saturé Graphe RDF mat´erialis´e Mat´erialisation du graphe RDF satur´e − Maintenance + Profils d’ontologie expressifs (comme OWL 2 RL) Graphe RDF virtuel Reformulation de requˆete + Aucune mat´erialisation − Profil d’ontologie moins expressif (OWL 2 QL) * Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (9/17)
  12. 12. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion SPARQL et les bases de donn´ees relationnelles Transformation d’une BD relationnelle en un graphe RDF Pour ˆetre requˆet´ee avec SPARQL Mappings SQL-RDF (R2RML) Contraintes de l’ontologie (opt.) Virtuelle ou mat´erielle RDFR2RML Graphe saturé Graphe RDF mat´erialis´e Mat´erialisation du graphe RDF satur´e − Maintenance + Profils d’ontologie expressifs (comme OWL 2 RL) Graphe RDF virtuel Reformulation de requˆete + Aucune mat´erialisation − Profil d’ontologie moins expressif (OWL 2 QL) * (*) Inclut toutefois un m´ecanisme d’inf´erence absent du profil OWL 2 RL Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (9/17)
  13. 13. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Mapping SQL-RDF Format natif d’Ontop (similaire au standard R2RML) AmphoraT amId place inscription A24 Latium ’aaaa’ A52 Barcelona ’bbbb’ Source (SQL) SELECT amId, inscription FROM AmphoraT Cible (RDF, Turtle-like) :db1/{amId} a :Amphora ; :hasInscription "{inscription}"^^xsd:string . Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (10/17)
  14. 14. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Mappings SQL-RDF Rendre les informations plus accessibles Classification de p´eriodes par gouvernement Exemple : le gouvernement Caligula est d´efini par la p´eriode 37-41 Permet de requˆeter un gouvernement plutˆot que des dates Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (11/17)
  15. 15. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Alignement des donn´ees R´eutilisation d’IRIs IRIs construites `a partir de donn´ees pivots Attention `a l’indexation ! Tables de correspondances (exp´erimental) Propri´et´es owl:sameAs sp´ecifi´ees par les mappings Patrons d’IRIs diff´erents entre les donn´ees align´ees Phase de r´e´ecriture de la requˆete SPARQL Ontology-based Integration of Cross-linked Datasets (ISWC 15) Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (12/17)
  16. 16. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Reformulation de requˆete R´e´ecriture (optionnelle) Reformulation `a partir des mappings Optimisation SPARQL SPARQL SQL SQL Rˆole de l’ontologie OWL 2 QL Marginal : r´e´ecriture de la requˆete SPARQL (cas tr`es particuliers) Principal : saturation des mappings (hors-ligne) Perspective : mieux capturer le pouvoir expressif des mappings Inf´erence de mappings suppl´ementaires Autres formes de contraintes ontologiques (SWRL restreint) Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (13/17)
  17. 17. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Reformulation de requˆete R´e´ecriture (optionnelle) Reformulation `a partir des mappings satur´es Optimisation SPARQL SPARQL SQL SQL Rˆole de l’ontologie OWL 2 QL Marginal : r´e´ecriture de la requˆete SPARQL (cas tr`es particuliers) Principal : saturation des mappings (hors-ligne) Perspective : mieux capturer le pouvoir expressif des mappings Inf´erence de mappings suppl´ementaires Autres formes de contraintes ontologiques (SWRL restreint) Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (13/17)
  18. 18. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Reformulation de requˆete R´e´ecriture (optionnelle) Reformulation `a partir des mappings satur´es Optimisation SPARQL SPARQL SQL SQL Rˆole de l’ontologie OWL 2 QL Marginal : r´e´ecriture de la requˆete SPARQL (cas tr`es particuliers) Principal : saturation des mappings (hors-ligne) Perspective : mieux capturer le pouvoir expressif des mappings Inf´erence de mappings suppl´ementaires Autres formes de contraintes ontologiques (SWRL restreint) Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (13/17)
  19. 19. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Profil d’ontologie OWL 2 QL Principales fonctionnalit´es Hi´erarchies de classes (rdfs:subclassOf) et de propri´et´es (rdfs:subPropertyOf) Signature de propri´et´es (rdfs:domain, rdfs:range) Propri´et´es inverses (owl:inverseOf) Disjonction de classes (owl:disjointWith) Participation obligatoire (avanc´e) Manques Identit´e d’individus (owl:sameAs) Contraintes de cardinalit´e (propri´et´e fonctionnelle, etc.) Et bien d’autres En r´esum´e Ontologies l´eg`eres Un peu plus que RDFS Traductibilit´e garantie vers SQL Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (14/17)
  20. 20. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Optimisation de la requˆete SQL Objectif : obtenir une requˆete SQL. . . Proche de celles ´ecrites par des humains Adapt´ee aux planificateurs existants Optimisations structurelles Jointures d’unions vers unions de jointures D´ecomposition des IRIs pour faciliter les jointures Optimisations s´emantiques ´Elimination des unions et des jointures redondantes `A partir de contraintes fonctionnelles Contraintes fonctionnelles Cl´es primaires, uniques ou ´etrang`eres Implicites dans les processus m´etiers (Statoil) Vitales pour la reformulation de requˆete ! Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (15/17)
  21. 21. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion D´etection d’incoh´erences V´erifier que certaines classes restent disjointes dans le graphe RDF virtuel Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (16/17)
  22. 22. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Conclusion Ontop Logiciel libre (Apache 2) Extension Prot´eg´e Point d’acc`es SPARQL Int´egration Plateforme Optique (FluidOps) Stardog 4.0 (graphes virtuels) Quelques exp´erimentations owl:sameAs via les mappings Support partiel de SWRL Agr´egation SPARQL NoSQL Liens Github : ontop/ontop ontop4obda@googlegroups.com Twitter : @ontop4obda http://optique-project.eu D´emonstration http://136.243.8.213/epnet-pleiades-edh/ Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (17/17)
  23. 23. Motivation SPARQL Mappings SQL-RDF Reformulation et inf´erence Autres fonctionnalit´es Conclusion Conclusion Ontop Logiciel libre (Apache 2) Extension Prot´eg´e Point d’acc`es SPARQL Int´egration Plateforme Optique (FluidOps) Stardog 4.0 (graphes virtuels) Quelques exp´erimentations owl:sameAs via les mappings Support partiel de SWRL Agr´egation SPARQL NoSQL Liens Github : ontop/ontop ontop4obda@googlegroups.com Twitter : @ontop4obda http://optique-project.eu D´emonstration http://136.243.8.213/epnet-pleiades-edh/ Benjamin Cogrel (Universit´e Libre de Bolzano) OBDA/Ontop 09/11/2015 (17/17)

×