Özgür l. Özçep data exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür l. Özçep data...
TRANSCRIPT
![Page 1: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/1.jpg)
Özgür L. Özçep
Data Exchange 1Lecture 5: Motivation, Relational DE, Chase
15 November, 2017
Foundations of Ontologies and Databasesfor Information SystemsCS5130 (Winter 17/18)
![Page 2: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/2.jpg)
Short Recap
We should understand now:“Finite Model Theory (FMT) is the backbone of database theory”
2 / 60
![Page 3: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/3.jpg)
References
Lit: M. Arenas, P. Barceló, L. Libkin, and F. Murlak: Foundations of Data Exchange.
Cambridge University Press, 2014.
3 / 60
![Page 4: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/4.jpg)
Data Exchange: Motivation
![Page 5: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/5.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ
target schema τ
τ query
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , )
5 / 60
![Page 6: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/6.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , )
5 / 60
![Page 7: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/7.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , )
5 / 60
![Page 8: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/8.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
τ DBExchange
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , )
5 / 60
![Page 9: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/9.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , )
5 / 60
![Page 10: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/10.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ , . . . )
5 / 60
![Page 11: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/11.jpg)
Data Exchange (DE): Main Setting
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Inputs of a DE scenarioI Source (σ) instanceI MappingM = (σ, τ,Mστ ,Mτ ) Mτ = target constraints
5 / 60
![Page 12: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/12.jpg)
Data Exchange History
I Much research in DB community
I Formal treatment starts in 2003Lit: R. Fagin et al. Data exchange: Semantics and query answering. In:
Database Theory - ICDT 2003, Proceedings, volume 2572 of LNCS, pages
207–224. Springer, 2003.
Lit: R. Fagin, L. M. Haas, M. Hernández, R. J. Miller, L. Popa, and Y.
Velegrakis. Conceptual modeling: Foundations and applications. chapter Clio:
Schema Mapping Creation and Data Exchange, pages 198–236. Springer-Verlag,
Berlin, Heidelberg, 2009.
I Incorporated into IBM Cliohttp://dblab.cs.toronto.edu/project/clio/
6 / 60
![Page 13: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/13.jpg)
Research Context of DE
Definition (Semantic Integration (SI))
Research area dealing with issues (services) related to ensuringinteroperability of possibly heterogeneous (data) sources usingsemantics.
Data Exchange = Asymmetric DB schema-level SI
7 / 60
![Page 14: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/14.jpg)
Research Context of DE
Definition (Semantic Integration (SI))
Research area dealing with issues (services) related to ensuringinteroperability of possibly heterogeneous (data) sources usingsemantics.
Data Exchange = Asymmetric DB schema-level SI
7 / 60
![Page 15: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/15.jpg)
Lecture Context
I Lecture 5 + 6: Data exchangeI Will heavily use knowledge on FOL (Lectures 1 + 2) and FMT
(Lectures 3 + 4)
I Lecture 7 + 8: Ontology-based data access
I Lecture 9+10: Ontology-level integration
8 / 60
![Page 16: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/16.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?Semantics of mappings
9 / 60
![Page 17: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/17.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?Semantics of mappings
9 / 60
![Page 18: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/18.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?Semantics of mappings
9 / 60
![Page 19: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/19.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?Semantics of mappings
9 / 60
![Page 20: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/20.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?Semantics of mappings
9 / 60
![Page 21: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/21.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?
Semantics of mappings
9 / 60
![Page 22: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/22.jpg)
Data Exchange: Challenges
σ DB
source schema σ target schema τ
τ query
τ DBExchange
mapping rules
Mστ
Consistency: Is there a τ DBfitting the rules?
Materialization: If yes, can one constructsolution (effectively)?
Goodness: Are some solutions “better”?(universal, core)
Semantics of QA: What answers are intended?certain answers
QA algorithm: How to calculate answers?
Semantics of mappings
9 / 60
![Page 23: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/23.jpg)
Running Example
![Page 24: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/24.jpg)
Example (DE in Flight Domain)
Source schema σ
Geo( city, coun, pop )Flight( src, dest, airl, dep )
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
11 / 60
![Page 25: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/25.jpg)
Example (DE in Flight Domain)
Source schema σ
Geo( city, coun, pop )Flight( src, dest, airl, dep )
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
Target constraints Mτ
primary key: fno foreign key: Info[fno] ⊆FK Route[fno]
11 / 60
![Page 26: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/26.jpg)
Example (DE in Flight Domain)
Source schema σ
Geo( city, coun, pop )Flight( src, dest, airl, dep )
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
11 / 60
![Page 27: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/27.jpg)
Example (DE in Flight Domain)
Source schema σ
Geo( city, coun, pop )Flight( src, dest, airl, dep )
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
Mστ = source-to-target tuple generating dependencies
Sufficiently expressive FOL formula of feasible form
11 / 60
![Page 28: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/28.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
11 / 60
![Page 29: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/29.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
11 / 60
![Page 30: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/30.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
11 / 60
![Page 31: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/31.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
12 / 60
![Page 32: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/32.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Materialization of a τ instance (τ solution)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}I Non-complete DB: contains marked NULLs ⊥1,⊥2
I Can answer τ -queries on T. Semantics?
12 / 60
![Page 33: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/33.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Materialization of a τ instance (τ solution)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}I Non-complete DB: contains marked NULLs ⊥1,⊥2
I Can answer τ -queries on T. Semantics?
12 / 60
![Page 34: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/34.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Materialization of a τ instance (τ solution)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}I Non-complete DB: contains marked NULLs ⊥1,⊥2
I Can answer τ -queries on T. Semantics?
12 / 60
![Page 35: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/35.jpg)
Definition (Certain answers over incomplete DB (informally))cert(Q,T) = intersection of answers over all complete DBs
represented by T
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
13 / 60
![Page 36: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/36.jpg)
Definition (Certain answers over incomplete DB (informally))cert(Q,T) = intersection of answers over all complete DBs
represented by T
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
13 / 60
![Page 37: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/37.jpg)
Definition (Certain answers over incomplete DB (formally))
cert(Q,T) = Q(T) =⋂
T′∈Rep(T)
Q(T′)
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
13 / 60
![Page 38: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/38.jpg)
Definition (Certain answers over incomplete DB (formally))
cert(Q,T) = Q(T) =⋂
T′∈Rep(T)
Q(T′)
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
I Exemplifies two important general strategiesI Reduction (here: to answering over complete DBs)I Minimal compromise/Summarization over all possible solutions
I Compare with full bayesian learning in ML:Considers all hypotheses (∼ completions) consistent withtraining data and averages (∼ intersects)
13 / 60
![Page 39: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/39.jpg)
Definition (Certain answers over incomplete DB (formally))
cert(Q,T) = Q(T) =⋂
T′∈Rep(T)
Q(T′)
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
Example (Answer for τ solution from flight domain)
I T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}Rep(T) = {{Route(123, paris, sant), Info(123, 2320, 0815, airFr)},
{{Route(124, paris, sant), Info(124, 2320, 0915, airFr)},. . . , }
I Q1 = ∃fno Route(fno, paris, sant) cert(Q1,T) = {()} = yes
I Q2 = Route(123, paris, sant) cert(Q2,T) = ∅ = no
13 / 60
![Page 40: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/40.jpg)
Definition (Certain answers over incomplete DB (formally))
cert(Q,T) = Q(T) =⋂
T′∈Rep(T)
Q(T′)
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
Example (Answer for τ solution from flight domain)
I T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}Rep(T) = {{Route(123, paris, sant), Info(123, 2320, 0815, airFr)},
{{Route(124, paris, sant), Info(124, 2320, 0915, airFr)},. . . , }
I Q1 = ∃fno Route(fno, paris, sant) cert(Q1,T) = {()} = yes
I Q2 = Route(123, paris, sant) cert(Q2,T) = ∅ = no
13 / 60
![Page 41: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/41.jpg)
Definition (Certain answers over incomplete DB (formally))
cert(Q,T) = Q(T) =⋂
T′∈Rep(T)
Q(T′)
Rep(T) = all complete DBs resulting from T by substitutingmarked NULLs (consistently) with constants
Example (Answer for τ solution from flight domain)
I T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}Rep(T) = {{Route(123, paris, sant), Info(123, 2320, 0815, airFr)},
{{Route(124, paris, sant), Info(124, 2320, 0915, airFr)},. . . , }
I Q1 = ∃fno Route(fno, paris, sant) cert(Q1,T) = {()} = yes
I Q2 = Route(123, paris, sant) cert(Q2,T) = ∅ = no
13 / 60
![Page 42: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/42.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Many τ solutions SOLM(S)
T = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant) , Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant) , Info(123, 2320,⊥2, airFr)} . . .
14 / 60
![Page 43: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/43.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Many τ solutions SOLM(S)
T = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant) , Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant) , Info(123, 2320,⊥2, airFr)} . . .
14 / 60
![Page 44: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/44.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥3, paris, sant.
Info( fno, dep, arr, airl )⊥3, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Many τ solutions SOLM(S)
T = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant) , Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant) , Info(123, 2320,⊥2, airFr)} . . .
14 / 60
![Page 45: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/45.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )⊥1, paris, sant.
Info( fno, dep, arr, airl )⊥1, 2320, ⊥1, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Many τ solutions SOLM(S)
T = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant) , Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant) , Info(123, 2320,⊥2, airFr)} . . .
14 / 60
![Page 46: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/46.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ and instance
Route( fno, src, dest )123, paris, sant.
Info( fno, dep, arr, airl )123, 2320, ⊥2, airFr
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
. . .
Many τ solutions SOLM(S)
T = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant) , Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant) , Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant) , Info(123, 2320,⊥2, airFr)} . . .
14 / 60
![Page 47: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/47.jpg)
Certain Answers Help AgainI Same idea: Compromise over all possible solutionsI Certain answers w.r.t. mappingM = (σ, τ,Mστ ,Mτ ) and
source DB S
Definition (Certain answers (formally))
certM(Q,S) =⋂
T∈SolM(S)Q(T)
Example (Certain answers in flight domain)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
I Q1 = ∃fno Route(fno, paris, sant) certM(Q1,S) = {()} = yes
I Q2 = Route(123, paris, sant) certM(Q2,S) = ∅ = no
15 / 60
![Page 48: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/48.jpg)
Certain Answers Help AgainI Same idea: Compromise over all possible solutionsI Certain answers w.r.t. mappingM = (σ, τ,Mστ ,Mτ ) and
source DB S
Definition (Certain answers (formally))
certM(Q,S) =⋂
T∈SolM(S)Q(T)
Example (Certain answers in flight domain)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
I Q1 = ∃fno Route(fno, paris, sant) certM(Q1,S) = {()} = yes
I Q2 = Route(123, paris, sant) certM(Q2,S) = ∅ = no
15 / 60
![Page 49: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/49.jpg)
Certain Answers Help AgainI Same idea: Compromise over all possible solutionsI Certain answers w.r.t. mappingM = (σ, τ,Mστ ,Mτ ) and
source DB S
Definition (Certain answers (formally))
certM(Q,S) =⋂
T∈SolM(S)Q(T)
Example (Certain answers in flight domain)
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
I Q1 = ∃fno Route(fno, paris, sant) certM(Q1,S) = {()} = yes
I Q2 = Route(123, paris, sant) certM(Q2,S) = ∅ = no15 / 60
![Page 50: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/50.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 51: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/51.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 52: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/52.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 53: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/53.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 54: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/54.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 55: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/55.jpg)
But wait . . .
I In DE one aims at materializing exactly one τ solution?I Is there a single solution Tu capturing the certain answers?
certM(Q,S)?= Q(Tu)
I Yes! Universal solutionI Contains facts which are as specific as necessary, i.e.,
all other solutions more specificI Works for CQs = conjunctive queries (= SPJ fragment)I Universality fundamental property ubiquitous in CS
I e.g., most general unifier in resolutionI If existent, can be constructed by chase procedure
16 / 60
![Page 56: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/56.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
17 / 60
![Page 57: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/57.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
non-necessaryco-reference
17 / 60
![Page 58: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/58.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .non-necessaryinstantiation
17 / 60
![Page 59: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/59.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
Why is Tuniversal?
17 / 60
![Page 60: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/60.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
Why is Tuniversal?⊥1 7→ ⊥3
17 / 60
![Page 61: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/61.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
Why is Tuniversal?
⊥2 7→ ⊥1
17 / 60
![Page 62: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/62.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
Why is Tuniversal?
⊥1 7→ 123
17 / 60
![Page 63: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/63.jpg)
Example (DE in Flight Domain)
Source schema σ and instance S
Geo( city, coun, pop )Flight( src, dest, airl, dep )
paris sant. airFr 2320
Target schema τ
Route( fno, src, dest )
Info( fno, dep, arr, airl )
Serves( airl, city, coun, phone )Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
Universal solutions
T = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥2, airFr)}
T′ = {Route(⊥3, paris, sant), Info(⊥3, 2320,⊥2, airFr)}
T′′ = {Route(⊥1, paris, sant), Info(⊥1, 2320,⊥1, airFr)}
T′′′ = {Route(123, paris, sant), Info(123, 2320,⊥2, airFr)} . . .
Any universal solution works: certM(Q,S) = Q(T) = Q(T′)17 / 60
![Page 64: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/64.jpg)
Definition (Universal Solution)
A solution T for S andM is called a universal solution iffit can be mapped homomorphically into all other solutions.
For all T′ ∈ SOLM(S) there is h : Thom−→ T′
18 / 60
![Page 65: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/65.jpg)
Homomorphism
I CONST (T) = set of all constants in T
I VAR(T) = set of all marked nulls in T
DefinitionA homomorphism h : T
hom−→ T′ is a map
h : Var(T) ∪ CONST → VAR(T′) ∪ CONST
s.t.I h(c) = c for all c ∈ CONST andI if R(t1, . . . , tn) ∈ T, then R(h(t1), . . . , h(tn)) ∈ T′
(for all relations R)
See blackboard for (non)examples
19 / 60
![Page 66: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/66.jpg)
Homomorphism
I CONST (T) = set of all constants in T
I VAR(T) = set of all marked nulls in T
DefinitionA homomorphism h : T
hom−→ T′ is a map
h : Var(T) ∪ CONST → VAR(T′) ∪ CONST
s.t.I h(c) = c for all c ∈ CONST andI if R(t1, . . . , tn) ∈ T, then R(h(t1), . . . , h(tn)) ∈ T′
(for all relations R)
See blackboard for (non)examples
19 / 60
![Page 67: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/67.jpg)
Homomorphism
I CONST (T) = set of all constants in T
I VAR(T) = set of all marked nulls in T
DefinitionA homomorphism h : T
hom−→ T′ is a map
h : Var(T) ∪ CONST → VAR(T′) ∪ CONST
s.t.I h(c) = c for all c ∈ CONST andI if R(t1, . . . , tn) ∈ T, then R(h(t1), . . . , h(tn)) ∈ T′
(for all relations R)
See blackboard for (non)examples
19 / 60
![Page 68: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/68.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ
Route( fno, src, dest )
⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )
⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )
klm, paris, france, ⊥5
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
20 / 60
![Page 69: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/69.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ
Route( fno, src, dest )
⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )
⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )
klm, paris, france, ⊥5
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
20 / 60
![Page 70: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/70.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ and universal solution T
Route( fno, src, dest )⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )klm, paris, france, ⊥5klm, paris, france, ⊥6
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
20 / 60
![Page 71: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/71.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ and core solution
Route( fno, src, dest )⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )klm, paris, france, ⊥5klm, paris, france, ⊥6
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
20 / 60
![Page 72: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/72.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ and core solution
Route( fno, src, dest )⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )klm, paris, france, ⊥5klm, paris, france, ⊥6
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
Why not delete similarly Route(⊥3, paris, amst)?
20 / 60
![Page 73: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/73.jpg)
Example (Core in Flight Domain)
Source schema σ and instance
Geo( city, coun, pop )paris, france, 2M
Flight ( src, dest, airl, dep )paris amst. klm 1410paris amst. klm 2230
Target schema τ and core solution
Route( fno, src, dest )⊥1, paris, amst.⊥3, paris, amst.
Info( fno, dep, arr, airl )⊥1, 1410, ⊥2, klm⊥3, 2320, ⊥4, klm
Serves( airl, city, coun, phone )klm, paris, france, ⊥5klm, paris, france, ⊥6
Mapping rules Mστ
1. Flight(src, dest, airl , dep) −→∃fno ∃arr (Route(fno, src, dest) ∧ Info(fno, dep, arr , airl))
2. Flight(city , dest, airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
3. Flight(src, city , airl , dep) ∧ Geo(city , coun, pop) −→∃phone (Serves(airl , city , coun, phone))
Why not delete similarly Route(⊥3, paris, amst)?
There are additional facts distinguishing ⊥1 and ⊥3
Identification ⊥1 = ⊥3 would violate primary key constraint20 / 60
![Page 74: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/74.jpg)
Core Solution vs. Universal Solution
I Core solutions contain less redundant information and areunique
I but are harder to construct (next lecture)
I Which one to use?I Aim “only” answering CQs =⇒ universal solutionI Aim goes further =⇒ core solution
I Need to query with more expressive language(negation, counting)
I Need to calculate sufficient statistics in an ML algorithm
21 / 60
![Page 75: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/75.jpg)
Core Solution vs. Universal Solution
I Core solutions contain less redundant information and areunique
I but are harder to construct (next lecture)
I Which one to use?I Aim “only” answering CQs =⇒ universal solutionI Aim goes further =⇒ core solution
I Need to query with more expressive language(negation, counting)
I Need to calculate sufficient statistics in an ML algorithm
21 / 60
![Page 76: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/76.jpg)
Outlook
I Next lectureI Formalization of mappingsI Algorithmic problem of testing for solutionsI Chase algorithm for constructing solutions
I ThereafterI Universal solutions and coresI Certain AnswersI Rewriting
22 / 60
![Page 77: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/77.jpg)
Testing for and Constructing Solutions
![Page 78: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/78.jpg)
Relational MappingsI Going to deal mainly with relational mappings, i.e. mappings
for relational DBsI Relational DB (Codd 1970) very successful and still highly
relevantI There were other opinions...
“Some of the ideas presented in the paper are interesting and may be of some
use, but, in general, this very preliminary work fails to make a convincing point
as to their implementation, performance, and practical usefulness. The paper’s
general point is that the tabular form presented should be suitable for general
data access, but I see two problems with this statement: expressivity and
efficiency. [...] The formalism is needlessly complex and mathematical, using
concepts and notation with which the average data bank practitioner is
unfamiliar.” Cited according to (Santini 2005)
Lit: E. F. Codd. A relational model of data for large shared data banks.
Commun. ACM, 13(6):377–387, June 1970.
Lit: S. Santini. We are sorry to inform you ... Computer, December 2005.24 / 60
![Page 79: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/79.jpg)
Relational Mappings Formally
DefinitionA relational mappingM is a tuple of the form
M = (σ, τ,Mστ ,Mτ )
whereI σ is the source schemaI τ is the target schema with all relation symbols different from
those in σI Mστ is a finite set of FOL formulae over σ ∪ τ called
source-to-target dependenciesI Mτ is a set of constraints on the target schema called target
dependencies
25 / 60
![Page 80: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/80.jpg)
DB Instances of Schemata
I Schemata are relational signaturesI Concrete database instance
I For a given schema σ a concrete DB instance is a σ FOLstructure with active domain
I Active domain: Domain contains all and only individuals (alsocalled constants) occurring in relations
I Usually: All source instances are concrete DBs
I Generalized DB instancesI For some attributes in target schema (Example: flight number
fno) no corresponding attribute in source may existI Next to constants CONST allow disjoint set of marked NULLs,
denoted VARI A generalized DB instance may contain elements from CONST∪ VAR
I “Incomplete” DB
26 / 60
![Page 81: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/81.jpg)
DB Instances of Schemata
I Schemata are relational signaturesI Concrete database instance
I For a given schema σ a concrete DB instance is a σ FOLstructure with active domain
I Active domain: Domain contains all and only individuals (alsocalled constants) occurring in relations
I Usually: All source instances are concrete DBs
I Generalized DB instancesI For some attributes in target schema (Example: flight number
fno) no corresponding attribute in source may existI Next to constants CONST allow disjoint set of marked NULLs,
denoted VARI A generalized DB instance may contain elements from CONST∪ VAR
I “Incomplete” DB
26 / 60
![Page 82: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/82.jpg)
Source-Target-Dependencies Mστ
I Source-Target-Dependencies may be arbitrary FOL formulaI Usually they have a simple directed form (decidability!)
DefinitionA source-to-target tuple-generating dependencies (st-tgds) is a FOLformula of the form
∀~x~y(φσ(~x , ~y) −→ ∃~z ψτ (~x , ~z))
whereI φσ is a conjunction of atoms over source schema σI ψτ is a conjunction of atoms over target schema τ
I So in particular, antecedens is a conjunctive query (CQ)I CQs “well-behaved”
27 / 60
![Page 83: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/83.jpg)
Source-Target-Dependencies Mστ
I Source-Target-Dependencies may be arbitrary FOL formulaI Usually they have a simple directed form (decidability!)
DefinitionA source-to-target tuple-generating dependencies (st-tgds) is a FOLformula of the form
∀~x~y(φσ(~x , ~y) −→ ∃~z ψτ (~x , ~z))
whereI φσ is a conjunction of atoms over source schema σI ψτ is a conjunction of atoms over target schema τ
I So in particular, antecedens is a conjunctive query (CQ)I CQs “well-behaved”
27 / 60
![Page 84: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/84.jpg)
Reminder: Conjunctive Queries (CQs)
I Class of sufficiently expressive and feasible FOL queries of form
ans(~x) = ∃~y(α1(~x1, ~y1) ∧ · · · ∧ αn(~xn, ~yn)
)where
I αi (~xi , ~yi ) are atomic FOL formula andI ~xi variable vectors among ~x and ~yi variables among ~y
I Corresponds to SELECT-PROJECT-JOIN Fragment of SQL
Example (Conjunctive Query from Flight Domain)
ans(src, dest, airl , dep) = ∃fno ∃ arr(Routes(fno, src, dest) ∧ Info(fno, dep, arr , airl))
28 / 60
![Page 85: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/85.jpg)
Reminder: Conjunctive Queries (CQs)
Theorem
I Answering CQs is NP-complete w.r.t. combined complexity(Chandra,Merlin 1977)
I Subsumption test for CQs is NP completeI Answering CQs is in AC0 (and thus in P) w.r.t. data complexity
Lit: A. K. Chandra and P. M. Merlin. Optimal implementation of conjunctive queries
in relational data bases. In: Proceedings of the Ninth Annual ACM Symposium on
Theory of Computing, STOC’77, pages 77–90, New York, NY, USA, 1977. ACM.
29 / 60
![Page 86: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/86.jpg)
Wake-Up Question
Are st-tgds Datalog rules?
I No, as Datalog rules do not allow existentials in the head ofthe query
I But there is the extended logic called Datalog+/−I Has been investigated in last years also in context of
ontology-based data access (see net lectures)I Provides many interesting sub-fragments
Lit: A. Calì, G. Gottlob, and T. Lukasiewicz. Datalog+/-: A unified approach to
ontologies and integrity constraints. In Proceedings of the 12th International
Conference on Database Theory, pages 14–30. ACM Press, 2009.
30 / 60
![Page 87: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/87.jpg)
Wake-Up Question
Are st-tgds Datalog rules?
I No, as Datalog rules do not allow existentials in the head ofthe query
I But there is the extended logic called Datalog+/−I Has been investigated in last years also in context of
ontology-based data access (see net lectures)I Provides many interesting sub-fragments
Lit: A. Calì, G. Gottlob, and T. Lukasiewicz. Datalog+/-: A unified approach to
ontologies and integrity constraints. In Proceedings of the 12th International
Conference on Database Theory, pages 14–30. ACM Press, 2009.
30 / 60
![Page 88: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/88.jpg)
Prominent Tuple Generating Dependencies
I Theorems of Euclids“Elements” expressible astuple generatingdependencies
Lit: J. Avigad, E. Dean, J. Mumma: “A Formal System for Euclid’s Elements”, The
Review of Symbolic Logic, 2009
31 / 60
![Page 89: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/89.jpg)
Target Dependencies Mτ
I These define constraints on target schema known also fromclassical DB theory
I Two different types of dependencies are sufficiently general tocapture the classical DB constraints
DefinitionA tuple-generating dependency (tgd) is a FOL formula of the form
∀~x~y(φ(~x , ~y) −→ ∃~z ψ(~x , ~z))
where φ, ψ are conjunctions of atoms over τ .
An equality-generating (egd) is a FOL formula of the form
∀~x(φ(~x) −→ xi = xj)
where φ(~x) is a conjunction of atoms over τ and xi , xj occur in ~x .
32 / 60
![Page 90: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/90.jpg)
Semantics: Solutions
DefinitionGiven: a mappingM and a σ instance S
A τ instance T is called a solution for S underM iff(S,T) satisfies all rules in Mστ (for short: (S,T) |= Mστ ) and Tsatisfies all rules in Mτ .
I (S,T) |= Mστ iff S ∪ T |= Mστ whereI S ∪ T is the union of the instances S,T: Structure containing
all relations from S and T with domain the union of domainsof S and T
I well defined because schemata are disjoint
I SolM(S): Set of solutions for S underM
33 / 60
![Page 91: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/91.jpg)
First Key Problem: Existence of Solutions
Problem: SOLEXISTENCEMInput: Source instance SOutput: Answer whether there exists a solution for S underM
I Note:M is assumed to be fixed =⇒ data complexityI This problem is going to be approached with a well known
proof tool: chase
34 / 60
![Page 92: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/92.jpg)
Trivial Case: No Target Dependencies
I Without target constraints there is always a solution
Proposition
LetM = (σ, τ,Mστ ) with Mστ consisting of st-tgds. Then for anysource instance S there are infinitely many solutions and at leastone solution can be constructed in polynomial time.
Proof IdeaI For every rule and every tuple ~a fulfilling the antecedens
generate facts according to the succedens (using fresh namednulls for the existentially quantified variables)
I Resulting τ instance T is a solutionI Polynomial: Testing whether ~a fulfills the head (a conjunctive
query) can be done in polynomial timeI Infinity: From T can build any other solution by extension
35 / 60
![Page 93: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/93.jpg)
Trivial Case: No Target Dependencies
I Without target constraints there is always a solution
Proposition
LetM = (σ, τ,Mστ ) with Mστ consisting of st-tgds. Then for anysource instance S there are infinitely many solutions and at leastone solution can be constructed in polynomial time.
Proof IdeaI For every rule and every tuple ~a fulfilling the antecedens
generate facts according to the succedens (using fresh namednulls for the existentially quantified variables)
I Resulting τ instance T is a solutionI Polynomial: Testing whether ~a fulfills the head (a conjunctive
query) can be done in polynomial timeI Infinity: From T can build any other solution by extension
35 / 60
![Page 94: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/94.jpg)
Undecidability for General Constraints
TheoremThere is a relational mappingM = (σ, τ,Mστ ,Mτ ) such thatSOLEXISTENCEM is undecidable.
I Proof by reduction from embedding problem for finitesemigroups which is known to be undecidable (Arenas et al.2014, Thm 5.3)
I As a consequence: Further restrict mapping rulesI But note that the following chase construction defined for
arbitrary st-tgds
36 / 60
![Page 95: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/95.jpg)
Undecidability for General Constraints
TheoremThere is a relational mappingM = (σ, τ,Mστ ,Mτ ) such thatSOLEXISTENCEM is undecidable.
Wake-Up Question
As another exercise in reduction prove the following corollary:There is a relational mappingM = (σ, τ,Mστ ) with a single FOLdependency in Mστ s.t. SOLEXISTENCEM is undecidable
36 / 60
![Page 96: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/96.jpg)
Undecidability for General Constraints
TheoremThere is a relational mappingM = (σ, τ,Mστ ,Mτ ) such thatSOLEXISTENCEM is undecidable.
Wake-Up Question
As another exercise in reduction prove the following corollary:There is a relational mappingM = (σ, τ,Mστ ) with a single FOLdependency in Mστ s.t. SOLEXISTENCEM is undecidable
ProofI Assume otherwiseI LetM = (σ, τ,Mστ ,Mτ )
I ConstructM′ = (σ, τ, {χ}) withχ =
∧(Mστ ∪Mτ )
36 / 60
![Page 97: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/97.jpg)
Existence Proof vs. ConstructionI Proposition above showed existence of solutionI Showing existence 6= construction of a verifierI Actually we are going to construct a solution using the chase
I Interesting debate in philosophy of mathematics whethernon-constructive proofs are acceptable
I Mathematical Intuitionism: field allowing only constructiveproofs
I truth = provable = constructively provableI Classical logical inference rules s.a. ¬¬A � A not allowed
I L.E.J. Brouwer (1881 to 1966)I Guru of intuitionismI Irony of history: Proved many
interesting results in classical(non-constructive) mathematics(Brouwer’s fixed point theorem)
37 / 60
![Page 98: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/98.jpg)
The Chase
![Page 99: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/99.jpg)
Chase Construction
I A widely used tool in DB theoryI Original use: Calculating entailments of DB constraints
Lit: D. Maier, A. O. Mendelzon, and Y. Sagiv. Testing implications of data
dependencies. ACM Trans. Database Syst., 4(4):455–469, Dec. 1979.
I IdeaI Apply tgds as completion/repair rules in a bottom-up strategyI until no tgds can be applied anymoreI Chase construction mail fail if one of the egds is violated
I The chase leads to an instance with desirable propertiesI It produces not too many redundant factsI Universality
39 / 60
![Page 100: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/100.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 101: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/101.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 102: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/102.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 103: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/103.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 104: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/104.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 105: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/105.jpg)
Example (Terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
}
I Source instance S = {E (a, b)}I Going to build stepwise potential target instances Ti
considering pairs (S,Ti )
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (termination)
40 / 60
![Page 106: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/106.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 107: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/107.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 108: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/108.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 109: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/109.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 110: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/110.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 111: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/111.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 112: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/112.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 113: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/113.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 114: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/114.jpg)
Example (Non-terminating c(h)ase)
I Source schema σ = {E}; target schema τ = {G , L}I Mστ = { E (x , y)→ G (x , y)︸ ︷︷ ︸
θ1
}
Mτ = { G (x , y)→ ∃z L(y , z)︸ ︷︷ ︸χ1
, L(x , y)→ ∃z G (y , z)︸ ︷︷ ︸χ2
}
I Source instance S = {E (a, b)}
I (S, ∅) (violates θ1)I (S, {G (a, b)}) (violates χ1)I (S, {G (a, b), L(b,⊥)}) (violates χ2 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1)}) (violates χ1 )I (S, {G (a, b), L(b,⊥),G (⊥,⊥1), L(⊥1,⊥2)}) (violates χ2 )I . . . (non-termination)
41 / 60
![Page 115: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/115.jpg)
Chase DefinitionI Let S be a σ instance and dom(S) its domain
Definition (Chase steps)
Sχ,~a; S′ iff
1. χ a tgd of form φ(~x)→ ∃~yψ(~x , ~y) andI S |= φ(~a) for some elements ~a from dom(S)I S′ extends S with all atoms occurring in ψ(~a, ~⊥).
2. or χ is an egd of form φ(~x)→ xi = xj andI S |= φ(~a) for some elements ~a from dom(S) with ai 6= aj andI ( ai is constant or null, aj is null and S′ = S[aj/ai ] orI ai is null, aj is constant and S′ = S[ai/aj ] )
Sχ,~a; fail iff
I S |= φ(~a) for some elements ~a from dom(S) with ai 6= ajI and both ai , aj are constants.
42 / 60
![Page 116: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/116.jpg)
Chase DefinitionI Let S be a σ instance and dom(S) its domain
Definition (Chase steps)
Sχ,~a; S′ iff
1. χ a tgd of form φ(~x)→ ∃~yψ(~x , ~y) andI S |= φ(~a) for some elements ~a from dom(S)I S′ extends S with all atoms occurring in ψ(~a, ~⊥).
2. or χ is an egd of form φ(~x)→ xi = xj andI S |= φ(~a) for some elements ~a from dom(S) with ai 6= aj andI ( ai is constant or null, aj is null and S′ = S[aj/ai ] orI ai is null, aj is constant and S′ = S[ai/aj ] )
Sχ,~a; fail iff
I S |= φ(~a) for some elements ~a from dom(S) with ai 6= ajI and both ai , aj are constants.
42 / 60
![Page 117: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/117.jpg)
Chase DefinitionI Let S be a σ instance and dom(S) its domain
Definition (Chase steps)
Sχ,~a; S′ iff
1. χ a tgd of form φ(~x)→ ∃~yψ(~x , ~y) andI S |= φ(~a) for some elements ~a from dom(S)I S′ extends S with all atoms occurring in ψ(~a, ~⊥).
2. or χ is an egd of form φ(~x)→ xi = xj andI S |= φ(~a) for some elements ~a from dom(S) with ai 6= aj andI ( ai is constant or null, aj is null and S′ = S[aj/ai ] orI ai is null, aj is constant and S′ = S[ai/aj ] )
Sχ,~a; fail iff
I S |= φ(~a) for some elements ~a from dom(S) with ai 6= ajI and both ai , aj are constants.
42 / 60
![Page 118: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/118.jpg)
Chase DefinitionI Let S be a σ instance and dom(S) its domain
Definition (Chase steps)
Sχ,~a; S′ iff
1. χ a tgd of form φ(~x)→ ∃~yψ(~x , ~y) andI S |= φ(~a) for some elements ~a from dom(S)I S′ extends S with all atoms occurring in ψ(~a, ~⊥).
2. or χ is an egd of form φ(~x)→ xi = xj andI S |= φ(~a) for some elements ~a from dom(S) with ai 6= aj andI ( ai is constant or null, aj is null and S′ = S[aj/ai ] orI ai is null, aj is constant and S′ = S[ai/aj ] )
Sχ,~a; fail iff
I S |= φ(~a) for some elements ~a from dom(S) with ai 6= ajI and both ai , aj are constants.
42 / 60
![Page 119: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/119.jpg)
Chase
DefinitionA chase sequence for S under M is a sequence of chase steps
Siχi ,~ai; Si+1 such thatI S0 = S
I each χi is in M
I for each distinct i , j also (χi , ~ai ) 6= (χj , ~aj)
For a finite chase sequence the last instance is called its result.I If the result is fail , then the sequence is said to be a failing
sequenceI If no further dependency from M can be applied to a result,
then the sequence is called successful.
43 / 60
![Page 120: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/120.jpg)
Indeterminism in Chase Construction
I Indeterminism regarding choice of nulls (no problem)I Indeterminism regarding order of chosen tgds and egds
This may lead to different chase results
44 / 60
![Page 121: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/121.jpg)
Use of Chases in Data Exchange
I A chase sequence for S under aM is a chase sequence for(S, ∅) under Mστ ∪Mτ
I If (S,T) result of a finite sequence, call just T the result
I Chase is the right tool for finding solutions
Proposition
GivenM and source instance S.I If there is a successful chase sequence for S with result T,
then T is a solution.I If there is a failing chase sequence for S, then S has no
solution.
45 / 60
![Page 122: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/122.jpg)
Use of Chases in Data ExchangeI A chase sequence for S under aM is a chase sequence for
(S, ∅) under Mστ ∪Mτ
I If (S,T) result of a finite sequence, call just T the result
I Chase is the right tool for finding solutions
Proposition
GivenM and source instance S.I If there is a successful chase sequence for S with result T,
then T is a solution.I If there is a failing chase sequence for S, then S has no
solution.
I The proposition does no cover all cases: non-terminating chaseI In this case still there still may be a solution
45 / 60
![Page 123: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/123.jpg)
Weak Acyclicity
I In order to guarantee termination restrict target constraintsI Reason for non-termination: generation of new nulls with same
dependencies
Example (Cycle in Dependencies)
I χ1 = G (x , y)→ ∃z L(y , z)I χ2 = L(x , y)→ ∃z G (y , z)
Possible infinite generation
G (a, b)χ1; L(b,⊥1)
χ2; G (⊥1,⊥2)χ1; L(⊥2,⊥3) . . .
I Problem caused by cycle in dependencies
46 / 60
![Page 124: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/124.jpg)
Weak Acyclicity
I In order to guarantee termination restrict target constraintsI Reason for non-termination: generation of new nulls with same
dependencies
Example (Cycle in Dependencies)
I χ1 = G (x , y)→ ∃z L(y , z)I χ2 = L(x , y)→ ∃z G (y , z)
Possible infinite generation
G (a, b)χ1; L(b,⊥1)
χ2; G (⊥1,⊥2)χ1; L(⊥2,⊥3) . . .
I Problem caused by cycle in dependencies
46 / 60
![Page 125: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/125.jpg)
Simple Dependency GraphsI Nodes: pairs (R, i) of predicate R and argument-position iI Edges: From (Rb, i) to (Rh, j) iff there is a tgd∀~x∀~yφ(~x , ~y)→ ∃~zψ(~x , ~z) and1. Rh occurs in ψ and Rb occurs in φ and2. for all x ∈ ~x in i-position in Rb
I either x occurs in j-position in Rh
I or the variable in j-position in Rh is existentially quantified
Example (Simple Dependency Graph with Cycle)
I χ1 = G (y , x)→ ∃z L(x , z)
I χ2 = L(y , x)→ ∃z G (x , z)
(L,1)
(G,1)
(L,2)
(G,2)
Set of tgds called acyclic if simple dependency graph is acyclic.47 / 60
![Page 126: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/126.jpg)
Dependency Graphs (DG)I Nodes: pairs (R, i) of predicate R and argument-position iI Edges: From (Rb, i) to (Rh, j) iff there is a tgd∀~x∀~yφ(~x , ~y)→ ∃~zψ(~x , ~z) and1. Rh occurs in ψ and Rb occurs in φ and2. for all x ∈ ~x in i-position in Rb
I either x occurs in j-position in Rh
I or the variable in j-position in Rh is existentially quantifiedand these are labelled by *
Example (Not weakly acyclic Dependency Graph)
I χ1 = G (y , x)→ ∃z L(x , z)
I χ2 = L(y , x)→ ∃z G (x , z)
(L,1)
(G,1)
(L,2)
(G,2)
* *
TGDs weakly acyclic iff DG has no cycle with a * edge.48 / 60
![Page 127: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/127.jpg)
Termination for weakly acyclic tgds
TheoremLetM = (σ, τ,Mστ ,Mτ ) be a mapping where Mτ is the union ofegds and weakly acyclic tgds. Then the length of every chasesequence for a source S is polynomially bounded w.r.t. the size ofS.
I In particular: Every chase sequence terminatesI Moreover: SOLEXISTENCEM can be solved in polynomial
timeI a solution can be constructed in polynomial time
49 / 60
![Page 128: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/128.jpg)
“What is 3 Q plus 7 Q?”
. . . for you attention! ,
50 / 60
![Page 129: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/129.jpg)
“What is 3 Q plus 7 Q?”
. . . for you attention! ,
50 / 60
![Page 130: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/130.jpg)
Solutions to Exercise 4 (16 Points)
51 / 60
![Page 131: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/131.jpg)
Solution to Exercise 4.1 (6 Points)Use Hanf locality in order to proof that the following booleanqueries are not FOL-definable: 1. graph acyclicity, 2. tree.
SolutionGraph Acyclicity (GA).I For contradiction assume GA is Hanf-local with parameter r ′. Choose
r = 2r ′ + 2I Let G be the disjoint union of a circle of length r and a linear order of length rI Let G′ be an order of length 2r .I Take a bijection f : G→ G′ where
I the circle is unravelled to the middle of G′.I The lower half part of the order in G is mapped to the lower
part of G′
I The upper half part of the order in G is mapped to the upperpart of G′
I an r ′-neighbourhood of any a in G and f (a) ∈ G′ is the same: if a is from thecircle in G then the r ′-neighbourhood is a 2r’-line and the same for f (a). If a isan element from the line in G then in its r ′-neighbourhood it has to the left andto right the same number of elements as has f (a) in its r’-neigbourhood in G′.
I Hence G�r′ G′, but: G is cyclic and G is not. E
TreeI Same construction (as G′ is tree whereas G is not)
52 / 60
![Page 132: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/132.jpg)
Exercise 4.1
H. Kallwies 3/6
53 / 60
![Page 133: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/133.jpg)
Solution to Exercise 4.2 (4 Points)Show that EVEN(σ) can be defined within second-order logic forany σ.
Hint: formalize “There is a binary relation which is an equivalencerelation having only equivalence classes with exactly two elements”and argue why this shows the axiomatizability.
Solution
∃R ∀xR(x , x) ∧∀x∀yR(x , y)→ R(y , x) ∧∀x∀y∀z((R(x , y) ∧ R(y , z))→ R(x , z)) ∧∀x∃y(R(x , y) ∧ x 6= y ∧ ∀z(R(x , z)→ z = x ∨ z = y))
Note that R is a quantified variable (!). So we have shown thatEVEN[∅] can be defined.
54 / 60
![Page 134: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/134.jpg)
Solution to Exercise 4.3 (2 Points)
Argue why (in particular within the DB community) one imposessafety conditions for Datalog rules.
Solution
I Unsafe negation would lead to infinite answer sets (if domainis infinite.)
I Variables occurring only in head would lead to domaindependence. For example, for ans(x)← R(a) all bindings for xin the domain of a DB where R(a) is contained, would have tobe in the set of answers. So the answer would not depend onlyon R(a), i.e., only on the query, but also on the domain of thevariables one allows.
55 / 60
![Page 135: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/135.jpg)
Solution to Exercise 4.4 (4 points)
Give examples of general program rules for which1. No fixed point exists at all (Hint: “This sentence is not true”)2. Has two minimal fixed points (Hint: “The following sentence is
false. The previous sentence is true.”)Solution We consider propositional variables as 0-ary predicates. An extension of apropositional variable is then either the empty set ∅ which is interpreted as the truthvalue false, for short 0, or is the set consisting of the empty tuple {()} which isinterpreted as the truth value true, for short 1. Truthvalue assignments ν can beidentified by the set of propositional variables which are assigned the value 1. So, e.g.,ν(p) = 1, ν(q) is represented by {p}, whereas ν(p) = 1, ν(q) = 1 is represented by{p, q}. So minimality on models becomes minimality w.r.t. set inclusion.I No fixed point: p ← ¬pI Two minimal fixed points.
q ← ¬pp ← ¬q
Has minimal fixed points {p} and {q}.
56 / 60
![Page 136: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/136.jpg)
Exercise 5 (16 points)
![Page 137: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/137.jpg)
Exercise 5.1 (6 Points)
A tuple-generating dependency (tgd) is a FOL formula of the form
∀~x~y(φ(~x , ~y) −→ ∃~z ψ(~x , ~z))
where φ, ψ are conjunctions of atoms over τ .1. Foxy asserts that one can also use existentials in the body
(that is in the part before the −→) without addingexpressivity. Is he right? Argue for your answer!
2. Smarty asserts that one can safely assume that ψ is just anatom rather than a conjunction of atoms. Is he right? Arguefor your answer!
3. Dumby asserts similarly that one can safely assume that φ isjust an atom rather than a conjunction of atoms. Is he right?Argue for your answer!
58 / 60
![Page 138: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/138.jpg)
Exercise 5.2 (4 Points)
Prove the folklore proposition that conjunctive queries are preservedunder homomorphisms, i.e., show that if there is a homomorphismh from a DB instance T to a DB instance T′, then for any CQ φ(~x):
{h(~d) | ~d ∈ ans(φ(~x),T)} ⊆ ans(φ(~x),T′)
59 / 60
![Page 139: Özgür L. Özçep Data Exchange 1 - uni-luebeck.deoezcep/teaching/... · Özgür L. Özçep Data Exchange 1 Lecture5:Motivation,RelationalDE,Chase 15November,2017 FoundationsofOntologiesandDatabases](https://reader036.vdocument.in/reader036/viewer/2022070716/5eda8c045f8d0d7f302a4e30/html5/thumbnails/139.jpg)
Exercise 5.3 (6 Points)
1. Testing subsumption of CQs is in NP. What about thesubsumption of arbitrary FOLs?
2. Show that every CQ (under the usual set semantics) ismonotonic and satisfiable.
3. The semantics of CQs is given by the usual FOL set semantics.Inform yourself on the so-called multi-set semantics (aka: bagsemantics) for queries and answer the following questions:3.1 Why should one consider multi-set semantics—in particular if
one is interested in SQL queries?3.2 What does one know about the (complexity of the)
sumbsumption test for CQs under multi-set semantics?
60 / 60