universitÀ degli studi di modena e reggio emilia facoltà di ingegneria – sede di modena corso di...

19
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic Query Processing by Semantic Reformulation Reformulation _________________________ _________________________ Elaborazione di Elaborazione di Interrogazioni Interrogazioni tramite l’uso di tramite l’uso di Corrispondenze Semantiche Corrispondenze Semantiche Relatore Tesi di Laurea di Prof.ssa Sonia Bergamaschi Raffaele Capezzera Correlatore Ing. Maurizio Vincini Anno Accademico 2002 - 2003

Upload: bernardo-guarino

Post on 01-May-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

UNIVERSITÀ DEGLI STUDIDI MODENA E REGGIO EMILIA

Facoltà di Ingegneria – Sede di ModenaCorso di Laurea in Ingegneria Informatica

Query Processing by Semantic Query Processing by Semantic ReformulationReformulation

__________________________________________________

Elaborazione di Interrogazioni Elaborazione di Interrogazioni tramite l’uso di tramite l’uso di

Corrispondenze Semantiche Corrispondenze Semantiche

Relatore Tesi di Laurea diProf.ssa Sonia Bergamaschi Raffaele Capezzera

Correlatore Ing. Maurizio Vincini

Anno Accademico 2002 - 2003

Page 2: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

2

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

SommarioSommario

Ambito di ricerca

SEWASIE Brokering Agent

DAML-S Broker

Elaborazione di interrogazioni

Riformulazione

Implementazione

Conclusioni e ricerca futura

Page 3: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

3

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

vs Annuncio delle capacità di Annuncio delle capacità di servizioservizio

Preferenze richieste Preferenze richieste vs Capacità pubblicizzate Capacità pubblicizzate

Intermediazione di serviziIntermediazione di servizi

MatchmakerMatchmaker Conosce le capacitàcapacità dei fornitori ma non le preferenzepreferenze dei richiedenti Non si interpone nello scambio del servizioservizio

BrokerBroker Conosce sia le capacità capacità dei fornitori che le preferenzepreferenze dei richiedenti Si interpone nello scambio del servizioservizio

Intermediario

Richiedente 1

Richiedente 2

Richiedente 3

Fornitore 1

Fornitore 2

Fornitore 3

Richiesta di Richiesta di servizioservizio

InterrogazionInterrogazionee

Page 4: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

4

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Ambito di ricercaAmbito di ricerca

Come può un broker determinare se una interrogazione verrà soddisfatta da una sorgente di dati che si sia in precedenza

esposta?

Sistemi di integrazione intelligente di informazioni Web semantico Agenti Logiche descrittive Rappresentazione di ontologie

Analisi e sviluppo delle funzionalità comuni

SEWASIE Brokering Agent SEWASIE Brokering Agent (BA)(BA)

DAML-S Broker DAML-S Broker (DSB)(DSB)

Page 5: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

5

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

SEWASIE Brokering AgentSEWASIE Brokering Agent

Funzionalità richieste Protocollo di comunicazione Protocollo di comunicazione per l’interazione con Query Agent ed SINode Accoppiamento semanticoAccoppiamento semantico dei termini di un interrogazione rispetto all’ontologia di riferimento per individuare l’SINode più adeguato a rispondere

Specifiche Ontologia di riferimento comune in ODLODLI3I3 Interrogazioni in OQLOQLI3I3

Brokering Agent

Query Agent 1

Query Agent 2

Query Agent 3

Ontologia di riferimento

SINodeVirtual Data Store

SEWASIESEWASIE (SEmantic Webs and AgentS in Integrated Economies, www.sewasie.org) è un motore di ricerca avanzato per l’accesso intelligente tramite arricchimento semantico a sorgenti dati eterogeneee sul Web

SINodeVirtual Data Store

SINodeVirtual Data Store

Page 6: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

6

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Sistemi di integrazione a Sistemi di integrazione a mediatoremediatore

Utente - Applicazione

Mediatore

Wrapper 1

Sorgente dati 2Sorgente dati 1 Sorgente dati 4Sorgente dati 3

Wrapper 2Wrapper 3 Wrapper 4

Mediatore

Utente – Applicazione

Sistemi di integrazione a mediatore

GAV LAV Ontologia Infrastruttura MAS

Capacità di interrogazione esplicite

Capacità di contenuto esplicite

MOMIS - - -

TSIMMIS - - -

Information Manifold

- - -

SIMS - -

Carnot - -

InfoSleuth -

Descrizione delle capacità capacità

di di interrogazioneinterrogazione e delle capacitàcapacità di contenutodi contenuto di

una sorgente dati

Wrapper

Decisione sulla

esprimibilità rispetto alle sorgenti dati

Mediatore

Riscrittura di interrogazioni in base alle

capacità delle sorgenti

Interrogazione

Page 7: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

7

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

DAML-S (Web service DAML-S (Web service semantici)semantici)

Web Web semanticosemantico

Annotazione semantica dei contenuti del Web (RDF, DAML, OIL, OWL, ...)

Web serviceWeb service Interazioni tra agenti per lo scambio di servizi sul Web (SOAP, WSDL, UDDI, ...)

DAML-DAML-SS

Ontologia e linguaggio annotato per la descrizione semantica di Web service

ServiceGroundingServiceGrounding

supportsServiceService

describedBypresentsServiceModelServiceModel

Indicazione dei più adeguati fornitori di servizio per una data richiesta tramite accoppiamento semanticoaccoppiamento semantico delle capacità espresse dai rispettivi ServiceProfile

Linguaggio di descrizione delle capacità capacità offerte e delle capacità richieste

ServiceProfiServiceProfilele

inputinput

outputoutput

preconditionprecondition

effecteffect

Page 8: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

8

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

DAML-S BrokerDAML-S Broker

Algoritmo di accoppiamento semanticoaccoppiamento semantico dei ServiceProfile

Gli output promessi dal fornitore devono includere gli output voluti dal richiedente

Funzionalità richieste Linguaggio di interrogazione Conversione di interrogazioni in richieste ossia ServiceProfile Corrispondenze semantiche tra gli input forniti dal richiedente e gli input richiesti dal fornitore Scelta del più appropriato fornitore tra quelli indicati dall’algoritmo di accoppiamento semantico

Page 9: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

9

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Interazione tra QA, BA ed Interazione tra QA, BA ed SINodeSINode

Soluzioni Proposte

Protocollo di comunicazioneProtocollo di comunicazione per il SEWASIE Brokering Agent ibrido tra broker e matchmaker

Accoppiamento semanticoAccoppiamento semantico tra i ServiceProfile che rappresentano richiesta ed annuncio di servizio per il soddisfacimento di una interrogazione

2. Interrogazione

3. Conversione da interrogazione a richiesta in forma di ServiceProfile

1. Annuncio capacità in forma di ServiceProfile

5. Indicazione del SINode

6. Riscrittura interrogazione

6. Interrogazione

8. Risposta

7. Elaborazione risposta

4. Accoppiamento semantico

Query Agent Brokering Agent

SINodeVirtual Data Store

Page 10: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

10

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Elaborazione di interrogazioniElaborazione di interrogazioni Premesse

Interrogazioni poste al DAML-S Broker in DAML Query Language (DQL)

Ontologia di riferimento comune tra richiedente, broker e fornitore

Algoritmo di accoppiamento semantico delle capacità espresse dai ServiceProfile

Capacità rappresentate da concetti

Da istanze istanze e variabilivariabili dell’interrogazione iniziale in concetticoncetti per operare l’algoritmo di accoppiamento semantico

Da concetticoncetti dell’interrogazione astratta ed istanzeistanze dell’interrogazione iniziale in concetti ed istanze richiesti dal fornitore indicato dall’algoritmo di accoppiamento semantico

Sviluppo

1.1. AstrazioneAstrazione

3.3. Riscrittura Riscrittura

2.2. Accoppiamento semantico Accoppiamento semantico

Rif

orm

ula

zion

Rif

orm

ula

zion

ee

Page 11: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

11

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Ontologia di riferimentoOntologia di riferimento

Elemento di OWL DL Descrizione di ODLI3 Rappresentazione in logica descrittiva

Significato

owl:Thing - T concetto universo

owl:Nothing - concetto vuoto

owl:Class interface, view C concetto astratto

owl:DataRange B D intervallo concreto

owl:ObjectProperty attribute R ruolo astratto

owl:DatatypeProperty attribute U ruolo concreto

owl:inverseOf - R- ruolo inverso

owl:SymmetricProperty - -R ruolo simmetrico

owl:TransitiveProperty - R+ ruolo transitivo

owl:intersectionOf and C1 ∏ C2congiunzione

owl:unionOf union C1 C2disgiunzione

owl:complementOf - C negazione

owl:one of range, enum {o1, o2, …, ol}, {v1, v2, …, vm} enumerazione

owl:Restriction… owl:onProperty rule R.C, U.D restrizione

owl:someValuesFrom exists R.C, U.D quantificazione esistenziale

owl:allValuesFrom attribute set, forall R.C, U.D quantificazione universale

owl:hasValue - R : o2 , U : v quantificazione su individui

owl:Cardinality - = n R, = n U restrizione numerica

owl:maxCardinality - n R, n U restrizione minorativa

owl:minCardinality - n R, n U restrizione maggiorativa

Rappresentata nel linguaggio OWL DLOWL DL (inferenze decidibili e complete)

Sostanziale equivalenza col linguaggio ODLODLI3I3

Page 12: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

12

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Riformulazione (1)Riformulazione (1) Interrogazioni formulate come triple (predicati binari) Termini variabili intesi come output Termini non variabili intesi come input Similarità semantica (strutturale e lessicale) come euristica Utilizzo di relazioni intra-ontolologiche

Interrogazione: P(a, B)Se A t.c. a ├ A(a) KB ╞ A(a) allora Abstract(a) = A.Quindi, interrogazione astratta: P(A, B)

Interrogazione: P(x, B)Se Ai {A1, A2, …, An} t.c. C: P├ P(Ai, C) KB ╞ P(Ai, C)allora Abstract(x) = Ai.Quindi, interrogazione astratta: P(Ai, B)

Interrogazione: P(A, y)Se Bi {B1, B2, …, Bm} t.c. C: P├ P(Bi, C) KB ╞ P(Bi, C)allora Abstract(y) = Bi.Quindi, interrogazione astratta: P(A, Bi)

Astrazione

Di variabili

Di istanze

has+father(John, y)

has+father(person, y)

has+father(John, man)

Page 13: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

13

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Riformulazione (2)Riformulazione (2)Riscrittura

Riscrittura di istanzeIstanza origine: a = a0,

Concetto origine: A = A0 s.t. a0 ├ A0(a0) KB ╞ A0(a0),

Concetto obiettivo: B = An,

PercorsoTriple(A0, An) = {(A0, P1, A1), (A1, P1, A2), ..., (An-1, Pn, An)}.

a0 può essere riscritta in un’istanza an t.c. an ├ An(an) KB ╞ An(an) sse

a1 t.c. (P1 ├ P1(a0, a1) KB ╞ P1(a0, a1)) (P1 ├ P1(a1, a0) KB ╞ P1(a1, a0)),

a2 t.c. (P2 ├ P2(a1, a2) KB ╞ P2(a1, a2)) (P2 ├ P2(a2, a1) KB ╞ P2(a2, a1)),…

an t.c. (Pn ├ Pn(an-1, an) KB ╞ Pn(an-1, an)) (Pn ├ Pn(an, an-1) KB ╞ Pn(an, an-1))

Trasformazione di concettiConcetto origine: A = A0, concetto obiettivo: B = An.

A può essere trasformato in B sse

P1 t.c. (P1 ├ P1(A0, A1) KB ╞ P1(A0, A1)) (P1 ├ P1(A1, A0) KB ╞ P1(A1, A0)),

P2 t.c. (P2 ├ P2(A1, A2) KB ╞ P2(A1, A2)) (P2 ├ P2(A2, A1) KB ╞ P2(A2, A1)),

Pn t.c. (Pn ├ Pn(An-1, An) KB ╞ Pn(An-1, An)) (Pn ├ Pn(An, An-1) KB ╞ Pn(An, An-1)),

Quindi, Percorso(A0, An) = Percorso(A0.A1.A2. … .An-1.An)

Page 14: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

14

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Trasformazione di concetti - Trasformazione di concetti - EsempioEsempio

person

driver

isSubsuming

AND(man, person)

has+father

person

white+van+man

van+driver

isSubsuming

isSubsuming

man

isSubsuming

grownup

isSubsuming

person

pet+owner

cat+owner

old+lady

man

grownup

isSubsumedBy

isSubsuming

isSubsuming

isSubsuming

isSubsuming

person

Relazioni utilizzabili per la trasformazione di concetti

equivalentClass equivalentClass subClassOf subClassOf intersectionOf intersectionOf unionOf unionOf ObjectProperty ObjectProperty DatatypePropertyDatatypeProperty

Caratteristiche dell’algoritmo

Decidibile Completo Ordinamento dei percorsi trovati Strategia breadth first con euristica

Page 15: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

15

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Implementazione e ragionatoriImplementazione e ragionatori Componente software modulare e flessibile scritto in Java

Ausilio dell’ontologia lessicale WordNet

Ausilio di RACER quale ragionatoreRagionatori Ragionamento

a

posteriori

Ragionamento

a

posteriori

Logica

descrittiva

implementata

Linguaggio

di

rappresentazione

Linguaggio

di

interrogazione

Mondo

aperto

Mondo

chiuso

Java

API

ODB-Tools - - OCDL, OLCD ODL, ODLI3 OQL, OQLI3 - -

JTP - - KIF 3.0 KIF 3.0 -

DAMLJessKB - - JESS JESS -

FaCT - - SHIQ, SHF KRSS KRSS -

RACER - - SHIQ KRSS KRSS -

Page 16: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

16

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

ConclusioniConclusioni Nei sistemi di integrazione di dati a mediatore la descrizione delle capacità capacità di interrogazionedi interrogazione permette di risolvere il CBR ed QED

DAML-S come linguaggio di descrizione delle capacità di un Web service permette al DAML-S BrokerDAML-S Broker la scoperta dei fornitori di servizio più adatti per un certo richiedente

Inquadrare il SEWASIE Brokering AgentSEWASIE Brokering Agent come ibrido tra broker e matchmaker ed inscriverlo entro il paradigma DAML-S gli giova le richieste funzionalità di accoppiamento semanticoaccoppiamento semantico

L’elaborazione di interrogazioni comprende sottoprocessi quali riformulazioneriformulazione ed accoppiamento semantico. La riformulazione di interrogazioni è costituita da astrazioneastrazione e riscritturariscrittura.

Nella astrazione da variabili a concetti e nella trasformazione di concetti per la riscrittura di interrogazioni si utilizza una euristica basata su similarità similarità semanticasemantica (coadiuvata da WordNet)

Pur essendo stata proposta per dotare il DAML-S Broker delle funzionalità richieste, la riformulazione di interrogazioni è applicabile ogni qualvolta sia necessario astrarre e riscrivere termini rispetto a determinati concetti di riferimento

L’intero processo sfrutta relazioni intra-ontologiche di una ontologia in OWL OWL DLDL. Una ontologia in ODLODLI3I3 è parimenti utilizzabile.

Page 17: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

17

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Ricerca futuraRicerca futura Interrogazioni formulate come congiunzioni di predicati binari

Interpretazione di predicati binari

Accoppiamento semantico di predicati binari

Riformulazione dei termini di una interrogazione per ottenere

tutti i parametri di un DAML-S ServiceProfile, non solo input ed

output.

Specifica analisi di interrogazioni in DQL ed OQLI3

Utilizzo di ODB-Tools come ragionatore

Interfaccia per permettere al DAML-S Broker di processare

interrogazioni DQL

Ottimizzazione degli algoritmi implementati per la

riformulazione di interrogazioni con ulteriori euristiche

Page 18: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

18

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Bibliografia essenzialeBibliografia essenziale Jose Luis Ambite, Craig A. Knoblock, Ion Muslea and Andrew Philpot. Compiling Source Descriptions for Efficient and Flexible Information Integration. Journal of Intelligent Information Systems, vol. 16, no. 2, pp. 149-187. 2001.

V. Vassalos and Y. Papakonstantinou. Expressive Capabilities Description Languages and Query Rewriting Algorithms. Journal of Logic Programming, vol. 43, no. 1, pp. 75-122. 2000.

Sonia Bergamaschi, Silvana Castano, Domenico Beneventano, and Maurizio Vincini. Semantic Integration of Heterogeneous Information Sources. Special Issue on Intelligent Information Integration, Data & Knowledge Engineering, vol. 36, No. 1, Pages 215-249. Elsevier Science B.V. 2001.

Massimo Paolucci, Takahiro Kawamura, Terry R. Payne, and Katia Sycara. Semantic Matching of Web Services Capabilities. Proceedings of the first International Semantic Web Conference (ISWC), LNCS 2342, pp. 333-347. Springer Verlag. 2002.

Franz Baader, Ralf Küsters, and Ralf Molitor. Rewriting Concepts Using Terminologies. Proceedings of the Seventh International Conference on Knowledge Representation and Reasoning (KR2000). 2000.

Ian Horrocks, Peter F. Patel-Schneider, and Frank van Harmelen. From SHIQ and RDF to OWL: The Making of a Web Ontology Language. Journal of Web Semantics, vol. 1, no. 1. 2003.

Volker Haarslev and Ralf Möller. RACER User’s Guide and Reference Manual Version 1.7.7. November 7, 2003.

Page 19: UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Query Processing by Semantic

Elaborazione di interrogazioni tramite Elaborazione di interrogazioni tramite l’uso di corrispondenze semantichel’uso di corrispondenze semantiche

Q

uery

Pro

cessin

g b

y S

em

an

tic R

efo

rmu

lati

on

Raffaele Capezzera

Grazie per l’attenzione