Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste...

29

Transcript of Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste...

Page 1: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.
Page 2: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Il Sistema MOMIS

Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d’integrazione ed interrogazione di informazioni da sorgenti di dati strutturati e semistrutturati.

Page 3: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

L'architettura di MOMIS

Page 4: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Obiettivi

Gli obiettivi di questa tesi sono stati due:

Analisi Critica dell’evoluzione del Web: Semantic Web

Momis nel Web Semantico

Sviluppo del traduttore della conoscenza di Momis in un formato condivisibile da sistemi a Mediatore esterni usando le nuove specifiche del w3c (XML-Schema, RDF e RDF-Schema).

Page 5: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Web Semantico

Processare automaticamente le informazioni scambiate.

Ampio uso di agenti.

Link suggeriti:

www.ontoknowledge.org/oil

www.daml.org

www.w3.org/2001/sw

www.agentlink.org

Page 6: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Uso degli Agenti

• Convenzione.

• Distanza.

• Valutazione.

• Compatibilità.

• Prescrizione.

http://www.scientificamerican.com/2001/0501berners-lee.html

Page 7: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Componenti del Web Semantico

XML: Garantisce l'interoperabilità sintattica

RDF(Resource Description Framework): Supporto all'interoperabilità semantica, attraverso la descrizione di metadati.

Un’ontologia: “documento che definisce le relazioni esistenti tra termini distinti.”

Page 8: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Architettura del Web Semantico

Quello che il web Semantico ha bisogno é un linguaggio per formalizzare una semantica e ragionare con le informazioni che si vogliono condividere.

Queste necessità vanno a definire un nuovo livello nell'architettura del Web: il livello logico.

Page 9: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Livello Logico

Molte le proposte per occupare tale livello, tra queste:

OIL( Ontology Inference Layer) DAML+OIL (DARPA Agent Markup Language)

che definiscono, in sostanza, un linguaggio d'alto livello per esprimere la semantica dei concetti che si vogliono condividere e si appoggiano ad una logica descrittiva per poter ragionare con i dati.

Comunque fino a quando non si arriverà all'uso di un'unica logica descrittiva il supporto che linguaggi di questo tipo potranno dare sarà parziale in quanto si limiterà la capacità di ragionare alle applicazioni in grado di capire la particolare logica descrittiva utilizzata.

Page 10: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

MOMIS nel Web Semantico

Nel Web Semantico la definizione di un’ontologia rappresenta l’obiettivo finale per far sì che le informazioni condivise siano elaborabili automaticamente, in MOMIS la definizione di un’ontologia é solamente il punto di partenza del processo d’integrazione.

MOMIS presenta problematiche che vanno oltre a quelle del Web Semantico, anche se l’esigenza di fondo é la stessa: garantire l’interoperabilità sintattica e semantica di ciò che si vuole condividere.

Livello Logico: OLCD

Livello Schema: ODLI3 /XML-Schema + RDF-Schema/RDF

Livello Dati: XML

Page 11: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

ODLI3

Supporto di sorgenti strutturate (database relazionali, ad oggetti e file system) e semistrutturate.

regole d'integrità (if then rule), definite sia sugli schemi locali che riferite allo schema globale.

regole di mediazione, o mapping rule, utilizzate per specificare il legame fra concetti globali e locali.

Traduzione automatica e trasparente all'utente delle descrizioni nella DL OLCD per poter eseguire il controllo di consistenza e l'ottimizzazione semantica delle query.

body alternativi di una classe tramite l'operatore di union relazioni terminologiche, che permettono di specificare relazioni di sinonimia

(SYN), ipernimia (BT), iponomia (NT) e relazione associativa (RT) tra due tipi.

Page 12: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

XML-Schema

• XML linguaggio per trasferire dati

• XML linguaggio per trasferire testo

Page 13: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

XML-Schema Vs DTD

I DTD hanno una sintassi particolare diversa da XML, così da dover creare strumenti appositi per la validazione.

I DTD non distinguono tra nome del tag e tipo del tag, ed hanno solo due tipi: complesso (cioè strutturato) e semplice (cioè CDATA o #PCDATA).

XML Schema, invece, fornisce un set complesso di tipi, a cui i tag e il loro contenuto debbono aderire.

XML-Schema ha un approccio object-oriented, permettendo di ampliare i tipi disponibili e di estenderne e precisarne le proprietà.

XML Schema é scritto in XML, permettendo l'uso di applicazioni XML per la verifica della validità dei dati espressi.

Page 14: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempi XML-Schema

<simpleType name="bodytemp"> <restriction base="decimal"> <minInclusive value="36.5"/> <maxInclusive value="44.0"/> </restriction> </simpleType>

<simpleType name="healthbodytemp"> <restriction base="bodytemp"> <maxInclusive value="37.0"/> </restriction></simpleType>

Page 15: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

RDFRDF è un linguaggio per descrivere delle risorse. Per far ciò XML è troppo

flessibile. Ad esempio ci sono molti modi, in XML, per indicare che una macchina è di colore rosso:

<car color="red" /> <car> <color>red</color> </car><car color="#cc" /> <color id="cc" shade="red" />

"RDF sfrutta la convenzione degli URI

"RDF è aperto; é immediato aggiungere nuove proprietà.

Page 16: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

RDF-Schema

RDF-Schema serve per definire il vocabolario delle risorse e delle proprietà usate in un particolare contesto.

• Definendo Classi per le modellare i concetti che si vogliono descrivere

• Definendo Proprietà per descrivere le caratteristiche dei concetti modellati.

Page 17: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio RDF

<rdf:RDF> <rdf:Description about="http://www.auto.com/#redcar">

<rdf:type resource=“schema.rdf#Car”> <s:color>Red</s:color> </rdf:Description> </rdf:RDF>

Page 18: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio RDF-Schema

<rdf:RDF xml:lang="en" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">

<rdfs:Class rdf:ID=“Car"> <rdfs:comment>A vehicle with 4 wheels.</rdfs:comment> <rdfs:subClassOf rdf:resource="http://www.w

3.org/2000/03/example/classes#Vehicle"/> </rdfs:Class>

<rdf:Property ID=“color"> <rdfs:comment>Color of a Car</rdfs:comment> <rdfs:range

rdf:resource="http://www.w3.org/2000/03/example/classes#Literal"/> <rdfs:domain rdf:resource="#Car"/> </rdf:Property>

</rdf:RDF>

Page 19: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

XML-Schema & RDF-Schema

XML-Schema e RDF(S) nascono entrambi per facilitare la condivisione delle informazioni sul web, ma hanno caratteristiche complementari:

XML-Schema fornisce una serie di primitive per vincolare la struttura di un documento, definire il numero di occorrenze e il tipo dei dati; mentre non fà

altrettanto per quanto riguarda le primitive per specificare la semantica. RDF-Schema fornisce alcune primitive per definire la semantica dei concetti espressi: Class,Property, subclassOf, subpropertyOf, type

ecc..; ma non fà altrettanto per quanto riguarda la struttura del documento.

Page 20: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Collegamento XML-Schema e RDF-Schema

Attualmente non esiste un meccanismo per la combinazione di RDF(S) e XML-Schema, di conseguenza bisogna cercare di ingegnarsi in qualche modo. Una possibilità è data dal meccanismo degli openAttrs previsto nelle specifiche di XML-Schema il quale permette di utilizzare nella definizione di uno schema attributi provenienti da namespace esterni.

<complexType name="PersonType" meta:interface="interfaces.rdf#Person">

Page 21: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

ODLi3 Vs XML-Schema

XML-Schema fornisce il supporto alle relazioni fondamentali di ODLi3:

Part - Of: Attraverso elementi locali o riferimenti ad elementi globali. Kind - Of: XML-Schema ha il concetto di tipo del tag attraverso l'attributo type Is - a: A livello di documento istanza indicando esplicitamente il tipo del tag.

In generale XML-Schema riesce a fornire un supporto pieno ai concetti di ODLi3:

Chiavi : <key> e <unique> Foreign Key: <keyRef> Ereditarietà: <extension base=”....”> NO ereditarietà multipla !!!!!! Tipi ODLi3

Page 22: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Documenti RDF(S)

Il documento XML-Schema é accompagnato da un documento RDF-Schema ed un documento RDF nell’ottica di preservare la semantica del risultato dell’integrazione.

Questi due documenti si basano sui concetti definiti in un terzo documento del quale possiamo vedere qui una rappresentazione grafica

Page 23: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio di Traduzione 1-5

interface Course ( source object Univers extent Courses key (course_name) ){ attribute string course_name; attribute Professor taught_by;}union Course_1 { attribute string course_name; attribute string course_description; attribute Professor taught_by; };

Page 24: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio di Traduzione 2-5

<group name="bodyCourse1"> <sequence> <element name="course_name" type="string"/> <element name="taught_by" type="momis:ProfessorType" xsi:nillable="true"/> </sequence> </group>

<group name="bodyCourse2"> <sequence> <element name="course_name" type="string"/> <element name="course_description" type="string"/> <element name="taught_by" type="momis:ProfessorType" xsi:nillable="true"/> </sequence> </group>

Page 25: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio di Traduzione 3-5

<complexType name="CourseType" meta:interface="http://sparc20.ing.unimo.it/interfaces.rdf#Course">

<choice> <group ref="momis:bodyCourse1"/> <group ref="momis:bodyCourse2"/> </choice> <attribute name="persistent" type="boolean" use="default" value="true"/> <attribute name="view" type="boolean" use="default" value="false"/> </complexType>

Page 26: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio di Traduzione 4-5

<element name="Course" type="momis:CourseType"> <key name="Coursepk"> <selector xpath="child::*"/> <field xpath="course_name"/> </key> </element>

Page 27: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Esempio di Traduzione 5-5

RDF-Schema:

<rdfs:Class rdf:ID="Course"> <rdfs:subclassOf rdf:resource="momis_schema#Interface"/> </rdfs:Class>

RDF:

<s:Course rdf:ID="Course"> <m:source m:tipo="object" rdf:value="Univers"/> <m:extent>Courses</m:extent> <m:olcd dc:description=" " rdf:value="^ [ course_desc : string , course_name :

string , taught_by : Professor , course_name0 : string , taught_by0 : Professor ] "/>

</s:Course>

Page 28: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Il Software

Il software è stato realizzato utilizzando il linguaggio Java. In particolare sono state sviluppate circa 6000 righe di codice commentato.

Sono state utilizzate le API JAXP1.1 della SUN (Java Api for Xml Parsing), in particolare le classi dei package SAX (Simple Api for Xml) e XSLT (XML Style Sheet Translation) il cui uso congiunto permette di convertire una generica struttura dati in XML.

Modifica parser ODLI3

Creazione SAXSource

Sviluppo Trasformer XSLT

Page 29: Il Sistema MOMIS Il progetto MOMIS (Mediator EnvirOnment for Multiple Information Sources) consiste nella realizzazione di un sistema intelligente d integrazione.

Conclusioni

Il traduttore realizzato cerca di sfruttare al meglio le potenzialità di RDF, a mio avviso si dovranno seguire le evoluzioni di tale standard in quanto promette di cambiare il modo di condividere le informazioni in rete.

Concludo accenando a XQUERY l'ultima proposta in merito ad un query language per XML, studiata in questa tesi, che offre il supporto ai tipi di dato di XML-Schema; durante il lavoro di questa tesi si è sviluppato un parser che effettua il controllo sintattico di una query formulata in tale linguaggio, non si è andati oltre in quanto le specifiche al momento di sviluppo del parser erano a livello di Working Draft.