Database-to-Ontology Mapping Generation for Semantic Interoperability

7,761 views

Published on

This is the powerpoint presentation of my paper: "Database-to-Ontology Mapping Generation for Semantic Interoperability", presented at the Third International Workshop on Database Interoperability (InterDB 2007), held in conjunction with VLDB 2007, Vienna, Austria, September 2007.

Published in: Technology

Database-to-Ontology Mapping Generation for Semantic Interoperability

  1. 1. Database-to-Ontology Mapping Generation for Semantic Interoperability Raji Ghawi and Nadine Cullot Laboratoire Electronique, Informatique et Image UMR CNRS 5158 Université de Bourgogne, Dijon, FRANCE {raji.ghawi , nadine.cullot}@u-bourgogne.fr
  2. 2. Outlines <ul><li>Introduction </li></ul><ul><li>OWSCIS Architecture </li></ul><ul><li>DB2OWL </li></ul><ul><li>Mapping process </li></ul><ul><li>Future Works </li></ul>
  3. 3. Introduction <ul><li>Interoperability Problem </li></ul><ul><ul><li>Distrubtion </li></ul></ul><ul><ul><li>Hetereogeniety </li></ul></ul><ul><ul><li>Instability </li></ul></ul><ul><li>Solutions </li></ul><ul><ul><li>Ontologies </li></ul></ul><ul><ul><li>Web Services </li></ul></ul>
  4. 4. OWSCIS O ntology and W eb S ervices based C ooperation of I nformation S ources <ul><li>Hybrid Ontology Approach </li></ul><ul><ul><li>Local Ontologies and Reference Ontology </li></ul></ul><ul><li>Web Service - Oriented Architecture </li></ul><ul><li>Automatic Mappings </li></ul><ul><ul><li>Inter-Ontology Mapping </li></ul></ul><ul><ul><li>Database-to-Ontology Mapping </li></ul></ul>
  5. 5. OWSCIS Architecture Mapping Web Service Visualisation Web Service Query Decomposition Query Recomposition Query Web Service Data Provider Data Provider Mapping Directory Reference Ontology Tool Box Knowledge Base Module DB2OWL Database Data Provider Local Ontology End User Single Query Resolution Mappings Local Onto  Ref. Onto DB  Local Onto Expert
  6. 6. Database to Ontology mapping <ul><li>Correspondences between database components (table, column, constraint) and ontological components (concept, property). </li></ul>Database to ontology mapping Complex Direct Data migration Query Driven Massive Dump Mapping database to already existing ontology Creating ontology from database Mapping definition Mapping definition
  7. 7. DB2OWL <ul><li>Generate a local ontology from a relational database </li></ul><ul><ul><li>OWL-DL </li></ul></ul><ul><li>Generate Mapping document </li></ul><ul><li>Full automatic process </li></ul>
  8. 8. Mapping Process in DB2OWL <ul><li>Example Database schema </li></ul><ul><li>Table’s particular cases </li></ul><ul><li>Mapping process </li></ul>
  9. 9. Example Database Schema PRESENCE StudentID SessionID DIPLOMA DiplomaID DiplomaName PERSON PersonID FirstName LastName HALL HallID HallName Building STUDENT StudentID StudentNumber DiplomaID LECTURER LecturerID LecturerR oom SESSION SessionID ModulID LecturerID HallID Time DiplomaID MODULE ModuleID ModuleName Primary key Foreign key
  10. 10. Table’s particular cases  : Case 1 <ul><li>A table T is used only to relate two other tables T1, T2 in a many-to-many relationship, </li></ul><ul><li>all T columns are foreign and primary keys </li></ul>PRESENCE StudentID SessionID STUDENT StudentID StudentNumber DiplomaID SESSION SessionID ModulID LecturerID HallID Time
  11. 11. Table’s particular cases  : Case 2 <ul><li>A table T is related to another table T1 by a referential integrity constraint whose local attributes are also the primary keys. </li></ul><ul><li>In this case all the primary keys of T are foreign keys </li></ul>PERSON PersonID FirstName LastName STUDENT StudentID StudentNumber DiplomaID
  12. 12. Table’s particular cases  : Case 3 <ul><li>The default case </li></ul><ul><li>Occurs when none of previous cases occurs </li></ul><ul><li>T is not in case1 nor in case2 </li></ul>DIPLOMA DiplomaID DiplomaName
  13. 13. Mapping Process - 1 <ul><li>The database tables that are in case 3 are mapped to OWL classes </li></ul>DIPLOMA DiplomaID DiplomaName PERSON PersonID FirstName LastName HALL HallID HallName Building SESSION SessionID ModulID LecturerID HallID Time DiplomaID MODULE ModuleID ModuleName Database PERSON DIPLOMA HALL MODULE SESSION Ontology
  14. 14. Mapping Process - 2 <ul><li>The tables in case 2 are mapped to subclasses of those classes corresponding to their related tables </li></ul>PERSON PersonID FirstName LastName Database STUDENT StudentID StudentNumber DiplomaID LECTURER LecturerID LecturerR oom is_a PERSON DIPLOMA HALL MODULE SESSION Ontology LECTURER STUDENT
  15. 15. Mapping Process - 3 <ul><li>The tables in case 1 are not mapped to classes, but we add two object properties, one for each class that its corresponding table was related to the current table </li></ul>Database STUDENT StudentID StudentNumber DiplomaID is_a SESSION SessionID ModulID LecturerID HallID Time PRESENCE StudentID SessionID Object Property PERSON DIPLOMA HALL MODULE SESSION Ontology LECTURER STUDENT
  16. 16. Mapping Process - 4 <ul><li>For the tables in case 3, we map their referential constraints to object properties whose ranges will be the classes corresponding to their related tables </li></ul>Database DIPLOMA DiplomaID DiplomaName HALL HallID HallName Building SESSION SessionID ModulID LecturerID HallID Time DiplomaID MODULE ModuleID ModuleName LECTURER LecturerID LecturerR oom PERSON DIPLOMA HALL MODULE SESSION Ontology LECTURER STUDENT is_a Object Property
  17. 17. Mapping Process - 5 <ul><li>For tables that are in case 2 and have other referential constraints than this used to create the subclass, we map them to object properties as we done in the previous step </li></ul>Database DIPLOMA DiplomaID DiplomaName STUDENT StudentID StudentNumber DiplomaID PERSON DIPLOMA HALL MODULE SESSION Ontology LECTURER STUDENT is_a Object Property
  18. 18. Mapping Process - 6 <ul><li>For all tables, non-key columns are mapped to datatype properties. </li></ul><ul><li>The range of a datatype property is the XSD equivalent to the data type of its original column. </li></ul>is_a Object Property Ontology DIPLOMA DiplomaId DiplomaName Hall HallId HallName Building MODULE ModuleId ModuleName SESSION SessionID Time PERSON PersonId FirstName LastName LECTURER LecturerRoom STUDENT StudentNumber Datatype Property
  19. 19. DB2OWL - Implementation Database DB Model tables constraints Ontology Model classes OWL Ontology JDBC Jena Mapping algorithm Mapping document Mapping Model
  20. 20. Future work <ul><li>Map several relational databases to one ontology </li></ul><ul><li>Map other database models to ontologies (OO) </li></ul><ul><li>Map other data models (XML) </li></ul>
  21. 21. Thank you for your attention

×