universitÀ degli studi di modena e reggio emilia facoltà di ingegneria – sede di modena corso di...
TRANSCRIPT
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
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
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
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)
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
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
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
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
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
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
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
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)
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)
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
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 -
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.
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
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.
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