Database-to-Ontology Mapping Generation for Semantic Interoperability

Post on 15-Jan-2015

4.870 views 3 download

Tags:

description

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.

Transcript of Database-to-Ontology Mapping Generation for Semantic Interoperability

Database-to-Ontology Mapping Generationfor Semantic Interoperability

Raji Ghawi and Nadine CullotLaboratoire Electronique, Informatique et Image

UMR CNRS 5158 Université de Bourgogne, Dijon, FRANCE

{raji.ghawi , nadine.cullot}@u-bourgogne.fr

2

Outlines

1. Introduction

2. OWSCIS Architecture

3. DB2OWL

4. Mapping process

5. Future Works

3

Introduction

Interoperability Problem Distrubtion Hetereogeniety Instability

Solutions Ontologies Web Services

4

OWSCIS Ontology and Web Services based Cooperation of Information Sources

Hybrid Ontology Approach Local Ontologies and Reference Ontology

Web Service - Oriented Architecture Automatic Mappings

Inter-Ontology Mapping Database-to-Ontology Mapping

5

OWSCIS Architecture

Mapping Web Service

VisualisationWeb Service

QueryDecomposition

QueryRecomposition

Single Query Resolution

Query Web Service

DataProvider

DataProvider

MappingDirectory

Reference Ontology

Tool Box

Knowledge Base Module

DB2OWL Database

Mappings

Local Onto Ref. Onto

DB Local Onto

Data Provider

Local Ontology

Expert

End User

6

Database to Ontology mapping Correspondences between database components (table, column,

constraint) and ontological components (concept, property).

Database to ontology mapping

ComplexDirect

Data migration

Query Driven

Massive Dump

Mapping database to already existing ontology

Creating ontologyfrom database

Mapping definition

Mapping definition

7

DB2OWL

Generate a local ontology from a relational database OWL-DL

Generate Mapping document

Full automatic process

8

Mapping Process in DB2OWL

Example Database schema Table’s particular cases Mapping process

9

Example Database Schema

PRESENCE

StudentID

SessionID

DIPLOMA

DiplomaID

DiplomaName

PERSON

PersonID

FirstName

LastName

HALL

HallID

HallName

Building

STUDENT

StudentID

StudentNumber

DiplomaID

LECTURER

LecturerID

LecturerRoom

SESSION

SessionID

ModulID

LecturerID

HallID

Time

DiplomaID

MODULE

ModuleID

ModuleNamePrimary key

Foreign key

10

Table’s particular cases  : Case 1

A table T is used only to relate two other tables T1, T2 in a many-to-many relationship,

all T columns are foreign and primary keys

PRESENCE

StudentID

SessionID

STUDENT

StudentID

StudentNumber

DiplomaID

SESSION

SessionID

ModulID

LecturerID

HallID

Time

11

Table’s particular cases  : Case 2

A table T is related to another table T1 by a referential integrity constraint whose local attributes are also the primary keys.

In this case all the primary keys of T are foreign keys

PERSON

PersonID

FirstName

LastName

STUDENT

StudentID

StudentNumber

DiplomaID

12

Table’s particular cases  : Case 3

The default case Occurs when none of previous cases occurs

T is not in case1 nor in case2

DIPLOMA

DiplomaID

DiplomaName

13

Mapping Process - 1

The database tables that are in case 3 are mapped to OWL classes

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

Mapping Process - 2

The tables in case 2 are mapped to subclasses of those classes corresponding to their related tables

PERSON

PersonID

FirstName

LastName

Database

STUDENT

StudentID

StudentNumber

DiplomaID

LECTURER

LecturerID

LecturerRoom

is_a

PERSON

DIPLOMA

HALL MODULE

SESSION

Ontology

LECTURER

STUDENT

15

Mapping Process - 3

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

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

Mapping Process - 4

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

Database

DIPLOMA

DiplomaID

DiplomaName

HALL

HallID

HallName

Building

SESSION

SessionID

ModulID

LecturerID

HallID

Time

DiplomaID

MODULE

ModuleID

ModuleName

LECTURER

LecturerID

LecturerRoom

PERSON

DIPLOMA

HALL MODULE

SESSION

Ontology

LECTURER

STUDENT

is_a

Object Property

17

Mapping Process - 5

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

Database

DIPLOMA

DiplomaID

DiplomaName

STUDENT

StudentID

StudentNumber

DiplomaID

PERSON

DIPLOMA

HALL MODULE

SESSION

Ontology

LECTURER

STUDENT

is_a

Object Property

18

Mapping Process - 6

For all tables, non-key columns are mapped to datatype properties. The range of a datatype property is the XSD equivalent to the data type

of its original column.

is_aObject Property

Ontology

DIPLOMA

DiplomaIdDiplomaName

HallHallId

HallNameBuilding

MODULE

ModuleIdModuleName

SESSION

SessionIDTime

PERSONPersonId

FirstNameLastName

LECTURER

LecturerRoom

STUDENT

StudentNumber

Datatype Property

19

DB2OWL - Implementation

Database

DB Model

tables

constraintsOntolog

y Model

classes

OWL Ontology

JDBC JenaMapping algorithm

Mappingdocument

MappingModel

20

Future work

Map several relational databases to one ontology Map other database models to ontologies (OO) Map other data models (XML)

21

Thank you for your attention