dezvoltarea aplicațiilor web (10/12): specificarea ontologiilor via owl 2. logicile descrierii....

Post on 27-May-2015

167 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Dezvoltarea aplicațiilor Web (10/12) — detalii la http://profs.info.uaic.ro/~busaco/teach/courses/wade/web-film.html

TRANSCRIPT

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Dezvoltarea aplicațiilor Web

Ontologii în contextul WWWOWL 2

de la formalizare la realizarea raționamentelor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

“O hartă nu înseamnă teritoriul.”

Alfred Korzybski

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

realități

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

realități

Ontologiile au drept scopmodelarea unei (părți a unei) lumi

termenii limbajului de modelare folositcorespund entităților din cadrul lumii

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

În unele cazuri, modelarea unor domeniinecesită expresivități care nu sunt oferite

de limbajul OWL 1.0

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Extinderea OWL cu noi construcții care însăsă păstreze proprietățile din cadrul OWL DL

OWL 2

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Expresivitate ridicată

de exemplu:restricții de cardinalitate calificate,

restricții privind reflexivitatea,înlănțuirea proprietăților (property chains)

etc.

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL 2 oferă putere de expresivitate mai mare(Horrocks, 2009):

restricții de cardinalitate calificate

e.g., persoane care au 2 prieteni vegetarieni

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL 2 oferă putere de expresivitate mai mare(Horrocks, 2009):

restricții privind reflexivitatea locală

exemplu: “narcissists love themselves”

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL 2 oferă putere de expresivitate mai mare(Horrocks, 2009):

exprimarea de proprietăți anti-reflexive sau asimetrice

exemplificare: “nothing can be a proper part of itself” (proprietate anti-reflexivă)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL 2 oferă putere de expresivitate mai mare(Horrocks, 2009):

modelarea proprietăților disjuncte

e.g., o persoană nu poate fi simultan părinte și fiuai unei persoane date

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL 2 oferă putere de expresivitate mai mare(Horrocks, 2009):

posibilitatea de exprimare a cheilor (keys),în sensul bazelor de date

exemplu: locația geografică + numărul de înmatriculare semnifică identificatorul unic al unui autovehicul

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Exprimarea facilă a reuniunilor disjuncte(disjoint unions)

Element DisjointUnion Earth Wind Fire Water

syntactic sugar

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Exprimarea negațiilor

iPad is not a device owned by Ana33 is not the age of Dan

syntactic sugar

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Meta-modelare în OWL2

o resursă poate fi modelată simultan ca individ și clasă

SnowLeopard subClassOf BigCat – clasăSnowLeopard type EndangeredSpecies – individ

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Suport pentru adnotări

alături de proprietăți între obiecte (object property) și cele vizând datele (data property),

pot fi specificată o suită de proprietăți de adnotare (annotation property)

creator, date, versionInfo, priorVersion, backwardCompatibleWith, deprecated, incompatibleWith, seeAlso etc.

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Asocierea de profile

stabilirea construcțiilor OWL 2 ce corespundunei anumite complexități computaționale

în vederea efectuării raționamentelor automate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Profile OWL 2:

raționamente pentru ontologii largi: ELinterogări asupra unui volum mare de instanțe: QLraționamente în contextul sistemelor de reguli: RL

www.w3.org/TR/owl2-profiles/

de studiat M. Krötzsch, OWL 2 Profiles, Springer (2012)http://korrekt.org/page/OWL_2_Profiles

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL EL

oferă suport pentru efectuarea de raționamenteîn timp polinomial pentru ontologii cu număr mare

de clase și/sau proprietăți

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL EL

utilizare uzuală:ontologii din domeniul științelor vieții

care vizează mai ales scalabilitatea

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL EL

nu pot fi folosite:calificări universale – e.g., AllValuesFrom

restricții vizând cardinalitateadisjuncții la nivel de clase, proprietăți sau obiecte

enumerări ce implică mai mult de un individproprietăți obiectuale inverse, (a)simetrice, funcționale

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL QL

suport pentru efectuarea de interogări (optimizate)în stilul bazelor de date convenționale

se pretează pentru ontologiiavând un volum mare de fapte (indivizi)

logspace

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL QL

ofera expresivitatea necesară specificării de lexicoanesau de scheme de tip UML ori ER (entity-relation)

similar cu OWL Lite – versiunea 1

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL QL

se poate baza pe rescrierea interogărilorconform tehnicilor de raționament automat

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL QL

nu pot fi utilizate:calificări existențiale – e.g., SomeValuesFrom

calificări universale – e.g., AllValuesFromenumerări de indivizi/literali

restricții privind cardinalitateadisjuncția

proprietăți (invers) funcționale și tranzitiveaserțiuni privind egalitatea indivizilor (SameIndividual)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL RL

permite exprimarea regulilor în cadrul ontologiilor

poate fi implementat în cadrul sistemelor convenționalede baze de date relaționale

complexitatepolinomială

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL RL

soluție complementară la limbajele de specificare a regulilor la nivel de Web

RIF – Rule Interschange Format

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Specificarea regulilor pentru procesarea în Jena(exemplu realizat de Sergiu Bursuc, absolvent FII)

# reguli Jena privind descoperirea cunoștințelor despre un regizor

[(?movie cinema:directedBy ?director) ->

[(?director cinema:directsGenre ?genre) <-

(?movie cinema:hasGenre ?genre) ]

[(?director cinema:investigatesTheme ?theme) <-

(?movie cinema:hasTheme ?theme) ]

[(?director cinema:usesImagery ?imagery) <-

(?movie cinema:hasImagery ?imagery) ] ]

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Pentru detalii sintactice, a se consulta:

Sandro Hawke, OWL 2 Reference Card, W3C, 2009www.w3.org/2007/OWL/refcard

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Instrumente oferind suport pentru OWL 2

editare și medii de dezvoltare: Protégé, Fluent Editor, TopBraid Composer

procesare – implementare de referință: OWL API

sisteme de efectuare de raționamente (reasoners):FaCT++, HermiT, Pellet, Racer Pro etc.

interogare – OWL QL: Owlgres, OWLIM, QuOnto etc.

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

În ce manieră exprimăm – formal – înțelesul(meaning) construcțiilor modelate?

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

entailment

Date o mulțime de enunțuri RDF privitoarela un graf A și o mulțime de enunțuri referitoare

la un graf B, atunci A determină (entails) Bdacă fiecare enunț din B este adevărat și în A

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

entailment

Date o mulțime de enunțuri RDF privitoarela un graf A și o mulțime de enunțuri referitoare

la un graf B, atunci A determină (entails) Bdacă fiecare enunț din B este adevărat și în A

aceasta nu oferă obligatoriu seria pașilor deductivi care conduc de la A la B

(contrast cu procesul de inferență)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

entailment

OWL Full entailment

OWL DL entailment

OWL Lite entailment

RDFS entailment

RDF entailment

adaptare după (Hebeler et al., 2009)

util în realizarea interogărilor SPARQLla nivel de indivizi

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Înțelesul (meaning) e dat de asocierea unui formalism

un model teoretic oferă un mecanism de asocierede relații între sintaxă și interpretări

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Intelesul (meaning) e dat de asocierea unui formalism

un model teoretic oferă un mecanism de asocierede relații între sintaxă și interpretări

e.g., logica de ordin I (FOL – First Order Logic)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Pentru o construcție sintactică, pot exista mai multe sensuri (interpretări, modele)

dorim obiectivitate – e.g., eliminarea ambiguităților

termenul “toc” ≠ termenul “toc”

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Modelele se presupune că sunt analoageunei (părți a unei) lumi

elementele modelului corespund obiectelor lumii

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Trebuie specificată o relație formalăîntre sintaxă și modele

structura modelelor reflectă relațiile specificateîn cadrul sintaxei

utilizarea unei/unor logici

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Logici

limbaje formalizate menite a reprezenta cunoștințecu scopul de a putea fi deduse concluzii

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Logici

sintaxa exprimă propozițiile (sentences)în cadrul limbajului folosit

semantica definește înțelesul – formal – al propozițiilori.e., specifică adevărul (truth) unei propoziții

în cadrul lumii modelate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Exemplu: limbajul aritmeticx + 33 > y este o propoziție; x33 + y > nu e propoziție

x + 33 > y este adevărată (true) iffnumărul x + 33 nu e mai mic decât numărul y

x + 33 > y este true într-o lume în care x = 1 și y = 7

x + 33 > y este false într-o lume în care x = 1 și y = 69

x + 33 > x este true în orice lume – tautologie

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Logicile sunt caracterizatede ceea ce exprimă (commit) ca “primitive”

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Logicile sunt caracterizatede ceea ce exprimă (commit) ca “primitive”

declarații ontologice – exprimă ce anume există:fapte (facts), lucruri (things), timp (time), credințe (beliefs)

declarații epistemologice – exprimă care este stareacunoașterii acumulate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Limbaj (logic)

Declarații ontologice(ce anume există)

Declarații epistemologice (ce cunoaște o entitate/agent)

Logica prop. fapte (facts) true / false / unknown

Logica de ordin I (FOL)

fapte, obiecte, relații true / false / unknown

Logica temporală

fapte, obiecte, relații, timp

true / false / unknown

Teoria probab.

faptegrade de cunoaștere (belief)

0..1

Logica fuzzy grade de adevărgrade de cunoaștere (belief)

0..1

conform (Enrico Franconi, 2003)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Modele

lumi având o anumită structurăîn care adevărul poate fi evaluat (dedus)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Modele

lumi având o anumită structurăîn care adevărul poate fi evaluat (dedus)

m este model pentru o propoziție pdacă p este true în cadrul modelului m

M (p) reprezintă mulțimea tuturor modelelor lui p

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Baza de cunoștințe (KB – knowledge base)

mulțime de propoziții descrise într-un limbaj formalizat

teorie logică

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Baza de cunoștințe (KB – knowledge base)

conține cunoștințele privitoare la lumea modelatăcare pot fi manipulate via algoritmi deductivi

(incluși într-un motor de inferență – inference engine)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Baza de cunoștințe KB determină, implică, satisface(entails) propoziția p

– adică KB ⊨ p –dacă și numai dacă

p este true în toate lumile în care KB este true

dat fiind modelul M (p),KB ⊨ p dacă și numai dacă M (KB) ⊆ M (p)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Baza de cunoștințe KB deduce (infer)propoziția p folosind algoritmul i

– adică KB ⊦i p –dacă și numai dacă

p poate fi dedusă (derivată) din KBde către procedura (algoritmul) i

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Soundness

i este sounddacă având KB ⊦i p atunci e adevărat că KB ⊨ p

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitatea folosirii unei/unor logici

Completeness

i este completedacă KB ⊨ p implică faptul că KB ⊦i p

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Domeniul modelat – partea lumii modelate de ontologie – este interpretat ca o mulțime (set)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Obiectele (entitățile, things) lumiisunt interpretate ca fiind elemente ale lui

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Obiectele (entitățile, things) lumiisunt interpretate ca fiind elemente ale lui

clasele/conceptele (predicate unare)sunt submulțimi ale lui

proprietățile (predicate binare)sunt submulțimi ale lui = 2

predicatele ternare sunt submulțimi ale lui 3

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

De exemplu, relația subClassOf dintre clasepoate fi interpretată ca o incluziune de mulțimi

de revizitatteoria mulțimilor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

adaptare după (Sean Bechhofer, 2004)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Un vocabular este o mulțime de nume utilizateîn cadrul lumii modelate

{ Tux, Pinguin, Animal, Anamaria, Persoana,

Computer, detine,... }

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Un vocabular este o mulțime de nume utilizateîn cadrul lumii modelate

{ Tux, Pinguin, Animal, Anamaria, Persoana,

Computer, detine,... }

uzual, exprimat sintactic într-un format deschise.g., DCMI, FOAF etc.

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Înțelesul constrângerilor (Enrico Franconi, 2003):

relația de tip isA: AreaManager ⊆ Managerdisjuncția claselor: AreaManager ⋂ TopManager = ∅

Manager ⊆ AreaManager ⋃ TopManager

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Înțelesul relațiilor (Enrico Franconi, 2003):

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Înțelesul cardinalităților (Enrico Franconi, 2003):

mulțimea tuturorinstanțelor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

O interpretare I a vocabularului e un tuplu , ⋅I

domeniul este reprezentat de mulțimea

asocierea dintre sintaxă și semantică e dată de ⋅I

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

O interpretare I a vocabularului e un tuplu , ⋅I

numele obiectelor – asociate elementelor lui

numele predicatelor unare (clase/concepte) sunt asociate submulțimilor lui

numele predicatelor binare (proprietăți) sunt asociate submulțimilor

similar, pentru arități superioare – dacă există

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Ontologiile modelează în special clase

formează terminologiace trebuie să fie adevărat în legătură cu fiecare concept

din cadrul ontologiei

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Ontologiile modelează în special clase

formează terminologiace trebuie să fie adevărat în legătură cu fiecare concept

din cadrul ontologiei

formal, TBox – terminology box(schemă ontologică exprimată via RDFS și OWL)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Ontologiile oferă un mecanism limitat deexprimare a indivizilor – instanțe ale claselor

descrierea indivizilor se poate faceprin baze de date, fișiere JSON,

microdate HTML5, triple (RDF/RDFa) etc.

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Ontologiile oferă un mecanism limitat deexprimare a indivizilor – instanțe ale claselor

descrierea indivizilor se poate faceprin baze de date, fișiere JSON,

microdate HTML5, triple (RDF/RDFa) etc.

formal, ABox – datele, assertions

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Din punct de vedere computațional,raționamentele privitoare la indivizi

sunt intractabile în general

F. Baader et al., 2002

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare

Din punct de vedere computațional,raționamentele privitoare la indivizi

sunt intractabile în general

în ipoteza lumilor închise (closed worlds),negația reprezintă eșec – cazul bazelor de date

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare: description logics

Semantica formală e dată de logicile descrierii(description logics)

detalii în F. Baader, D. Calvanese, D. McGuinness, D. Nardi,P. Patel-Schneider (Editors), The Description Logic

Handbook: Theory, Implementation and Applications,Cambridge University Press, 2002

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare: description logics

Părți decidabile din logica de ordin IFOL – First Order Logic

constructori pentru definirea de clase și proprietăți(eventual, pe baza celor deja existente)

pot fi exprimate axiome specificând fapte despreconcepte (clase), roluri (proprietăți) și indivizi (instanțe)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare: description logics

Proprietăți dezirabile în contextul Web-ului(Ian Horrocks, 2009)

decidabilitate

complexitate scăzută

important!

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare: reasoning

Pun la dispoziție sisteme de inferență (reasoners)

proceduri sound & complete pentru luarea deciziilorprivind anumite probleme

pot fi deduse constrângeri suplimentaree.g., o entitate e sub-entitate a alteia, în cazul în care

cea de a doua reprezintă o submultime a primei entități

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

formalizare: reasoning

Implementări optimizate (pentru OWL 1 și/sau 2)FaCT++

HermiT (oferit implicit de mediul Protégé)PelletRacer

Snorocket (pentru OWL EL)TrOWL

www.cs.man.ac.uk/~sattler/reasoners.html

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Familie de formalisme logicefolosite pentru reprezentarea cunoștințelor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Cea mai simplă DL e ALC (închisă propozițional)

Attributive Language with Complements

AL specificată de (Schmidt-Schauß & Smolka, 1991)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Cea mai simplă DL e ALC (închisă propozițional)

concepte construite folosind booleeni ⊓, ⊔, plus cuantificatorii ,

rolurile (proprietățile) pot fi atomice

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Exemplu: “tații fericiți” (Ian Horrocks, 2004)

HappyFather Man ⊓ hasChild.Female ⊓ hasChild.Male ⊓ hasChild.(Rich ⊔ Happy)

un tată fericit este un bărbatcare are drept copii – bogați sau fericiți –

măcar o fată și un băiat

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Exemplu: specificarea unor concepte privindorganismul uman (Ian Horrocks, 2009)

Heart ⊆ MuscularOrgan ⊓

isPartOf.CirculatorySystem

HeartDisease Disease ⊓ affects.Heart

VascularDisease Disease ⊓ affects.( isPartOf.CirculatorySystem)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – extensii

S proprietățile sunt tranzitiveH ierarhia proprietăților – e.g., hasDaughter ⊑ hasChild

O nominali/singletons – e.g., { Tux }

I proprietăți inverse – e.g., isChildOf hasChild–

N restricții de cardinalitate – e.g., ≥2 hasChild, ≤3 hasChild

Q restricții de cardinalitate calificate – e.g., ≥2 hasChild.Male

F restricții de cardinalitate funcționale – e.g., ≤1 hasMother

specii DL

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – extensii

S proprietățile sunt tranzitiveH ierarhia proprietăților – e.g., hasDaughter ⊑ hasChild

O nominali/singletons – e.g., { Tux }

I proprietăți inverse – e.g., isChildOf hasChild–

N restricții de cardinalitate – e.g., ≥2 hasChild, ≤3 hasChild

Q restricții de cardinalitate calificate – e.g., ≥2 hasChild.Male

F restricții de cardinalitate funcționale – e.g., ≤1 hasMother

la nivel sintactic, pot fi exprimate prin OWL

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

vezi Evgeny Zolin – http://www.cs.man.ac.uk/~ezolin/dl/

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Baza de cunoștințe (KB) e compusă din2 mulțimi de axiome:

TBox descrie structura domeniului – schema conceptuală

ABox descrie o situație concretă – datele, instanțele

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Baza de cunoștințe (KB) e compusă din2 mulțimi de axiome:

TBox descrie structura domeniului – schema conceptualăSuperStud ⊑ WebDeveloper ⊓ Masterand ⊓ Eminent

HappyFather Man ⊓ hasChild.Female ⊓ …transitive (rudaCu)

ABox descrie o situație concretă – datele, instanțeleRadu: HappyFather

<Radu, Andreea>: hasChild

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Knowledge Base

TBox (schema)

ABox (data)

Man Human ⊓ Male

HappyFather Man ⊓hasChild.Female ⊓ …

Radu : HappyFather

<Radu, Andreea>: hasChild

Infe

ren

ce S

yst

em

Inte

rfa

ce

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Remarcă:această separație nu are neapărat

o semnificație logică, dar este convenabilăatât din punct de vedere conceptual,

cât și din cel al implementării

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Pentru OWL 1 – nivelul DL, modelul formal este specificat

de logica descrierii de tip SHIQ

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Pentru OWL 1 – nivelul DL, modelul formal este specificat

de logica descrierii de tip SHIQ

echivalentă cu SHOIN(Dn)

OWL DL ≈ SHIQ extinsă cu nominali – i.e., SHOIQ

OWL Lite ≈ SHIQ cu restricții funcționale – SHIF

a se vedea lucrările lui Ian Horrocks:http://www.cs.ox.ac.uk/people/ian.horrocks/

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

OWL Full OWL DL OWL Lite

se permite“orice”

definițiileRDFS

se pot mixacu celeOWL

nu se poate folosiowl:cardinality pentru

TransitiveProperty

o ontologie OWL DL nu poate importa una

OWL Full

nu se poate definio clasă ca membră

a alteiaFunctionalProperty si

InverseFunctionalPropertyse pot utiliza doar

pentru ObjectProperty

se mențin restricțiileOWL DL, plus:

owl:minCardinality șiowl:maxCardinality

nu se pot folosi

pentru owl:cardinality

valorile permise sunt 0 și 1

nu se pot utiliza: owl:hasValue,

owl:disjointWith, owl:oneOf, owl:complementOf și

owl:unionOf

OWL Full e ne-

decidabilă

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Pentru OWL, constructorii DL sunt:

se permite și folosirea tipurilor de date XML Schemaun exemplu: areAni.byte

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

În cazul OWL 2:

OWL EL la nivel formal se bazează pe logica EL++

restrânsă la exprimarea restricțiilor existențiale(Baader, Brandt & Lutz, 2005, 2008)

OWL RL se inspiră din DLP – Description Logic Programs (Grosof et al., 2003) și pD* (Horst, 2005)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

O ontologie OWL se poate asociaunei baze de cunoștințe DL notată K = <T, A>T TBox – mulțime de axiome de forma:

C ⊑ D incluziunea claselor (conceptelor)C D echivalența claselorP ⊑ Q incluziunea proprietăților (rolurilor)P Q echivalența proprietățilorP+ ⊑ P tranzitivitatea proprietăților

A ABox – mulțime de axiome de forma:x C instanțierea unui concept/clase<x, y> P instanțierea unui proprietăți

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Exemplu de TBox (Ian Horrocks)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Exemplu de ABox (Ian Horrocks)

o ontologie OWL e echivalentă cu o bază de cunoștințe DL TBox + ABox

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Axiomele TBox sunt de două tipuri:

“definiții”

C ⊑ D sau C D, unde C reprezintă un nume de concept

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Axiomele TBox sunt de două tipuri:

“definiții”

C ⊑ D sau C D, unde C reprezintă un nume de concept

axiome privitoare la incluziunea conceptelor generale(General Concept Inclusion – GCIs)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

O interpretare I satisface – modelează – o axiomă AI ⊨ A dacă:

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Definiții privind satisfiabilitatea:

I satisface mulțimea TBox T (adică I ⊨ T ) iff I satisface orice axiomă A din T

I satisface mulțimea ABox A (I ⊨ A) iff I satisface orice axiomă A din A

I satisface baza de cunoștințe K (I ⊨ K) iff I satisface și T și A

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Cunoștințele sunt semnificative (meaningful)

clasele pot avea instanțe:

conceptul C este satisfiabil în ceea ce privește K

iff există un anumit model I al lui K astfel încât CI ∅

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Cunoștințele sunt corecte – modelează intuițiile:

C subsumează D – adică C ⊑ D – în ceea ce privește K

iff pentru orice model I al lui K, CI ⊆ DI

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Cunoștințele sunt minimal redundante

– nu există sinonime nedorite:

C este echivalent cu D (C D) în ceea ce privește K

iff pentru orice model I al lui K, CI = DI

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Interogarea cunoștințelor:

x este o instanță a conceptului C în ceea ce privește K

iff pentru orice model I al lui K, xI CI

<x, y> este o instanță a rolului (proprietății) Pîn ceea ce privește K

iff pentru orice model I al lui K, (xI, yI ) PI

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Aspectele anterioare sunt reductibile la consistența bazei de cunoștințe

o bază de cunoștințe K este consistentăiff există un anumit model I al lui K

consistența bazei de cunoștințe este reductibilă laconsistența conceptelor (concept consistency)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Verificarea formală a consistenței e utilă pentru

proiectarea și mentenanța de ontologii

semnificative – toate clasele pot avea indivizicorecte – exprimă intuițiile experților domeniului

minimal redundante – nu există sinonime nedoriteaxiomatizate – există (suficiente) descrieri detaliate

conform Horrocks (2005)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Verificarea formală a consistenței e utilă pentru

oferirea de răspunsuri privind clasele/indivizii

găsirea claselor mai generale/particulareextragerea de indivizi conform unei interogări date

conform Horrocks (2005)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Pentru verificarea satisfiabilității (consistenței) se pot utiliza algoritmi de tip tablou

(tableaux algorithms)

Francesco M. Donini & Fabio Massacci, 2000Jan Hladik & Jörg Model, 2004

Ian Horrocks & Ulrike Sattler, 2005

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Dat fiind un concept C, se încearcă a se construi un model(exemplu concret) arborescent consistent cu axiomele

din baza de cunoștințe – faptele de bază din ABox

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Conceptul C este descompus la nivel sintactic

se folosesc conceptele complexe și axiomele din TBox

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Se aplică regulile de expandare a tabloului(tableau expansion rules)

se deduc constrângerile asupra elementelor modelului

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Regulile de tip tabloucorespund constructorilor din logică

de exemplu: ⊓, ⊔ etc.

unele reguli sunt nedeterministe – e.g., ⊔, ≤

în practică, aceasta înseamnă căutare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

Ne oprim când nu mai pot fi aplicate reguli oriapare un conflict (clash)

conflictul reprezintă o contradicție evidentă

de exemplu: A(x), ¬ A(x)

pentru terminare, poate fi necesarăverificarea ciclurilor (blocarea – blocking)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics

C este satisfiabil iffregulile pot fi aplicate astfel încât

este construit un arbore complet expandatfără conflicte

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu (Horrocks)

Fie baza de cunoștințe

{ HappyParent Person ⊓ hasChild.(Doctor ⊔ hasChild.Doctor),

John: HappyParent, John hasChild Mary,Mary: ¬ Doctor,

Wendy hasChild Mary,Wendy marriedTo John }

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu

fapte privitoarela indivizi

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu

expandare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu

expandare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu

conflict!

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplu

pentru a nu exista contradicții, înseamnă că Mary trebuie să aibă un copil doctor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Person ⊓ hasChild.(Doctor ⊔ hasChild.Doctor)

<owl:Class><owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:about="#Person"/><owl:Restriction>

<owl:onProperty rdf:resource="#hasChild"/><owl:toClass rdf:resource="#PersonWithChildDoctor"/>

</owl:Restriction></owl:intersectionOf></owl:Class>

<owl:Class rdf:ID="DoctorWithChildDoctor"><owl:unionOf rdf:parseType="Collection">

<owl:Class rdf:about="#Doctor"/><owl:Restriction>

<owl:onProperty rdf:resource="#hasChild"/><owl:hasClass rdf:resource="#Doctor" />

</owl:Restriction></owl:unionOf>

</owl:Class>de la formule exprimate via logicile descrierii

la sintaxa XML a limbajului OWL

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Person ⊓ hasChild.(Doctor ⊔ hasChild.Doctor)

<owl:Class><owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:about="#Person"/><owl:Restriction>

<owl:onProperty rdf:resource="#hasChild"/><owl:toClass rdf:resource="#PersonWithChildDoctor"/>

</owl:Restriction></owl:intersectionOf></owl:Class>

<owl:Class rdf:ID="DoctorWithChildDoctor"><owl:unionOf rdf:parseType="Collection">

<owl:Class rdf:about="#Doctor"/><owl:Restriction>

<owl:onProperty rdf:resource="#hasChild"/><owl:hasClass rdf:resource="#Doctor" />

</owl:Restriction></owl:unionOf>

</owl:Class>de la formule exprimate via logicile descrierii

la sintaxa XML a limbajului OWL

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplificare

Specificarea grafică a unei ontologii (Franconi, 2003):

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

description logics – exemplificare

“Rescrierea” ontologiei în termeni logici:

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Sistemele de reasoning bazate pe logicile descrieriioferă premisele realizării de inferențe

în mod automat

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 1 – hoțul și călătorul fără biletprimul fapt: amprentele găsite la locul unui jaf

au identificat ca posibil hoț pe Lödi Gogo

</raport-2013-12-10-pol4>

rdf:type :Jaf ;

dc:description "..." ;

:implicaSuspect [

rdfs:seeAlso <http://www.persoane.ro#LödiGogo>

] .

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 1 – hoțul și călătorul fără biletalt doilea fapt: în tramvai, a fost găsit un călător fără bilet,

numit Justin Bip – acesta a fost reținut

</raport-2013-12-10-pol4>

rdf:type :Amenda ;

dc:description "..." ;

:prejudiciu [

:comisDe :Cetatean ;

rdfs:seeAlso < http://www.persoane.ro#JustinBip>

] .

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 1 – hoțul și călătorul fără biletpoliția deține o aplicație Web ce recurge la

o bază de cunoștințe în care se stipulează următoarele:

:Jaf rdfs:subClassOf :Infractiune .

:Amenda rdfs:subClassOf :Infractiune .

:implicaSuspect a rdf:Property ;

rdfs:domain :Infractiune ; rdfs:range :Suspect .

:Suspect rdfs:subClassOf :Cetatean .

:Cetatean rdfs:subClassOf foaf:Person .

<http://www.persoane.ro#LödiGogo"> a foaf:Person ;

owl:sameAs <http://www.persoane.ro#JustinBip"> .

TBox

ABox

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 1 – hoțul și călătorul fără bilet

concluzie: se poate realiza inferența“Hoțul este călătorul prins fără bilet.”

pe baza logicilor descrierii, OWL oferă posibilitateade a exprima faptul că două resurse – e.g., clase,

proprietăți, instanțe – sunt identice

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 2 – achiziționarea unui aparat foto

Aplicație Web recomandândcumpărături

online

“Trimite-mi catalogulde produse”

<Nikon_D7000> a :DSLR ;

:sensor "16.2"^^xsd:float ;

:lens [ :min "18"^^units:mm ;

:max "55"^^units:mm ] ;

gr:hasPriceSpecification …

Can a take a photo with this?

“Iată catalogul...”(date RDF)

inspirat de (Costello et al., 2003)

1

2

3

situl Web al magazinului

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 2 – achiziționarea unui aparat foto

aplicația Web consultă o ontologie OWL privitoare la camere digitale de unde se poate determina că DSLR este

subclasă a clasei Camera asociată echipamentelor foto

:DSLR a owl:Class ;

rdfs:subClassOf :Camera .

:takes rdfs:domain :Camera ;

rdfs:range :Photo .

<Nikon_D7000> a :DSLR .

Camera

DSLR Point-and-Shot Analogue

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 2 – achiziționarea unui aparat foto

ontologiile exprimate în OWL pot conduce ladescoperirea dinamică a relațiilor dintre resurse

pe baza unui sistem de deducție (reasoning),via construcții RDFa recurgând la Good Relations,

pot fi extrase, comparate & recomandate ofertele disponibile pe diverse situri Web

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 3 – locul de naștere a regelui Kamehamehafapt: în urma extragerii de date de pe Web, s-a obținut

<individ rdf:about="http://www.persoane.ro#Kamehameha"><locNastere rdf:about="http://www.states.com/Hawaii" />

</individ><individ rdf:about="http://www.persoane.ro#Kamehameha">

<locNastere rdf:about="http://world.info/Sandwich_Islands" /></individ><individ rdf:about="http://www.persoane.ro#Kamehameha">

<locNastere rdf:about="http://history.org/Aloha" /></individ>

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe

Exemplul 3 – locul de naștere a regelui Kamehameha

ontologia privitoare la persoane indicăfaptul că un individ are un unic loc de naștere

se poate trage concluzia că Hawaii, Sandwich Islandsși Aloha reprezintă aceeași localitate

OWL oferă suport pentru precizarea cardinalității uneirelații dintre o resursă și o alta – în acest caz, exact una

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe: studiu de caz

Recurgerea la un reasoner– e.g., FaCT++ sau HermiT incluse în Protégé –pentru deducția diverselor aspecte privitoare

la un model conceptual

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Multimedia

Audio Video

Proprietar

anca eugenancuta

the_eye

zidul

detine

rdfs:subClassOf rdfs:subClassOf

rdf:type rdf:type

owl:sameAs rudaCu

detine

detinutDe

detinutDe

rdf:type

detinutDe

nivelul datelor (indivizi): ABox

nivelul conceptual (cunoștințe): TBox

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

deduceri automate pe baza faptelor exprimate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferențe: studiu de caz

Realizarea de raționamente automate– interogări (queries) DL –

cu ajutorul expresiilor de clasă (class expression)

specificate în sintaxa Manchester (2012)http://www.w3.org/TR/owl2-manchester-syntax/

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

deducerea faptelor referitoare la clasa Proprietar

(aici, supraclasele și indivizii aparținând clasei)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

obținerea claselor complementare cu una specificată

clasa entităților carenu aparțin clasei Femeie

Dr.

Sab

in B

ura

ga

www.purl.org/net/busacoentitățile care sunt rude cu măcar o femeie

deducțiipe baza relațiilor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

exprimareaintersecțiilor de clase

clasa entităților ce dețin măcar o resursă

multimedia și sunt femei

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de cazclasa entităților care dețin

măcar o resursămultimedia și sunt bărbați

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

exprimarea intervalului(range-ului) unei relații

clasa resurselormultimedia

deținute de o femeie

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

specificarea de valoriîn contextul relațiilor

clasa resurselormultimedia

deținute de Anca

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

expresii de clasămai complexe

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

exprimarea cardinalității

clasa entităților în relațiede rudenie cu un bărbat șicare dețin minim 1 video

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de caz

clasa entităților deținute de un individsau care aparțin unei clase date

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inferente: studiu de cazFluent Editor permite deducții

pentru ontologii modelate în limbaj natural

“No male is a female”: male ⊑ ¬(female)

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

concluzii

Implementările actuale bazate pe OWL DLbeneficiază de cercetările

din domeniul logicilor descrierilor

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

concluzii

Proprietăți formale înțelese în profunzime(complexitate, decidabilitate)

Algoritmi de raționament automat eficienți

Sisteme de deducție (reasoning)având implementări optimizate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

rezumat

OWL 2logicile descrierii + baze de cunoștințe

suportul pentru raționamente automate

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

❄❄

❄❄

❄❄

episodul viitor: vacanța de iarnă ☃

top related