UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
Facoltà di Ingegneria – Sede di Modena
Corso di laurea in Ingegneria Informatica
Interoperabilità tra ontologie eterogenee:
i traduttori ODLI3 - OWL
Relatore
Prof.ssa Sonia Bergamaschi
Correlatore
Ing. Maurizio Vincini
Controrelatore
Prof. Flavio Bonfatti
Tesi di Laurea di
Mirko Orsini
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Sommario
– Ambito di ricerca
– Il progetto SEWASIE
– Architettura del sistema MOMIS, il wrapper
– Il linguaggio ODLI3
– Il linguaggio OWL
– Esempio di traduzione ODLI3 - OWL
– Implementazione dei traduttori
– Conclusioni e Lavoro Futuro
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Web Semantico
“Il Web Semantico è un’estensione del Web attuale, nella
quale ad ogni informazione viene attribuito un significato ben
preciso.”
“Il Web Semantico darà una struttura ai contenuti significativi
delle pagine Web, creando un ambiente in cui gli agenti
software, spostandosi da pagina a pagina, possano eseguire
sofisticate interrogazioni per gli utenti.”
[Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001]
 Elementi chiave:
– Rappresentazione della conoscenza
– Agenti software
– Ontologie
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Ontologie
“Un ontologia è una specificazione esplicita di una
concettualizzazione.” [Tom Gruber]
Caratteristiche delle ontologie:
– descrizione di un particolare dominio,
– da un certo punto di vista,
– descrizione esplicita,
– costruzione di un vocabolario per quel dominio,
– un gruppo usa il vocabolario per accordarsi sul
significato dei termini usati,
– fondamentale per la comunicazione.
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Il progetto SEWASIE
SEWASIE (SEmantic Webs and AgentS in Integrated
Economies) è un progetto finanziato dalla Commissione Europea
(Maggio 2002/Aprile 2005).
 Obiettivo: progettare e implementare un motore di ricerca
avanzato basato sulla semantica che permetta di accedere a
sorgenti di dati eterogenee sul Web.
 I partecipanti:
–
–
–
–
–
–
–
–
Università degli Studi di Modena e Reggio Emilia (ITALY)
CNA SERVIZI Modena s.c.a.r.l. (ITALY)
Università degli Studi di Roma “La Sapienza” (ITALY)
Rheinisch Westfaelische Technische Hochschule Aachen (GERMANY)
Libera Università di Bolzano (ITALY)
Thinking Networks AG (GERMANY)
Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener
Verein (GERMANY)
IBM Italia SPA (ITALY)
 Il sito web: http://www.sewasie.org/
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Obiettivi del progetto SEWASIE
 Sistema sicuro basato su agenti software
 Architettura scalabile e distribuita
 Comunicazione strutturata e basata sul Web
 Componente per la mediazione delle informazioni
 Raggruppamento
 Contestualizzazione
 Visualizzazione
 Interfacce utente per:
 progettazione semantica
 formulazione delle interrogazioni
 navigazione intelligente
user
Other
users user
user
User
Profile
Monitor
Profiles
OLAP
Reports
User Interface
Comm.
Agent
Visualisation
Monitoring
Comm. Interface
Query Interface
Metadata Interface Interface
Communication
Tool
Monitoring
Agent (MA)
Query Results
Brokering
Agent
(BA)
Ontology
Query
Query
QueryAgent
Agent
Agent
SINode
maps
BA
OLAP
Tool
Brokering
Agent (BA)
Ontology
maps
BA
SEWASIE
BA
Interconnectio
n
BA
infrastructure
Virtual Data Store
Query
Query
Manager
Metadata
Metadata
Repository
Repository
Ontology
Wrapper
Wrapper
Semantic
Enrichment
RDBs
Structured
Databases
Ontolog
y
builder
…
Wrapper
Wrapper
Semantic
Enrichment
<XML>
<DATA>...
</DATA>
Semi- Structured
Databases
Wrapper
Wrapper
Wrapper HTML
XML Wrap
HTML→XML
<HTML>
...Unstructured
Text documents
The
information
layer
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
La SEWASIE Virtual Network
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Il sistema MOMIS
MOMIS (Mediator envirOnment for Multiple
Information Sources)
 Sistema basato su mediatori per l'estrazione e
l'integrazione delle informazioni provenienti da
sorgenti di dati strutturate, semi-strutturate e non
strutturate.
 Metodo semantico per l'integrazione delle
informazioni basato su schemi concettuali delle
sorgenti di dati.
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Architettura del Sistema MOMIS
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Il linguaggio ODLI3
 Il linguaggio ODLI3 è un'estensione del linguaggio standard ODL
(Object Definition Language), definito dal gruppo di
standardizzazione ODMG-93 per descrivere la conoscenza relativa
ad uno schema ad oggetti.
 Il linguaggio ODL è stato esteso in accordo con le indicazioni del
programma I3 (Integrazione Intelligente delle Informazioni)
dell'ARPA.
 Utilizzando il linguaggio ODLI3, il Sistema MOMIS realizza
l'integrazione di informazioni da fonti dati eterogenee, comprendenti
sia sorgenti di dati strutturati che semistrutturati.
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Costrutti fondamentali ODLI3
– Descrizioni di interfacce:

Interface header:
• Nome (ObjectID)
• Superclassi
• Source
• Key, ForeignKey

Interface body:
• Attributi semplici
• Attributi complessi
• Relazioni inverse
interface Professor : CS_Person (
source object Computer_Science
key (first_name, last_name))
{
attribute string first_name;
attribute string last_name;
attribute string title;
attribute Address
address;
attribute Department
department;
relationship set
<Course> teaches
inverse
Course::taught_by;
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Costrutti fondamentali ODLI3
– Relazioni terminologiche
 Ipernimia
BT
 Iponimia
NT
 Associazione
RT
 Sinonimia
SYN
Person BT Student;
Professor NT Person;
Professor RT Office;
Section SYN Department;
– Annotazioni rispetto a WordNet
wnAnnotation
<DottedName>
lemmaValue,
lemmaSyntacticCategory
,
lemmaSenseNumber;
wnAnnotation
ComputerScience.Profess
or
lemmaValue="professor",
lemmaSyntacticCategory=
1,
lemmaSenseNumber=1;
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Il linguaggio OWL
 Il linguaggio OWL (Web Ontology Language) è stato sviluppato dal
World Wide Web Consortium (W3C Recommendation 10 February
2004) per la definizione di ontologie e di strumenti compatibili con
l'architettura del Semantic Web.
 Tramite OWL è possibile avere una maggiore comprensibilità della
semantica di concetti da parte di agenti software rispetto a XML,
RDF e RDF-Schema.
 OWL è stato costruito sulla base di RDF e RDF-Schema e rispetto
ad essi aggiunge diversi costrutti per la definizione dei concetti e
delle loro interrelazioni:
– disgiunzione tra classi
– restrizioni di cardinalità per le proprietà
– relazioni di uguaglianza tra classi o proprietà
– classi enumerate
– nuovi tipi di proprietà e nuove caratteristiche per le proprietà.
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
OWL Lite, OWL DL, OWL Full
OWL fornisce tre sottolinguaggi con espressività incrementale
progettati per l'utilizzo da parte di utenti con necessità differenti per
la descrizione di ontologie:
– OWL Lite: permette di descrivere ontologie nelle quali siano
definite principalmente classificazioni gerarchiche e semplici
vincoli sulle proprietà;
– OWL DL: è stato progettato per avere massima espressività e
contemporaneamente garantire che tutte le computazioni
abbiano un risultato e terminino in un tempo finito;
– OWL Full: permette di avere una massima espressività e la
libertà sintattica di RDF, senza fornire nessuna garanzia dal
punto di vista computazionale.
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Costrutti fondamentali OWL
– Descrizione di classi:
 Identificatore
owl:class rdf:ID
 Ereditarietà
rdfs:subClassOf
<owl:Class rdf:ID="Professor">
<rdfs:subClassOf rdf:resource="#Person" />
</owl:Class>
– Proprietà:
 Object Properties
 Datatype Properties
<owl:DatatypeProperty rdf:ID="Professor.name">
<rdfs:domain rdf:resource="#Professor"/>
<rdfs:range rdf:resource="&xsd;string"/>
</owl:DatatypeProperty>
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Costrutti fondamentali OWL
– Restrizioni:
 restrizioni sui valori
 restrizioni sulle cardinalità
<owl:Restriction>
<owl:onProperty rdf:resource="#teaches" />
<owl:hasValue rdf:resource="#BasidiDati" />
</owl:Restriction>
– Annotation Properties
<owl:AnnotationProperty rdf:ID="&sew;lemmaValue"/>
<sew:lemmaValue rdf:datatype="&xsd;string“ />
...
<owl:Class rdf:ID="Professor">
<sew:lemmaValue>professor</sew:lemmaValue>
</owl:Class>
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Confronto tra i costrutti ODLI3 e OWL
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Esempio di traduzione ODLI3 - OWL
interface Professor : CS_Person (
source object Computer_Science)
{
attribute string name;
attribute Department
department;
relationship set
<Course> teaches
inverse
Course::taught_by;
};
wnAnnotation
ComputerScience.Profes
sor
lemmaValue="professor"
,
lemmaSyntacticCategory
<owl:Class rdf:ID="Professor">
<rdfs:subClassOf rdf:resource="#CS_Person" />
<sew:lemmaValue>person</sew:lemmaValue>
tt<sew:lemmaSyntacticCategory>1</sew:lemmaSyntacticC
ategory>
<sew:lemmaSenseNumber>1</sew:lemmaSenseNumber>
</owl:Class>
<owl:DatatypeProperty rdf:ID="Professor.name">
<rdfs:domain rdf:resource="#Professor"/>
<rdfs:range rdf:resource="&xsd;string"/>
</owl:DatatypeProperty>
<owl:ObjectProperty rdf:ID="Professor.department">
<rdfs:domain rdf:resource="#Professor"/>
<rdfs:range rdf:resource="#Department"/>
</owl: ObjectProperty >
<owl:ObjectProperty rdf:ID="Professor.teaches">
<rdfs:domain rdf:resource="#Professor"/>
<rdfs:range rdf:resource="#Course"/>
<owl:inverseOf rdf:resource="#Professor.taught_by"/>
</owl: ObjectProperty >
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Implementazione dei traduttori
Virtual Data Store
Metadata
Metadata
Repository
Repository
Query
Manager
ODL
Ontology
I3 Ontology
Ontology
builder
Wrapper OWL
ODLI3

OWL
ODLI3

OWL
<XML>
<DATA>...
</DATA>
OWL
Ontology
 Traduttori da ontologie
ODLI3 ad ontologie OWL
e da ontologie OWL ad
ontologie ODLI3
 Traduzione bidirezionale
senza la perdita di
informazioni
fondamentali
 Componente software
modulare e flessibile
scritto in Java
Interoperabilità tra ontologie eterogenee: i traduttori ODLI3 - OWL
Conclusioni e Lavoro futuro
 Visti i differenti livelli di espressività dei sottolinguaggi di OWL, è stata

implementata la traduzione di schemi ODLI3 nei sottolinguaggi OWL DL e Full, il
sottolinguaggio OWL Lite è infatti decisamente limitato per l'espressione di
schemi complessi.
La traduzione di ontologie OWL in schemi ODLI3 è stata implementata per i
sottolinguaggi OWL Lite e OWL DL, il sottolinguaggio OWL Full è caratterizzato
da una grande libertà sintattica e non fornisce nessuna garanzia dal punto di
vista computazionale.
 Il linguaggio ODLI3 potrebbe essere esteso per l'espressione dei concetti di

disgiunzione e complemento tra le estensioni delle classi, per la dichiarazione di
proprietà transitive e per il versioning di ontologie.
Il Wrapper OWL può essere completato attraverso la realizzazione del modulo
per la gestione delle interrogazioni. Il modulo dovrà effettuare la traduzione delle
interrogazioni provenienti dal Query Manager del sistema MOMIS, nel query
language specifico per ontologie OWL: RDQL (RDF Query Language) o
SPARQL Query Language for RDF.
Scarica

Interoperabilità tra ontologie eterogenee: i traduttori ODLI3