ckr: a general framework for context in semantic web · outline 1 introduction: context in semantic...

64
CKR: a general framework for context in Semantic Web (Theory, prototype and extension to ASP) Loris Bozzato Francesco Corcoglioniti Luciano Serafini DKM - Data and Knowledge Management Research Unit, FBK - Fondazione Bruno Kessler - Trento, Italy Vrije Universiteit Amsterdam, February 28, 2013 Loris Bozzato (DKM - FBK-Irst) Vrije Universiteit Amsterdam, February 28, 20 / 40

Upload: others

Post on 09-Oct-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR: a general framework forcontext in Semantic Web

(Theory, prototype and extension to ASP)

Loris Bozzato Francesco Corcoglioniti Luciano Serafini

DKM - Data and Knowledge Management Research Unit,FBK - Fondazione Bruno Kessler - Trento, Italy

Vrije Universiteit Amsterdam,February 28, 2013

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 1

/ 40

Page 2: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 2

/ 40

Page 3: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 3

/ 40

Page 4: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Introduction and motivation

Need for context in Semantic WebMost of Semantic Web data holds in specific contextual space(time, location, topic...)

No explicit support for modelling and reasoningwith context sensitive knowledge in SW(Often handcrafted in implementation)

Ô Need for well-defined theory of contexts

Contextualized Knowledge Repository (CKR)DL based framework for representation and reasoning withcontextual knowledge in the Semantic WebContextual theory: based on formal AI theories of context[McCarthy, 1993, Lenat, 1998, Ghidini and Giunchiglia, 2001]

Other DL contextual frameworks:[Bao et al., 2010, Klarman and Gutiérrez-Basulto, 2011, Straccia et al., 2010].

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 4

/ 40

Page 5: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Introduction and motivation

Need for context in Semantic WebMost of Semantic Web data holds in specific contextual space(time, location, topic...)

No explicit support for modelling and reasoningwith context sensitive knowledge in SW(Often handcrafted in implementation)

Ô Need for well-defined theory of contexts

Contextualized Knowledge Repository (CKR)DL based framework for representation and reasoning withcontextual knowledge in the Semantic WebContextual theory: based on formal AI theories of context[McCarthy, 1993, Lenat, 1998, Ghidini and Giunchiglia, 2001]

Other DL contextual frameworks:[Bao et al., 2010, Klarman and Gutiérrez-Basulto, 2011, Straccia et al., 2010].

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 4

/ 40

Page 6: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Contextual modelling needs

A study on typical use of context in SW lead us to the definition ofa set of representation requirements:

RequirementsStatement contextualization: associate context to factsSymbols locality: local meaning for symbolsCross-context TBox statements: knowledge relations across contextsComplex contextualization: more than one contextual values to factsModularity: separation of knowledge in independent modulesUnified reasoning and query: inference and query use context structure. . .

Ô Definition of “contextual primitives” of CKR(e.g. cross-context statements Ô eval operator,

complex contextualization Ô c.classes and modules . . . )

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 5

/ 40

Page 7: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Contextual modelling needs

A study on typical use of context in SW lead us to the definition ofa set of representation requirements:

RequirementsStatement contextualization: associate context to factsSymbols locality: local meaning for symbolsCross-context TBox statements: knowledge relations across contextsComplex contextualization: more than one contextual values to factsModularity: separation of knowledge in independent modulesUnified reasoning and query: inference and query use context structure. . .

Ô Definition of “contextual primitives” of CKR(e.g. cross-context statements Ô eval operator,

complex contextualization Ô c.classes and modules . . . )

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 5

/ 40

Page 8: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 6

/ 40

Page 9: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR introduction

The structure of a CKR is composed by 2 layers:

Global contextMetaknowledge: structure of contexts, context classes, relations,modules and attributes(Global) object knowledge:object knowledge shared by all contexts

(Local) contextsObject knowledge with references:local object knowledge with references to value of predicates inother contextsKnowledge distributed across different modules

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 7

/ 40

Page 10: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

SROIQ-RL

Restriction of SROIQ to the syntax of OWL-RL axioms:Left-side concept C:

C := A | {a} |C1 u C2 |C1 t C2 | ∃R.C1 | ∃R.{a} | ∃R.>

Right-side concept D:

D := A |D1 uD2 | ¬C1 | ∀R.D1 | ∃R.{a} | 6 nR.C1 | 6 nR.>

with n ∈ {0, 1}Both-side concept E:

E := A |E1 u E2 | ∃R.{a}

TBox axioms: C v D, E ≡ EABox axioms: D(a), R(a, b)

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 8

/ 40

Page 11: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Metalanguage LΓ

Metavocabulary: Γ = NCΓ ]NRΓ ]NIΓ

N ⊆ NIΓ: context namesM ⊆ NIΓ: module namesC ⊆ NCΓ: context classes, including class CtxR ⊆ NRΓ: contextual relationsA ⊆ NRΓ: contextual attributesFor A ∈ A, a set DA ⊆ NIΓ of attribute values of A

Metalanguage LΓ: SROIQ-RL axioms over context expressions:

C := B | {c} |C1 uC2 |C1 tC2 | ∃R.C1 | ∃R.{c} | ∃R.> | ∃A.{dA} | ∃mod.{m}D := B |D1 uD2 | ¬C1 | ∀R.D1 | ∃R.{c} | ∃A.{dA} | ∃mod.{m} |

6 nR.C1 | 6 nR.>E := B |E1 u E2 | ∃R.{c} | ∃A.{dA} | ∃mod.{m}

Individual variable this: c ∈ N∪ {this}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 9

/ 40

Page 12: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Metalanguage LΓ

Metavocabulary: Γ = NCΓ ]NRΓ ]NIΓ

N ⊆ NIΓ: context namesM ⊆ NIΓ: module namesC ⊆ NCΓ: context classes, including class CtxR ⊆ NRΓ: contextual relationsA ⊆ NRΓ: contextual attributesFor A ∈ A, a set DA ⊆ NIΓ of attribute values of A

Metalanguage LΓ: SROIQ-RL axioms over context expressions:

C := B | {c} |C1 uC2 |C1 tC2 | ∃R.C1 | ∃R.{c} | ∃R.> | ∃A.{dA} | ∃mod.{m}D := B |D1 uD2 | ¬C1 | ∀R.D1 | ∃R.{c} | ∃A.{dA} | ∃mod.{m} |

6 nR.C1 | 6 nR.>E := B |E1 u E2 | ∃R.{c} | ∃A.{dA} | ∃mod.{m}

Individual variable this: c ∈ N∪ {this}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 9

/ 40

Page 13: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Metalanguage LΓ

Metavocabulary: Γ = NCΓ ]NRΓ ]NIΓ

N ⊆ NIΓ: context namesM ⊆ NIΓ: module namesC ⊆ NCΓ: context classes, including class CtxR ⊆ NRΓ: contextual relationsA ⊆ NRΓ: contextual attributesFor A ∈ A, a set DA ⊆ NIΓ of attribute values of A

Metalanguage LΓ: SROIQ-RL axioms over context expressions:

C := B | {c} |C1 uC2 |C1 tC2 | ∃R.C1 | ∃R.{c} | ∃R.> | ∃A.{dA} | ∃mod.{m}D := B |D1 uD2 | ¬C1 | ∀R.D1 | ∃R.{c} | ∃A.{dA} | ∃mod.{m} |

6 nR.C1 | 6 nR.>E := B |E1 u E2 | ∃R.{c} | ∃A.{dA} | ∃mod.{m}

Individual variable this: c ∈ N∪ {this}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 9

/ 40

Page 14: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Object language LΣ

Object vocabulary: any DL vocabulary Σ = NCΣ ]NRΣ ]NIΣ

Eval expressionGiven X an object expression in Σ and C a context expression in Γ

eval(X, C)

“The interpretation of X in all the contexts of type C”

Left-side only: “imports” meaning of X from all of the contexts in C

Object language LΣ: SROIQ-RL axioms over object expressions

Object language with references LeΣ: extension with eval expressions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 10

/ 40

Page 15: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Contextualized Knowledge Repository

Contextualized Knowledge Repository:

K = 〈G, {Km}m∈M〉

G is a KB over Γ ∪ Σ, containing metalanguage axioms in LΓ orglobal object axioms in LΣ

for every module name m ∈ M,Km is a KB over Σ, containing object axioms with references in Le

Σ

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 11

/ 40

Page 16: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: introduction

Tourism example:Idea: Tourism recommendation for events in TrentinoStructure of contexts represent events and tourists information

Ô Task: find interesting events on the base of tourists’ preferences

We model this domain in a CKR Ktour = 〈G, {Km}m∈M〉

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 12

/ 40

Page 17: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: CKR structure

Event

CulturalEvent SportEvent

VolleyMatch VolleyA1

Competition Concert

Tourist

SportiveTourist CulturalTourist

campionato_A1_2012-13 trento_cuneo_120922

volley_fan_01

trento_latina_130203 modena_trento_130112

G

hasParentEvent

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 13

/ 40

Page 18: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: CKR structure

Event

CulturalEvent SportEvent

VolleyMatch VolleyA1

Competition Concert

Tourist

SportiveTourist CulturalTourist

campionato_A1_2012-13 trento_cuneo_120922

volley_fan_01

trento_latina_130203 modena_trento_130112

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

hasParentEvent

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 13

/ 40

Page 19: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: CKR structure

Event

CulturalEvent SportEvent

VolleyMatch VolleyA1

Competition Concert

Tourist

SportiveTourist CulturalTourist

campionato_A1_2012-13 trento_cuneo_120922

volley_fan_01

trento_latina_130203 modena_trento_130112

G

Kevent

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Ksport_ev Kv_match Kmatch1 ... Ktourist01

hasParentEvent

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 13

/ 40

Page 20: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: some modules contents

In Kv_match: HomeTeam v Team HostTeam v TeamWinner v Team Loser v Team

In Kmatch2: HomeTeam(casa_modena_volley) HostTeam(itas_trentino_volley)Winner(casa_modena_volley) Loser(itas_trentino_volley)

...In Ksport_ev: “Winners of major volley matches are top teams”

eval(Winner, VolleyMatch u∃hasParentEvent.VolleyA1Competition) v TopTeam

In Ksp_tourist: “Top teams are preferred teams”

eval(TopTeam, SportEvent) v PreferredTeam

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 14

/ 40

Page 21: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: some modules contents

In Kv_match: HomeTeam v Team HostTeam v TeamWinner v Team Loser v Team

In Kmatch2: HomeTeam(casa_modena_volley) HostTeam(itas_trentino_volley)Winner(casa_modena_volley) Loser(itas_trentino_volley)

...In Ksport_ev: “Winners of major volley matches are top teams”

eval(Winner, VolleyMatch u∃hasParentEvent.VolleyA1Competition) v TopTeam

In Ksp_tourist: “Top teams are preferred teams”

eval(TopTeam, SportEvent) v PreferredTeam

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 14

/ 40

Page 22: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR semantics

CKR Model: given K = 〈G, {Km}m∈M〉, a CKR model is a structure:

I = 〈M, I〉

1. Global interpretation: M = 〈∆M, ·M〉 a DL interpretation over Γ∪ ΣM respects interpretation of metalanguage elements(e.g. NM ⊆ CtxM and CM ⊆ CtxM)

For every α ∈ G,M |= α

Given c ∈ CtxM, let:

K(c) =⋃{Km | (c, mM) ∈ modM}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 15

/ 40

Page 23: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR semantics

CKR Model: given K = 〈G, {Km}m∈M〉, a CKR model is a structure:

I = 〈M, I〉

2. Local interpretations: I(c) = 〈∆c, ·I(c)〉, for c ∈ CtxM, is a DLinterpretation over ΣI(c), [this/c] |= α, for every α axiom of K(c).

3. Propagation of global knowledge:∆c ⊆ ∆M;for every a ∈ NIΣ, aI(c) = aM.for α ∈ G with α ∈ LΣ, I(c) |= α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 16

/ 40

Page 24: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR semantics

CKR Model: given K = 〈G, {Km}m∈M〉, a CKR model is a structure:

I = 〈M, I〉

4. Interpretation of eval expressions: given c ∈ CtxM andX a concept or role expressionC a context expression

eval(X, C)I(c),[this/c] =⋃

e∈CM,[this/c]

XI(e)

“The union of elements of X in the contexts in C”

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 17

/ 40

Page 25: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

c-entailment

Definition (c-entailment)Given K over 〈Γ, Σ〉 with c ∈ N and an axiom α ∈ Le

Σ,α is c-entailed by K (K |= c : α)if for every model I = 〈M, I〉 of K, we have I(cM), [this/cM] |= α.

Definition (global entailment)Given K over 〈Γ, Σ〉 and an axiom α,α is (globally) entailed by K (K |= α) if:

α ∈ LeΣ and for every c ∈ N and

model I = 〈M, I〉 of K, I(cM), [this/cM] |= α.α ∈ LΓ and for every model I = 〈M, I〉 of K,M |= α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 18

/ 40

Page 26: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

c-entailment

Definition (c-entailment)Given K over 〈Γ, Σ〉 with c ∈ N and an axiom α ∈ Le

Σ,α is c-entailed by K (K |= c : α)if for every model I = 〈M, I〉 of K, we have I(cM), [this/cM] |= α.

Definition (global entailment)Given K over 〈Γ, Σ〉 and an axiom α,α is (globally) entailed by K (K |= α) if:

α ∈ LeΣ and for every c ∈ N and

model I = 〈M, I〉 of K, I(cM), [this/cM] |= α.α ∈ LΓ and for every model I = 〈M, I〉 of K,M |= α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 18

/ 40

Page 27: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 28: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

VolleyMatch u∃hasParentEvent.VolleyA1Competition = TopMatch

eval(Winner, TopMatch) v TopTeam ∈ Ksport_ev

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 29: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

VolleyMatch u∃hasParentEvent.VolleyA1Competition = TopMatch

eval(Winner, TopMatch) v TopTeam ∈ Ksport_ev

eval(Winner, TopMatch)I(matchN)⊆TopTeamI(matchN)

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 30: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

VolleyMatch u∃hasParentEvent.VolleyA1Competition = TopMatch

eval(Winner, TopMatch) v TopTeam ∈ Ksport_ev

⋃e∈TopMatchM

WinnerI(e) ⊆ TopTeamI(matchN)

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 31: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

VolleyMatch u∃hasParentEvent.VolleyA1Competition = TopMatch

eval(Winner, TopMatch) v TopTeam ∈ Ksport_ev

⋃e∈{match_2, match_3}

WinnerI(e) ⊆ TopTeamI(matchN)

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 32: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For each match matchN, its KB is:K(matchNM)=Kevent ∪Ksport_ev ∪Kv_match ∪KmatchN

VolleyMatch u∃hasParentEvent.VolleyA1Competition = TopMatch

eval(Winner, TopMatch) v TopTeam ∈ Ksport_ev

{itas_trentino, casa_modena} ⊆ TopTeamI(matchN)

Event

SportEvent

VolleyMatchVolleyA1

Competition

A1_2012-13

match1 match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 19

/ 40

Page 33: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 34: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

eval(TopTeam, SportEvent)vPreferredTeam∈Ksp_tourist

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 35: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

eval(TopTeam, SportEvent)vPreferredTeam∈Ksp_tourist

eval(TopTeam, SportEvent)I(volley_fan)

⊆ PreferredTeamI(volley_fan)

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 36: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

eval(TopTeam, SportEvent)vPreferredTeam∈Ksp_tourist ⋃

e∈SportEventMTopTeamI(e)

⊆ PreferredTeamI(volley_fan)

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 37: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

eval(TopTeam, SportEvent)vPreferredTeam∈Ksp_tourist ⋃

e∈{match_1, match_2, match_3}TopTeamI(e)

⊆ PreferredTeamI(volley_fan)

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 38: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: semantics

Suppose we have I = 〈M, I〉 s.t. I |= Ktour.

For the context of volley_fan:K(volley_fanM) = Ktourist ∪Ksp_tourist ∪Ktourist01

eval(TopTeam, SportEvent)vPreferredTeam∈Ksp_tourist

{itas_trentino, casa_modena}

⊆ PreferredTeamI(volley_fan)

Event

SportEvent

VolleyMatch

Tourist

SportiveTourist

match1

volley_fan_01

match3

match2

G

m_sport_ev

m_event

m_v_match

m_match1 m_match2 m_match3

m_tourist

m_sp_tourist

m_tourist01

Kmatch1 Winner(bre_banca_cuneo_volley) ...

Kmatch2 Winner(casa_modena_volley) ...

Kmatch3 Winner(itas_trentino_volley) ...

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 20

/ 40

Page 39: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 21

/ 40

Page 40: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Materialization calculus Kic

Materialization calculus Kic:Calculus for instance checking in SROIQ-RL CKRExtension to the CKR structure of materialization calculus forSROEL of [Krötzsch, 2010]

Formalizes the operation of forward closure in implementation

IdeaComposed by 3 sets of rules:

Input rules I: translation of DL axioms to Datalog atomsDeduction rules P: forward inference rulesOutput rules O: translation for DL proved axiom

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 22

/ 40

Page 41: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Normal form

Current version of Kic works on:restriction of SROIQ-RL to SROEL constructsclosed CKRs (no this)

Normal form for axiomsLΓ,LΣ : A(a) R(a, b) A v B {a} v B

Au B v C ∃R.A v B R v T R ◦ S v T

LΓ : C v ∃mod.{m} C v ∃A.{dA}{a} v ∃mod.{m} {a} v ∃A.{dA}

LeΣ : eval(A, C) v B eval(R, C) v T

Normal form propertyFor every closed K, a K′ can be computed such that K′ is in normalform and, for all α using symbols from K, it holds K |= α iff K′ |= α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 23

/ 40

Page 42: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Normal form

Current version of Kic works on:restriction of SROIQ-RL to SROEL constructsclosed CKRs (no this)

Normal form for axiomsLΓ,LΣ : A(a) R(a, b) A v B {a} v B

Au B v C ∃R.A v B R v T R ◦ S v T

LΓ : C v ∃mod.{m} C v ∃A.{dA}{a} v ∃mod.{m} {a} v ∃A.{dA}

LeΣ : eval(A, C) v B eval(R, C) v T

Normal form propertyFor every closed K, a K′ can be computed such that K′ is in normalform and, for all α using symbols from K, it holds K |= α iff K′ |= α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 23

/ 40

Page 43: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Calculus definition

Basic definitionsGiven the set of constants C, variables V and predicates PTerm: t ∈ C∪VGround substitution: σ : V→ CDatalog atom: p(t1, . . . , tn) p ∈ P, ti terms

Datalog rule: B1, . . . , Bm → H Bi, H atoms

Fact: → H H ground atomProgram: P P finite set of rules

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 24

/ 40

Page 44: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Calculus definition

Proof treeA proof tree for P is a structure 〈N, E, λ〉:〈N, E〉 is a finite directed treeλ is a labelling functionfor each node v ∈ N,there exists a rule B1, . . . , Bm → H ∈ Pand a ground substitution σ s.t.

λ(v) = σ(H);λ(wi) = σ(Bi), with wi child of v.

Consequence: P |= H if there is a proof tree with root r and λ(r) = H

Closure: Clos(P) = {H |H ground and P |= H}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 25

/ 40

Page 45: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Calculus definition

Materialization calculus Kic is composed by:input translations: Iglob, Iloc, Iel,deduction rules: Pglob, Ploc, Pel,output translation: O

I and O are partial functionsP are sets of datalog rulesgiven α axiom or symbol, c ∈ N,I(α, c) is undefined or a set of datalog factsgiven α axiom, c ∈ N,O(α, c) is undefined or a single datalog factall constant symbols in I(α, c) or O(α, c) are signature symbolsappearing in or equal to α

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 26

/ 40

Page 46: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Translation and deduction rules

EL translation rules Iel(S, c)C(a) 7→ {inst(a, C, c)} R(a, b) 7→ {triple(a, R, b, c)}

{a} v C 7→ {inst(a, C, c)} A v C 7→ {subClass(A, C, c)}Au B v C 7→ {subConj(A, B, C, c)} ∃R.A v C 7→ {subEx(R, A, C, c)}

R v T 7→ {subRole(R, T, c)} R◦S v T 7→ {subRChain(R, S, T, c)}

EL deduction rules Pel

subClass(y, z, c),inst(x, y, c) → inst(x, z, c)subConj(y1, y2, z, c),inst(x, y1, c),inst(x, y2, c) → inst(x, z, c)subEx(v, y, z, c),triple(x, v, x′, c),inst(x′, y, c) → inst(x, z, c)

subRole(v, w, c),triple(x, v, x′, c) → triple(x, w, x′, c)subRChain(u, v, w, c),triple(x, u, y, c),triple(y, v, z, c) → triple(x, w, z, c)

Output translation O(α, c)C(a) 7→ {inst(a, C, c)} R(a, b) 7→ {triple(a, R, b, c)}

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 27

/ 40

Page 47: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Translation and deduction rules

Global rules Iglob(G) and Pglob

C v ∃mod.{m} 7→ {hasMod(C, m, gm)} C ∈ C 7→ {subClass(C, Ctx, gm)}C v ∃A.{d} 7→ {hasAtt(C, A, d, gm)} c ∈ N 7→ {inst(c, Ctx, gm)}

{c} v ∃mod.{m} 7→ {triple(c, mod, m, gm)}{c} v ∃A.{d} 7→ {triple(c, A, d, gm)}

hasMod(c, m, gm),inst(x, c, gm)→ triple(x, mod, m, gm)hasAtt(c, a, d, gm),inst(x, c, gm)→ triple(x, a, d, gm)

Local rules Iloc(S, c) and Ploc

eval(A, C) v B 7→ {subEval(A, C, B, c)}eval(R, C) v T 7→ {subEvalR(R, C, T, c)}

subEval(a, c1, b, c),inst(c′, c1, gm),inst(x, a, c′)→ inst(x, b, c)subEvalR(r, c1, t, c),inst(c′, c1, gm),triple(x, r, y, c′)→ triple(x, t, y, c)

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 28

/ 40

Page 48: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Deduction algorithm

Global program PG: PG(G) = Iglob(G) ∪ Pglob

NG = {c ∈ C | inst(c, Ctx, gm) ∈ Clos(PG(G))}Kc =

⋃{Km | triple(c, mod, m, gm) ∈ Clos(PG(G))}

Local program PC: PC(c) = Ploc ∪ Iloc(Kc, c) ∪ Iel(GΣ, c)

CKR program PK: PK(K) = PG(G) ∪⋃c∈NG

PC(c)

Given α ∈ LeΣ and a context c ∈ N,

K ` c : α when PK(K) and O(α, c) defined and PK(K) |= O(α, c)

Basic algorithmCompute closure of GFor every c ∈ NG, compute its associated KcCompute closure of the set of Kc

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 29

/ 40

Page 49: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Deduction algorithm

Global program PG: PG(G) = Iglob(G) ∪ Pglob

NG = {c ∈ C | inst(c, Ctx, gm) ∈ Clos(PG(G))}Kc =

⋃{Km | triple(c, mod, m, gm) ∈ Clos(PG(G))}

Local program PC: PC(c) = Ploc ∪ Iloc(Kc, c) ∪ Iel(GΣ, c)

CKR program PK: PK(K) = PG(G) ∪⋃c∈NG

PC(c)

Given α ∈ LeΣ and a context c ∈ N,

K ` c : α when PK(K) and O(α, c) defined and PK(K) |= O(α, c)

Basic algorithmCompute closure of GFor every c ∈ NG, compute its associated KcCompute closure of the set of Kc

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 29

/ 40

Page 50: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Deduction algorithm

Global program PG: PG(G) = Iglob(G) ∪ Pglob

NG = {c ∈ C | inst(c, Ctx, gm) ∈ Clos(PG(G))}Kc =

⋃{Km | triple(c, mod, m, gm) ∈ Clos(PG(G))}

Local program PC: PC(c) = Ploc ∪ Iloc(Kc, c) ∪ Iel(GΣ, c)

CKR program PK: PK(K) = PG(G) ∪⋃c∈NG

PC(c)

Given α ∈ LeΣ and a context c ∈ N,

K ` c : α when PK(K) and O(α, c) defined and PK(K) |= O(α, c)

Basic algorithmCompute closure of GFor every c ∈ NG, compute its associated KcCompute closure of the set of Kc

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 29

/ 40

Page 51: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Deduction algorithm

Global program PG: PG(G) = Iglob(G) ∪ Pglob

NG = {c ∈ C | inst(c, Ctx, gm) ∈ Clos(PG(G))}Kc =

⋃{Km | triple(c, mod, m, gm) ∈ Clos(PG(G))}

Local program PC: PC(c) = Ploc ∪ Iloc(Kc, c) ∪ Iel(GΣ, c)

CKR program PK: PK(K) = PG(G) ∪⋃c∈NG

PC(c)

Given α ∈ LeΣ and a context c ∈ N,

K ` c : α when PK(K) and O(α, c) defined and PK(K) |= O(α, c)

Basic algorithmCompute closure of GFor every c ∈ NG, compute its associated KcCompute closure of the set of Kc

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 29

/ 40

Page 52: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Soundness and completeness

Theorem (Soundness)Given K = 〈G, {Km}m∈M〉 a closed CKR in normal form, and an atomicassertion α ∈ LΣ, c ∈ N, K ` c : α implies K |= c : α.

Theorem (Completeness)Given K = 〈G, {Km}m∈M〉 a closed CKR in normal form, and an atomicassertion α ∈ LΣ, c ∈ N, K |= c : α implies K ` c : α.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 30

/ 40

Page 53: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 31

/ 40

Page 54: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR Prototype: introduction

The prototype extends the Sesame Javaframework with three modules:

CKR core – CKR implementation ontop of a Sesame RDF store

knowledge addition/removalclosure materializationSPARQL 1.1 queriestransactions

CKR server – extension of SesameServer & Workbench

exposes CKR primitivesincludes a SPARQL endpointincludes an admin UI

CKR client – library to access aCKR from a remote Java application

CKR client

CKR core

RDF store

(Sesame native, memory, OWLIM, Bigdata)

Client application

Client JVM

Server JVM

SPARQL client

CKR server

persistent storage

may embed in Java apps.

CKR API

SAIL API

CKR API

Sesame HTTP API

SPARQL endpoint

Admin interface

Web browser

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 32

/ 40

Page 55: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

SPRINGLES

CKR Core is implemented on top of SPRINGLES: SParql-based RuleInference over Named Graphs Layer Extending Sesame

SPRINGLES

RDF store

CKR implementation

SAIL API

SAIL API

CKR API

CKR rules

CKR Core

add triple to context

add triple to graph

add triple; eval. rules and add inferences

SPRINGLES features:transparent/on-demand closurematerialization based on rulesrules encoded as SPARQL queriesaddressing Named Graphs (NG)customizable rule evaluation strategy

Why SPRINGLES:no inference over NGs in RDF stores

Why SPARQL:exploits optimized query enginescan scale to large KBs (cf. RETE)

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 33

/ 40

Page 56: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR calculus in SPRINGLES: rule example

:pel-c-subc a spr:Rule ;spr:head """ GRAPH ?mx { ?x rdf:type ?z } """ ;spr:body """ GRAPH ?m1 { ?y rdfs:subClassOf ?z }

GRAPH ?m2 { ?x rdf:type ?y }GRAPH sys:dep { ?mx sys:derivedFrom ?m1,?m2 }FILTER NOT EXISTS {

GRAPH ?m0 { ?x rdf:type ?z }GRAPH sys:dep { ?mx sys:derivedFrom ?m0 }

} """ .

?y rdfs:subClassOf ?z ?x rdf:type ?y

Context C

. . .

ckr:hasModule ckr:hasModule

Module ?m1 Module ?m2

triples in ckr:global

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 34

/ 40

Page 57: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR calculus in SPRINGLES: rule example

:pel-c-subc a spr:Rule ;spr:head """ GRAPH ?mx { ?x rdf:type ?z } """ ;spr:body """ GRAPH ?m1 { ?y rdfs:subClassOf ?z }

GRAPH ?m2 { ?x rdf:type ?y }GRAPH sys:dep { ?mx sys:derivedFrom ?m1,?m2 }FILTER NOT EXISTS {

GRAPH ?m0 { ?x rdf:type ?z }GRAPH sys:dep { ?mx sys:derivedFrom ?m0 }

} """ .

?y rdfs:subClassOf ?z ?x rdf:type ?y

Context C

. . .

sys:closureOf

ckr:hasModule ckr:hasModule ckr:hasModule

sys:derivedFrom

sys:derivedFrom

Module ?m1 Module ?m2 Module ?mx

triples in ckr:global

triples in sys:dep

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 34

/ 40

Page 58: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR calculus in SPRINGLES: rule example

:pel-c-subc a spr:Rule ;spr:head """ GRAPH ?mx { ?x rdf:type ?z } """ ;spr:body """ GRAPH ?m1 { ?y rdfs:subClassOf ?z }

GRAPH ?m2 { ?x rdf:type ?y }GRAPH sys:dep { ?mx sys:derivedFrom ?m1,?m2 }FILTER NOT EXISTS {

GRAPH ?m0 { ?x rdf:type ?z }GRAPH sys:dep { ?mx sys:derivedFrom ?m0 }

} """ .

?y rdfs:subClassOf ?z ?x rdf:type ?y ?x rdf:type ?z

Context C

. . .

sys:closureOf

ckr:hasModule ckr:hasModule ckr:hasModule

sys:derivedFrom

sys:derivedFrom

Module ?m1 Module ?m2 Module ?mx

triples in ckr:global

triples in sys:dep

inference

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 34

/ 40

Page 59: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

CKR calculus in SPRINGLES: evaluation strategy

Composition of SPRINGLES primitives: parallel rule evaluation,sequence, fixpoint, repeat (not used by CKR)

:closure-strategyspr:sequenceOf ( :task_add_axioms :task_global_closure

:task_link_modules :task_ctx_closure ) .:task_add_axioms

spr:evalOf (:dep-glob :prp-ap :cls-thing :cls-nothing :dt-type ) .

:task_global_closurespr:bind "?g_inf = ckr:global-inf" ;spr:fixPointOf [ spr:evalOf (:pel-c-subc ... :pel-r-subrc :pgl-c-addmod:pgl-i-addmod :pgl-c-submodc :pgl-c-subattc ) ] .

:task_link_modulesspr:evalOf ( :dep-local-i :dep-local-c ) .

:task_ctx_closurespr:fixPointOf [ spr:evalOf (:pel-c-subc ... :pel-r-subrc:plc-c-subevalat :plc-c-subexeval ) ] .

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 35

/ 40

Page 60: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Tourism example: inference and query demo

http://stettler.fbk.eu:50000/admin

Francesco Corcoglioniti (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 36

/ 40

Page 61: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Outline

1 Introduction: context in Semantic Web and Linked Open Data

2 Contextualized Knowledge Repository (CKR)

3 Materialization calculus for CKR

4 CKR Prototype implementation

5 Current directions

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 37

/ 40

Page 62: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Current directions and future works

Directions for formalization and calculus:Extension of calculus to full SROIQ-RL(add equality assertions and introduction of inconsistency)Local evaluation of metaknowledge and thisFeatures of context relations e.g. Mono(R)(represent coverage, previous/successor states in time etc.)Extended algorithm:Compute closure for modules associated to context classes,without replications in contexts

Directions for CKR implementation:CKR layer: accessing by contextual primitivesDefinition of SPARQL extension with context primitivesEvaluation: definition of test knowledge baseExtensions to SPRINGLES:plan language, combination of backward/forward reasoning

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 38

/ 40

Page 63: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

Thank you for listening

CKR: a general framework for context in Semantic Web(Theory, prototype and extension to ASP)

Loris Bozzato, Francesco Corcoglioniti, Luciano Serafini

https://dkm.fbk.eu/

DKM - Data and Knowledge Management Research Unit,FBK-Irst, Fondazione Bruno Kessler - Trento, Italy

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 39

/ 40

Page 64: CKR: a general framework for context in Semantic Web · Outline 1 Introduction: context in Semantic Web and Linked Open Data 2 Contextualized Knowledge Repository (CKR) 3 Materialization

References I

Bao, J., Tao, J., and McGuinness, D. L. (2010).Context representation for the semantic web.In WebSci10.

Ghidini, C. and Giunchiglia, F. (2001).Local models semantics, or contextual reasoning = locality + compatibility.Art. Int., 127:221–259.

Klarman, S. and Gutiérrez-Basulto, V. (2011).Two-dimensional description logics for context-based semantic interoperability.In AAAI-11. AAAI Press.

Krötzsch, M. (2010).Efficient inferencing for owl el.In JELIA 2010, volume 6341 of Lecture Notes in Computer Science, pages 234–246. Springer.

Lenat, D. (1998).The Dimensions of Context Space.Technical report, CYCorp.

McCarthy, J. (1993).Notes on formalizing context.In IJCAI.

Straccia, U., Lopes, N., Lukacsy, G., and Polleres, A. (2010).A general framework for representing and reasoning with annotated Semantic Web data.In AAAI-10. AAAI Press.

Loris Bozzato (DKM - FBK-Irst)Vrije Universiteit Amsterdam, February 28, 2013 40

/ 40