Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Algoritmi di matching tra schemi XML per la riscrittura di query Relatore: Prof. Paolo Tiberio Correlatore: Dott.sa Federica Mandreoli Tesi di laurea di: Milena Cevolani
2
Sommario Il progetto ECD e le biblioteche digitali XML
Il problema della riscrittura delle query Il matching fra schemi XML Prove sperimentali
3
Biblioteche Digitali XML
Il progetto ECD si concentra sullo sviluppo di tecnologie e strumenti per offrire contenuti arricchiti Uno dei mezzi di distribuzione dei contenuti arricchiti è dato dalle biblioteche digitali Una BD è una raccolta gestita di informazioni, con servizi associati, in cui l’informazione è memorizzata in formato digitale e accessibile su una rete Nelle BD XML lo standard scelto per la rappresentazione dei documenti è il linguaggio XML Nelle BD XML i dati sono semistrutturati
4
Biblioteche Digitali XML
DATI SEMISTRUTTURATI Pregi: Flessibilità Facilità d’uso Difetti: Grandi quantità di informazioni eterogenee Difficoltà a reperire le informazioni nel repository della BD Necessità di eseguire interrogazioni approssimate Uso del linguaggio XML Schema Necessità di uso di metadati che descrivano la struttura dei documenti XML
5
La riscrittura delle query
Per interrogare i documenti XML nell’archivio di una BD bisogna: Definire un linguaggio di interrogazione (XQuery) Riscrivere ogni query posta dall’utente in modo automatico per ogni documento della BD utile a soddisfare la richiesta dell’utente Un possibile approccio Sfruttare le informazioni strutturali fornite dagli schemi XML
6
La riscrittura delle query
“i nomi di negozi che vendono cd di ‘Elisa’ e che contengano canzoni con ‘gift’ nel titolo “ for $x in /cdstore where $x/cd/singer = ELISA and $x/cd/song/title = gift return $x/name ? ? Schema A Schema B musicstore compackDisk storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle location town cdstore cdtitle cd vocalist address state city tracklist passage title street name
7
La riscrittura della query
Riscrittura automatica di una query: Da dove partire? Uso di ontologie per “annotare” i termini degli schemi XML Una ontologia può essere vista come un insieme di concetti in grado di definire in modo univoco una determinata realtà di interesse Annotazione: codice in Wordnet del significato espresso dal termine Uso di un algoritmo di matching Prende in input coppie di schemi XML “annotati” Restituisce una mappatura con i punteggi di similarità fra le coppie di termini appartenenti ai due schemi
8
Algoritmo per il matching fra schemi XML
Trasformazione degli schemi annotati in grafi etichettati diretti GA=XMLDOMGraph(schema A) GB=XMLDOMGraph(schema B) Creazione della mappatura iniziale initialMap=StringMatcher(GA,GB) Creazione di un multimapping tramite un calcolo di fixpoint multimapping=match(GA,GB,initialMap) Filtraggio del multimapping result=Filter(multimapping)
9
Trasformazione degli schemi XML
Trasformazione degli schemi XML annotati in grafi RDF Gli archi sono identificati da delle triple (s,p,o) Uso dell’etichetta child per identificare le relazioni parent-child bi [tag:name] schema b0 b1 b3 b2 complexType element cdstore cdstoreType string name tag child type SCHEMA B <schema> <element <complexType <element <element <element </complexType> <complexType <element <element <element <complexType <element <element <element <complexType <element <complexType <element </schema>
10
Creazione della mappatura iniziale
Dai grafi GA e GB si ricava il grafo di connettività a coppie (PCG): (a2, child ,a9) GA e (b0, child, b1) GB ((a2,b0), child, (a9,b1)) PCG GA GB Grafo di connettività a coppie schema schema storageType, string tag type tag musicstore complexType cdstore complexType name tag storage,name a9,b3 element,element b0 name child name a0 tag child tag child child child child a9,b2 a2,b0 a9,b1 b2 b1 name name a2 type name type a1 child type name storage,cdstore tag storage,cdstoreType type child musicstoreType tag cdstoreType element,complexType tag tag storageType,cdstoreType element b3 element a9 complexType,element type type name name musicstoreType,cdstore tag name storage storageType string name a2,b1
11
Creazione della mappatura iniziale
Per ogni coppia di mappe (a,b) PCG, si calcola il valore iniziale di similarità σ0 come segue: Coppie (risorsa,risorsa) e (risorsa,letterale): σ0 = minSim Coppie (letterale,letterale): Uso del modello Vector Space Generalizzato Uso delle gerarchie di ipernimi di WordNet livello 8 =>singer, vocalist, vocalizer, vocaliser livello 7 =>musician, instrumentalist, player livello 6 =>performer, performing artist livello 5 =>entertainer livello =>person, individual, someone, somebody, mortal, human, soul livello =>organism, being livello =>living thing, animate thing livello =>object, physical object livello =>entity, physical thing livello =>causal agent, cause, causal agency livello =>entity, physical thing livello 8 =>singer,vocalist, vocalizer, vocaliser livello 7 =>musician, instrumentalist, player livello 6 =>performer, performing artist livello 5 =>entertainer livello =>person, individual, someone, somebody, mortal, human, soul livello =>organism, being livello =>living thing, animate thing livello =>object, physical object livello =>entity, physical thing livello =>causal agent, cause, causal agency livello =>entity, physical thing
12
Creazione della mappatura iniziale
Nodi in Schema A Nodi in Schema B 0 musicstore cdstore 1.0 songlist tracklist namesign name track passage 0.5 songtitle title compackDisk cd singer vocalist
13
Creazione del multimapping
Creazione del grafo di propagazione della similarità : Aggiunta di un arco, con direzione opposta Aggiunta dei coefficienti di propagazione w sugli archi con la formula inverse product: storageType,string 0.143 1.0 1.0 0.005 storage,name element, element a9,b3 1.0 1.0 1.0 0.005 1.0 1.0 a9,b2 a2,b0 a9,b1 0.005 0.005 1.0 1.0 1.0 1.0 1.0 1.0 1.0 storage, cdstore storage, cdstoreType 0.013 storageType,cdstoreType element, complexType 1.0 1.0 complexType, element a2,b1 musicstoreType, cdstore 0.01 1.0
14
Creazione del multimapping
Formula di fixpoint: σn + 1 = normalize (σ0 + σn + φ(σ0 + σn)) a2,b1 musicstoreType, cdstore complexType, element 1.0 0.01 storageType,string element, element storage,name a9,b3 a9,b1 a2,b0 a9,b2 storageType,cdstoreType storage, cdstore element, complexType storage, cdstoreType a2,b1 musicstoreType, cdstore complexType, element 1.0 0.005 0.143 0.013 0.01
15
Convergenza del calcolo di fixpoint
La formula di fixpoint corrisponde al calcolo dei cammini casuali sulle catene di Markov L’iterazione continua fino a che (n,n+1) < Il calcolo converge se il grafo di propagazione è strettamente connesso Uso del dampening: si aggiunge σ0 al calcolo di φ con σ0(a,b) > 0
16
Filtraggio dei risultati
Problema del matrimonio stabile Problema di assegnamento Similarità cumulativa [0,1]-[0,1] Multimapping Vincoli di typing [element:name] [complexType:name] Vincoli di cardinalità [0.n]-[0,n] Filtro Valore di soglia 0.4 mappatura finale (similarità assoluta)
17
Prove sperimentali Schema B Schema A Nodi in A Nodi in B 0
musicstore compackDisk storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle location town cdstore cdtitle cd vocalist address state city tracklist passage title street Nodi in A Nodi in B 0 [element:musicstore] [complexType:cdstoreType] 0.001 1.0 [complexType:compackDiskType] [element:cd] [complexType:songlistType] [element:tracklist] [element:compackDisk] [complexType:cdType] 0.779 0.755 [complexType:musicstoreType] [element:cdstore] [element:namesign] [element:name] 0.637 [element:songlist] 0.506 [complexType:tracklistType] [element:track] [complexType:passageType] 0.504 [element:passage]
18
Prove sperimentali Schema A Schema B Schema B1 musicstore compackDisk
storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle location town cdstore cdtitle cd vocalist address state city tracklist passage title street cdstore cdtitle cd vocalist address state city tracklist passage title street
19
Prove sperimentali Schema A Schema B Schema B2 musicstore compackDisk
storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle location town cdstore cdtitle cd vocalist address state city tracklist passage title street tradecenter middletown cdstore cdtitle cd vocalist address state city tracklist passage title street
20
Prove sperimentali Schema A Schema B3 Schema B1 musicstore compackDisk
storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle location town cdstore cdtitle cd vocalist address state city tracklist passage title street catalog category code music cdtitle cd vocalist tracklist passage title
21
Parametri di modulazione
Approccio p = q p q Inverse product Inverse average Inverse total product Inverse total average Combined inverse average Equal 1.0
22
Parametri di modulazione
SIGLA FORMULE DI FIXPOINT FTF σn + 1 = normalize (φ(σ0 + σn)) TFF σn + 1 = normalize (σ0 + φ(σn)) FFT σn + 1 = normalize (σn + φ(σn)) TTF σn + 1 = normalize (σ0 + φ(σ0 + σn)) FTT σn + 1 = normalize (σn + φ(σ0 + σn)) TFT σn + 1 = normalize (σ0 + σn + φ(σn)) TTT σn + 1 = normalize (σ0 + σn + φ(σ0 + σn))
23
Conclusioni E’ stato implementato un metodo per effettuare in modo automatico il matching fra schemi XML Il metodo proposto si basa sull’utilizzo di ontologie e di informazioni strutturali fornite dagli schemi XML Il valore iniziale di similarità trovato è stato “affinato” tramite un calcolo iterativo di fixpoint Per limitare le mappature trovate, si sono usati dei filtri
24
Sviluppi Futuri Il software progettato potrà, in futuro, essere sfruttato in un modulo di gestione delle query Un criterio per la riscrittura delle query potrebbe fare uso dei valori σ trovati e combinare insieme : Il problema del matrimonio stabile: implica la determinazione di un matching stabile La similarità relativa: rendere significativo il verso di “attraversamento” degli schemi Query Schema musicstore compackDisk storage stock signboard country namesign colorsign songlist songtitle singer track albumTitle cdstore location name cd town singer song title
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.