eswc ss 2012 - monday keynote enrico franconi: ontologies and databases

111
Ontologies and Databases KRDB Research Centre for Knowledge and Data Enrico Franconi Free University of Bozen-Bolzano, Italy http://www.inf.unibz.it/franconi Kalamaki, 22 May 2012

Upload: eswcsummerschool

Post on 21-Nov-2014

166 views

Category:

Education


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Ontologies andDatabases

KRDB Research Centre

for Knowledge and Data

Enrico FranconiFree University of Bozen-Bolzano, Italy

http://www.inf.unibz.it/∼franconi

Kalamaki, 22 May 2012

Page 2: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Summary

◮ What is an Ontology

◮ Querying a DB via an ontology

Ontologies and Databases. E. Franconi. (2/38)

Page 3: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Ontologies and Constraints

◮ An ontology is a formal conceptualisation of the world: a conceptualschema.

◮ An ontology specifies a set of constraints, which declare what shouldnecessarily hold in any possible world.

◮ Any possible world should conform to the constraints expressed by theontology.

◮ Given an ontology, a legal world description (or legal databaseinstance) is a finite possible world satisfying the constraints.

Ontologies and Databases. E. Franconi. (3/38)

Page 4: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Ontologies and Conceptual Data Models

◮ An ontology language usually introduces concepts (aka classes,entities), properties of concepts (aka slots, attributes, roles),relationships between concepts (aka associations), and additionalconstraints.

◮ Ontology languages may be simple (e.g., involving only concepts andtaxonomies), frame-based (e.g., UML, based on concepts, properties,and binary relationships), or logic-based (e.g. OWL, DescriptionLogics).

◮ Ontology languages are typically expressed by means of diagrams.

◮ Entity-Relationship schemas and UML class diagrams can beconsidered as ontology languages.

Ontologies and Databases. E. Franconi. (4/38)

Page 5: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

UML Class Diagram

AreaManager TopManager

Manager Project

ProjectCode:String

Employee

PaySlipNumber:IntegerSalary:Integer

{disjoint,complete}

1..⋆

Works-for

1..1

1..1

Manages

Ontologies and Databases. E. Franconi. (5/38)

Page 6: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Entity-Relationship Schema

Employee

PaySlipNumber(Integer)

Salary(Integer)

Project

ProjectCode(String)

Manager

TopManagerAreaManager

×

Works-for

Manages

(1,n)

(1,1)(1,1)

2

Ontologies and Databases. E. Franconi. (6/38)

Page 7: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 8: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Constraints

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 9: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 10: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 11: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 12: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 13: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 14: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 15: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 16: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Mediator

global

source

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (7/38)

Page 17: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology:

an Ontology based application

Mediator

global

source

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

←− Data Level

←− Information Level

←− Knowledge Level

Ontologies and Databases. E. Franconi. (7/38)

Page 18: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning

Given an ontology – seen as a collection of constraints – it is possible thatadditional constraints can be inferred.

◮ A class is inconsistent if it denotes the empty set in any legal worlddescription.

◮ A class is a subclass of another class if the former denotes a subset ofthe set denoted by the latter in any legal world description.

◮ Two classes are equivalent if they denote the same set in any legalworld description.

◮ A stricter constraint is inferred – e.g., a cardinality constraint – if itholds in in any legal world description.

◮ . . .

Ontologies and Databases. E. Franconi. (8/38)

Page 19: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Simple reasoning example

Italian English

Person

Lazy LatinLover

{disjoint,covering}

Gentleman Hooligan

{disjoint}

Ontologies and Databases. E. Franconi. (9/38)

Page 20: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Simple reasoning example

Italian English

Person

Lazy LatinLover

{disjoint,covering}

Gentleman Hooligan

{disjoint}

LatinLover = ∅Italian ⊆ LazyItalian ≡ Lazy

Ontologies and Databases. E. Franconi. (9/38)

Page 21: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning: cute professors

LatinLoverLazy Mafioso ItalianProf

Italian

{disjoint,complete}

{disjoint}

Ontologies and Databases. E. Franconi. (10/38)

Page 22: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning: cute professors

LatinLoverLazy Mafioso ItalianProf

Italian

{disjoint,complete}

{disjoint}

impliesItalianProf ⊆ LatinLover

Ontologies and Databases. E. Franconi. (10/38)

Page 23: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning with ontologies

AreaManager TopManager

Manager ProjectProjectCode:String

EmployeePaySlipNumber:Integer

Salary:Integer

{disjoint,complete}

1..⋆

Works-for

1..1

1..1

Manages

◮ Managers do not work for a project (she/he just manages it):∀x. Manager(x) → ¬∃y .WORKS-FOR(x , y)Manager ⊑ ¬∃WORKS-FOR.⊤Manager ⊆ Employee \ π1WORKS-FOR

Ontologies and Databases. E. Franconi. (11/38)

Page 24: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning with ontologies

AreaManager TopManager

Manager ProjectProjectCode:String

EmployeePaySlipNumber:Integer

Salary:Integer

{disjoint,complete}

1..⋆

1..⋆

Works-for

1..1

1..1

Manages

◮ Managers do not work for a project (she/he just manages it):∀x. Manager(x) → ¬∃y .WORKS-FOR(x , y)Manager ⊑ ¬∃WORKS-FOR.⊤Manager ⊆ Employee \ π1WORKS-FOR

◮ If the minimum cardinality for the participation of employees to theworks-for relationship is increased, then . . .

Ontologies and Databases. E. Franconi. (11/38)

Page 25: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The democratic company

Employee 6= ∅

Supervisor

Employee

supervises

0..1

2..2

Ontologies and Databases. E. Franconi. (12/38)

Page 26: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The democratic company

Employee 6= ∅

Supervisor

Employee

supervises

0..1

2..2

implies“the classes Employee and Supervisor necessarily contain an infinitenumber of instances”.

Since legal world descriptions are finite possible worlds satisfying theconstraints imposed by the ontology, the ontology is inconsistent.

Ontologies and Databases. E. Franconi. (12/38)

Page 27: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

How many numbers?

Natural Number

Even Number

rel

1..1

1..1

Ontologies and Databases. E. Franconi. (13/38)

Page 28: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

How many numbers?

Natural Number

Even Number

rel

1..1

1..1

implies“the classes Natural Number and Even Number contain the same numberof instances”.

Ontologies and Databases. E. Franconi. (13/38)

Page 29: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

How many numbers?

Natural Number

Even Number

rel

1..1

1..1

implies“the classes Natural Number and Even Number contain the same numberof instances”.

Only if the domain is finite: Natural Number ≡ Even Number

Ontologies and Databases. E. Franconi. (13/38)

Page 30: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Next on “Ontologies and Databases”:

◮ What is an Ontology

◮ Querying a DB via an ontology

◮ We will see how an ontology can play the role of a “mediator”wrapping a (source) database.

◮ Examples will show how apparently simple cases are not easy.◮ We will learn about view-based query processing with GAV and LAV

mappings.◮ We introduce the difference between closed world and open world

semantics in this context.◮ We will see how only the closed world semantics should be used while

using ontologies to wrap databases, in order for the mediated system tobehave like a database (black-box metaphor)

◮ We will see that the data complexity of query answering can be beyondthe one of SQL.

Ontologies and Databases. E. Franconi. (14/38)

Page 31: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 32: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Constraints

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 33: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 34: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 35: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 36: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 37: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 38: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 39: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 40: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Mediator

global

source

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

Ontologies and Databases. E. Franconi. (15/38)

Page 41: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The role of an ontology

Mediator

global

source

Deduction

QueryResult

Deduction

Constraints

QueryResult

Data Store

LogicalSchema

ConceptualSchema

←− Data Level

←− Information Level

←− Knowledge Level

Ontologies and Databases. E. Franconi. (15/38)

Page 42: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

◮ Basic assumption: consistent information with respect to theconstraints introduced by the ontology

◮ A Database with Constraints: complete information about each termappearing in the ontology

◮ Problem: answer a query over the ontology vocabulary

Ontologies and Databases. E. Franconi. (16/38)

Page 43: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

◮ Basic assumption: consistent information with respect to theconstraints introduced by the ontology

◮ A Database with Constraints: complete information about each termappearing in the ontology

◮ Problem: answer a query over the ontology vocabulary

◮ Solution: use a standard DB technology (e.g., SQL, datalog, etc)

Ontologies and Databases. E. Franconi. (16/38)

Page 44: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

Manager

Employee Project1..⋆Works-for

Ontologies and Databases. E. Franconi. (17/38)

Page 45: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

Manager

Employee Project1..⋆Works-for

Employee = { John, Mary, Paul }Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (17/38)

Page 46: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

Manager

Employee Project1..⋆Works-for

Employee = { John, Mary, Paul }Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Q(X) :- Manager(X), Works-for(X,Y), Project(Y)

=⇒ { John }

Ontologies and Databases. E. Franconi. (17/38)

Page 47: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

◮ Having a classical database with constraints is against the principlethat an ontology presents a richer vocabulary than the data stores(i.e., it plays the role of an ontology).

Ontologies and Databases. E. Franconi. (18/38)

Page 48: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

◮ Having a classical database with constraints is against the principlethat an ontology presents a richer vocabulary than the data stores(i.e., it plays the role of an ontology).

◮ A Database with Constraints over an extended vocabulary (orconceptual schema with exact views, or DBox): complete informationabout some term appearing in the ontology

◮ Standard DB technologies do not apply

◮ The query answering problem in this context is inherently complex

Ontologies and Databases. E. Franconi. (18/38)

Page 49: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

Manager

Employee Project1..⋆Works-for

Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (19/38)

Page 50: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

Manager

Employee Project1..⋆Works-for

Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Q(X) :- Employee(X)

Ontologies and Databases. E. Franconi. (19/38)

Page 51: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

Manager

Employee Project1..⋆Works-for

Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Q(X) :- Employee(X)

=⇒ { John, Paul, Mary }

Ontologies and Databases. E. Franconi. (19/38)

Page 52: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a Database with Constraints

over an extended vocabulary (DBox)

Manager

Employee Project1..⋆Works-for

Manager = { John, Paul }Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-B〉 }Project = { Prj-A, Prj-B }

Q(X) :- Employee(X)

=⇒ { John, Paul, Mary }

=⇒ Q’(X) :- Manager(X) ∪ Works-for(X,Y)

Ontologies and Databases. E. Franconi. (19/38)

Page 53: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

Friend

Ontologies and Databases. E. Franconi. (20/38)

Page 54: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

FriendEmployee = { Andrea, Paul, Mary, John }Manager = { Andrea, Paul, Mary}AreaManagerp = { Paul }TopManagerp = { Mary }Supervised = { 〈John,Andrea〉, 〈John,Mary〉 }Friend = { 〈Mary,Andrea〉, 〈Andrea,Paul〉 }

Ontologies and Databases. E. Franconi. (20/38)

Page 55: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

FriendEmployee = { Andrea, Paul, Mary, John }Manager = { Andrea, Paul, Mary}AreaManagerp = { Paul }TopManagerp = { Mary }Supervised = { 〈John,Andrea〉, 〈John,Mary〉 }Friend = { 〈Mary,Andrea〉, 〈Andrea,Paul〉 }

Paul:AreaManagerp

Andrea:Manager Mary:TopManagerp

John

��

��✠

❅❅❅❅❘

Supervised Supervised

Friend

Friend

Ontologies and Databases. E. Franconi. (20/38)

Page 56: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example (cont.)

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

Friend

Ontologies and Databases. E. Franconi. (21/38)

Page 57: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example (cont.)

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

Friend

Paul:AreaManagerp

Andrea:Manager Mary:TopManagerp

John

��

��✠

❅❅❅❅❘

Supervised Supervised

Friend

Friend

Ontologies and Databases. E. Franconi. (21/38)

Page 58: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example (cont.)

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

Friend

Paul:AreaManagerp

Andrea:Manager Mary:TopManagerp

John

��

��✠

❅❅❅❅❘

Supervised Supervised

Friend

Friend

Q :- Supervised(John,Y), TopManager(Y),

Friend(Y,Z), AreaManager(Z)

Ontologies and Databases. E. Franconi. (21/38)

Page 59: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Andrea’s Example (cont.)

AreaManagerp TopManagerp

AreaManager TopManager

Manager

Employee

{disjoint,complete}

Supervised

Friend

Paul:AreaManagerp

Andrea:Manager Mary:TopManagerp

John

��

��✠

❅❅❅❅❘

Supervised Supervised

Friend

Friend

Q :- Supervised(John,Y), TopManager(Y),

Friend(Y,Z), AreaManager(Z)

=⇒ YES

Ontologies and Databases. E. Franconi. (21/38)

Page 60: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a sound DB with Constraints

over an extended vocabulary (ABox)

1. Classical DB with constraints: complete information about all termsappearing in the ontology

2. DB with constraints over an extended vocabulary (i.e., conceptualschema with exact views, or DBox): complete information aboutsome term appearing in the ontology

3. Sound DB with constraints over an extended vocabulary (akaconceptual schema with sound views, or ABox): incompleteinformation about some term appearing in the ontology

◮ Sound databases with constraints over an extended vocabulary arecrucial in data integration scenarios.

Ontologies and Databases. E. Franconi. (22/38)

Page 61: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Exact vs Sound views

Employee Project1..⋆Works-for

Ontologies and Databases. E. Franconi. (23/38)

Page 62: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Exact vs Sound views

Employee Project1..⋆Works-for

Exact views (DBox):

Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (23/38)

Page 63: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Exact vs Sound views

Employee Project1..⋆Works-for

Exact views (DBox):

Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

=⇒ INCONSISTENT

Ontologies and Databases. E. Franconi. (23/38)

Page 64: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Exact vs Sound views

Employee Project1..⋆Works-for

Exact views (DBox):

Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

=⇒ INCONSISTENT

Sound views (ABox):

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (23/38)

Page 65: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a sound DB with Constraints

over an extended vocabulary (ABox)

Employee Project1..⋆Works-for

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (24/38)

Page 66: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a sound DB with Constraints

over an extended vocabulary (ABox)

Employee Project1..⋆Works-for

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Q(X) :- Works-for(Y,X)

Ontologies and Databases. E. Franconi. (24/38)

Page 67: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a sound DB with Constraints

over an extended vocabulary (ABox)

Employee Project1..⋆Works-for

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Q(X) :- Works-for(Y,X)

=⇒ { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (24/38)

Page 68: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Querying a sound DB with Constraints

over an extended vocabulary (ABox)

Employee Project1..⋆Works-for

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Q(X) :- Works-for(Y,X)

=⇒ { Prj-A, Prj-B }

=⇒ Q’(X) :- Project(X) ∪ Works-for(Y,X)

Ontologies and Databases. E. Franconi. (24/38)

Page 69: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

DBox vs ABoxEmployee ProjectWorks-for

◮ Additional constraint as a standard view over the data:Bad-Project = Project \ π2Works-for

∀x. Bad-Project(x)↔ Project(x)∧¬∃y.Works-for(y,x)Bad-Project = Project⊓¬∃Works-for−.⊤

Ontologies and Databases. E. Franconi. (25/38)

Page 70: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

DBox vs ABoxEmployee ProjectWorks-for

◮ Additional constraint as a standard view over the data:Bad-Project = Project \ π2Works-for

∀x. Bad-Project(x)↔ Project(x)∧¬∃y.Works-for(y,x)Bad-Project = Project⊓¬∃Works-for−.⊤

◮ DBox:Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

Ontologies and Databases. E. Franconi. (25/38)

Page 71: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

DBox vs ABoxEmployee ProjectWorks-for

◮ Additional constraint as a standard view over the data:Bad-Project = Project \ π2Works-for

∀x. Bad-Project(x)↔ Project(x)∧¬∃y.Works-for(y,x)Bad-Project = Project⊓¬∃Works-for−.⊤

◮ DBox:Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

=⇒ { Prj-B }◮ ABox:

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

Ontologies and Databases. E. Franconi. (25/38)

Page 72: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

DBox vs ABoxEmployee ProjectWorks-for

◮ Additional constraint as a standard view over the data:Bad-Project = Project \ π2Works-for

∀x. Bad-Project(x)↔ Project(x)∧¬∃y.Works-for(y,x)Bad-Project = Project⊓¬∃Works-for−.⊤

◮ DBox:Works-for = { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project = { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

=⇒ { Prj-B }◮ ABox:

Works-for ⊇ { 〈John,Prj-A〉, 〈Mary,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Q(X) :- Bad-Project(X)

=⇒ { } does not scale down to standard DB answer!

Ontologies and Databases. E. Franconi. (25/38)

Page 73: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Compositionality of Queries

Employee Project1..⋆Works-for

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

Ontologies and Databases. E. Franconi. (26/38)

Page 74: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Compositionality of Queries

Employee Project1..⋆Works-for

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Query as a standard view over the data:

Q(X) :- Works-for(Y,X) Q = π2Works-for

Ontologies and Databases. E. Franconi. (26/38)

Page 75: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Compositionality of Queries

Employee Project1..⋆Works-for

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Query as a standard view over the data:

Q(X) :- Works-for(Y,X) Q = π2Works-for

◮ Q = EVAL(π2Works-for)

◮ Q = π2(EVAL(Works-for))

Ontologies and Databases. E. Franconi. (26/38)

Page 76: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Compositionality of Queries

Employee Project1..⋆Works-for

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Query as a standard view over the data:

Q(X) :- Works-for(Y,X) Q = π2Works-for

◮ Q = EVAL(π2Works-for)=⇒ { Prj-A, Prj-B }

◮ Q = π2(EVAL(Works-for))

Ontologies and Databases. E. Franconi. (26/38)

Page 77: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Compositionality of Queries

Employee Project1..⋆Works-for

◮ ABox:Works-for ⊇ { 〈John,Prj-A〉 }Project ⊇ { Prj-A, Prj-B }

◮ Query as a standard view over the data:

Q(X) :- Works-for(Y,X) Q = π2Works-for

◮ Q = EVAL(π2Works-for)=⇒ { Prj-A, Prj-B }

◮ Q = π2(EVAL(Works-for))=⇒ { Prj-A }

Queries are not compositional wrt certain answer semantics!

Ontologies and Databases. E. Franconi. (26/38)

Page 78: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

Ontologies and Databases. E. Franconi. (27/38)

Page 79: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

◮ Q :- has-colour(R1,C), has-colour(R2,C), has-border(R1,R2)

Is it unavoidable that there are two adjacent regions with the same colour?

Ontologies and Databases. E. Franconi. (27/38)

Page 80: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

◮ Q :- has-colour(R1,C), has-colour(R2,C), has-border(R1,R2)

Is it unavoidable that there are two adjacent regions with the same colour?

◮ YES: in any legal database (i.e., an assignment of colours to regions)there are at least two adjacent regions with the same colour.

Ontologies and Databases. E. Franconi. (27/38)

Page 81: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

◮ Q :- has-colour(R1,C), has-colour(R2,C), has-border(R1,R2)

Is it unavoidable that there are two adjacent regions with the same colour?

◮ YES: in any legal database (i.e., an assignment of colours to regions)there are at least two adjacent regions with the same colour.

◮ NO: there is at least a legal database (i.e., an assignment of colours toregions) in which no two adjacent regions have the same colour.

Ontologies and Databases. E. Franconi. (27/38)

Page 82: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

◮ Q :- has-colour(R1,C), has-colour(R2,C), has-border(R1,R2)

Is it unavoidable that there are two adjacent regions with the same colour?

◮ YES: in any legal database (i.e., an assignment of colours to regions)there are at least two adjacent regions with the same colour.

◮ NO: there is at least a legal database (i.e., an assignment of colours toregions) in which no two adjacent regions have the same colour.

◮ With ABox semantics the answer is always NO, since there is at least alegal database (i.e., an assignment of colours to regions) with enoughdistinct colours so that no two adjacent regions have the same colour.

Ontologies and Databases. E. Franconi. (27/38)

Page 83: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Complexity of Query answering

Region Colourhas-colour1..⋆

has-border

◮ DBox:

Region = {Italy,France,. . .}; has-border = {〈Italy,France〉,. . .};Colour = { Red, Green, Blue }

◮ Q :- has-colour(R1,C), has-colour(R2,C), has-border(R1,R2)

Is it unavoidable that there are two adjacent regions with the same colour?

◮ YES: in any legal database (i.e., an assignment of colours to regions)there are at least two adjacent regions with the same colour.

◮ NO: there is at least a legal database (i.e., an assignment of colours toregions) in which no two adjacent regions have the same colour.

◮ With ABox semantics the answer is always NO, since there is at least alegal database (i.e., an assignment of colours to regions) with enoughdistinct colours so that no two adjacent regions have the same colour.

Query answering with DBoxes is co-np-hard in data complexity (3-col),and it is strictly harder than with ABoxes!

Ontologies and Databases. E. Franconi. (27/38)

Page 84: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

View based Query Processing

◮ Mappings between the ontology terms and the information sourceterms are not necessarily atomic.

◮ Mappings can be given in terms of a set of sound (or exact) views:

◮ GAV (global-as-view): sound (or exact) views over the informationsource vocabulary are associated to terms in the ontology

◮ both the DB and the partial DB assumptions are special cases of GAV◮ an ER schema can be easily mapped to its corresponding relational

schema in some normal form via a GAV mapping

◮ LAV (local-as-view): a sound or exact view over the ontologyvocabulary is associated to each term in the information source;

◮ GLAV: mix of the above.

◮ It is non-trivial, even in the pure GAV setting - which is wronglybelieved to be computable by simple view unfolding.

◮ It is mostly studied with sound views, due to the negative complexityresults with exact views discussed before.

Ontologies and Databases. E. Franconi. (28/38)

Page 85: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

Ontologies and Databases. E. Franconi. (29/38)

Page 86: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Ontologies and Databases. E. Franconi. (29/38)

Page 87: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Employee(X) :- 1-Employee(X,Y,false)

Manager(X) :- 1-Employee(X,Y,true)

Project(Y) :- 2-Works-for(X,Y)

Works-for(X,Y) :- 2-Works-for(X,Y)

Salary(X,Y) :- 1-Employee(X,Y,Z)

Ontologies and Databases. E. Franconi. (29/38)

Page 88: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Employee(X) :- 1-Employee(X,Y,false)

Manager(X) :- 1-Employee(X,Y,true)

Project(Y) :- 2-Works-for(X,Y)

Works-for(X,Y) :- 2-Works-for(X,Y)

Salary(X,Y) :- 1-Employee(X,Y,Z)

Q(X) :- Employee(X)

Ontologies and Databases. E. Franconi. (29/38)

Page 89: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Employee(X) :- 1-Employee(X,Y,false)

Manager(X) :- 1-Employee(X,Y,true)

Project(Y) :- 2-Works-for(X,Y)

Works-for(X,Y) :- 2-Works-for(X,Y)

Salary(X,Y) :- 1-Employee(X,Y,Z)

Q(X) :- Employee(X)

=⇒ Q’(X) :- 1-Employee(X,Y,Z) ∪ 2-Works-for(X,W)

Ontologies and Databases. E. Franconi. (29/38)

Page 90: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound GAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Employee(X) :- 1-Employee(X,Y,false)

Manager(X) :- 1-Employee(X,Y,true)

Project(Y) :- 2-Works-for(X,Y)

Works-for(X,Y) :- 2-Works-for(X,Y)

Salary(X,Y) :- 1-Employee(X,Y,Z)

Q(X) :- Employee(X)

=⇒ Q’(X) :- 1-Employee(X,Y,Z) ∪ 2-Works-for(X,W) ← not coming fromunfolding!

Ontologies and Databases. E. Franconi. (29/38)

Page 91: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound LAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

Ontologies and Databases. E. Franconi. (30/38)

Page 92: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound LAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

Ontologies and Databases. E. Franconi. (30/38)

Page 93: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound LAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

1-Employee(X,Y,Z) :- Manager(X), Salary(X,Y), Z=true

1-Employee(X,Y,Z) :- Employee(X), ¬Manager(X), Salary(X,Y), Z=false

2-Works-for(X,Y) :- Works-for(X,Y)

Ontologies and Databases. E. Franconi. (30/38)

Page 94: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound LAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

1-Employee(X,Y,Z) :- Manager(X), Salary(X,Y), Z=true

1-Employee(X,Y,Z) :- Employee(X), ¬Manager(X), Salary(X,Y), Z=false

2-Works-for(X,Y) :- Works-for(X,Y)

Q(X) :- Manager(X), Works-for(X,Y), Project(Y)

Ontologies and Databases. E. Franconi. (30/38)

Page 95: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Sound LAV mapping

Manager

EmployeePaySlipNumber:Integer

Salary:Integer

ProjectProjectCode:String

1..⋆Works-for

1-Employee(PaySlipNumber,Salary,ManagerP)

2-Works-for(PaySlipNumber,ProjectCode)

1-Employee(X,Y,Z) :- Manager(X), Salary(X,Y), Z=true

1-Employee(X,Y,Z) :- Employee(X), ¬Manager(X), Salary(X,Y), Z=false

2-Works-for(X,Y) :- Works-for(X,Y)

Q(X) :- Manager(X), Works-for(X,Y), Project(Y)

=⇒ Q’(X) :- 1-Employee(X,Y,true), 2-Works-for(X,Z)

Ontologies and Databases. E. Franconi. (30/38)

Page 96: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning over queries

Q(X,Y) :- Employee(X), Works-for(X,Y), Manages(X,Y)

AreaManager TopManager

Manager ProjectProjectCode:String

EmployeePaySlipNumber:Integer

Salary:Integer

{disjoint,complete}

1..⋆

Works-for

1..1

1..1

Manages

∀x. Manager(x) → ¬∃y . WORKS-FOR(x , y)

Manager ⊑ ¬∃WORKS-FOR.⊤

Manager ⊆ Employee \ π1WORKS-FOR

Ontologies and Databases. E. Franconi. (31/38)

Page 97: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Reasoning over queries

Q(X,Y) :- Employee(X), Works-for(X,Y), Manages(X,Y)

AreaManager TopManager

Manager ProjectProjectCode:String

EmployeePaySlipNumber:Integer

Salary:Integer

{disjoint,complete}

1..⋆

Works-for

1..1

1..1

Manages

∀x. Manager(x) → ¬∃y . WORKS-FOR(x , y)

Manager ⊑ ¬∃WORKS-FOR.⊤

Manager ⊆ Employee \ π1WORKS-FOR

; INCONSISTENT QUERY!

Ontologies and Databases. E. Franconi. (31/38)

Page 98: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Summary

◮ Logic and Conceptual Modelling

◮ Queries with an Ontology

◮ Determinacy

Ontologies and Databases. E. Franconi. (32/38)

Page 99: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Determinacy (implicit definability)

A query Q over a DBox is implicitly definable under constraints if itsextension is fully determined by the extension of the DBox relations, and itdoes not depend on the non-DBox relations appearing in the constraints.

Checking implicit definability under first-order logic constraints of a queryover a DBox can be reduced to classical entailment.

Ontologies and Databases. E. Franconi. (33/38)

Page 100: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Determinacy (implicit definability)

A query Q over a DBox is implicitly definable under constraints if itsextension is fully determined by the extension of the DBox relations, and itdoes not depend on the non-DBox relations appearing in the constraints.

Checking implicit definability under first-order logic constraints of a queryover a DBox can be reduced to classical entailment.

Definition (Implicit definability)

Let DBi and DBj be any two legal databases of the constraints T whichagree on the extension of the DBox relations.A query Q is implicitly definable from the DBox relations under theconstraints T iff the answer of Q over DBi is the same as the answer ofQ over DBj .

Ontologies and Databases. E. Franconi. (33/38)

Page 101: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Rewriting - or explicit definability

◮ If a query is implicitly definable, it is possible to find an equivalentreformulation of the query using only relations in the DBox. This isits explicit definition.

◮ It has been shown that under general first-order logic constraints,whenever a query is implicitly definable then it is explicitly definablein a constructive way as a first-order query.

Ontologies and Databases. E. Franconi. (34/38)

Page 102: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Example

Manager Clerk

Employee

{disjoint,complete}

Ontologies and Databases. E. Franconi. (35/38)

Page 103: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Example

Manager Clerk

Employee

{disjoint,complete}

◮ Q(x) :- Clerk(x)is determined by the extension of the DBoxrelations under the constraints

Ontologies and Databases. E. Franconi. (35/38)

Page 104: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Example

Manager Clerk

Employee

{disjoint,complete}

◮ Q(x) :- Clerk(x)is determined by the extension of the DBoxrelations under the constraints

◮ Q(x) :- Clerk(x)is equivalent toQ ′(x) :- Employee(x) ∧ ¬Manager(x)

Ontologies and Databases. E. Franconi. (35/38)

Page 105: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

The query rewriting under constraints

process

1. Check whether the database is consistent with respect to theconstraints and, if so,

2. check whether the answer to the original query under first-orderconstraints is solely determined by the extension of the DBoxrelations and, if so,

3. find an equivalent (first-order) rewriting of the query in terms of theDBox relation.

4. It is possible to pre-compute all the rewritings of all the determinedrelations as SQL relational views, and to allow arbitrary SQL querieson top of them: the whole system is deployed at run time as astandard SQL relational database.

Ontologies and Databases. E. Franconi. (36/38)

Page 106: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Domain independence & range-restricted

rewritings

I cheated so far! ,

Ontologies and Databases. E. Franconi. (37/38)

Page 107: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Domain independence & range-restricted

rewritings

I cheated so far! ,

Unless the rewriting is a domain independent (e.g., a range-restricted)first-order logic formula, it can not be expressed in relational algebra orSQL!

Ontologies and Databases. E. Franconi. (37/38)

Page 108: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Domain independence & range-restricted

rewritings

I cheated so far! ,

Unless the rewriting is a domain independent (e.g., a range-restricted)first-order logic formula, it can not be expressed in relational algebra orSQL!

◮ We prove general conditions on the constraints and the query in orderto guarantee that the rewriting is domain independent

◮ All the typical database constraints (e.g., TGDs and EGDs) satisfythose conditions

◮ All the ontology languages in the guarded fragment satisfy thoseconditions

Ontologies and Databases. E. Franconi. (37/38)

Page 109: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Conclusions

Ontologies and Databases. E. Franconi. (38/38)

Page 110: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Conclusions

Do you want to exploit ontology knowledge(i.e., constraints or an ontology)in your data intensive application?

Ontologies and Databases. E. Franconi. (38/38)

Page 111: ESWC SS 2012 - Monday Keynote Enrico Franconi: Ontologies and Databases

Conclusions

Do you want to exploit ontology knowledge(i.e., constraints or an ontology)in your data intensive application?

Pay attention!

TURGIA Made with LATEX2e

Ontologies and Databases. E. Franconi. (38/38)