UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
FACOLTA’ DI INGEGNERIA – SEDE DI MODENA
Corso di Laurea in Ingegneria Informatica
PROGETTAZIONE UML
NELL’AMBITO DEL SEMANTIC WEB
Relatore
Chiar.ma Prof.ssa Sonia Bergamaschi
Tesi di Laurea di
Patrizia Ponchiroli
Anno Accademico 2003/2004
Obiettivo della Tesi:
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Strumenti per lo sviluppo di ontologie
nel Semantic Web
 Approccio tradizionale: Linguaggi KR tradizionali (Standard W3C)
 Momis: ODLI3 (estensione di ODL)
 Alternativa proposta: Class diagram UML + vincoli OCL
Adattabilità dell’UML
nella rappresentazione di modelli formali come le ontologie ???
UML:
Comunicazione grafica human-to-human di analisi del software
↓
Linguaggio machine-processable per lo sviluppo di ontologie
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Generazioni del Web
1° - Pagine statiche: HTML
2° - Pagine dinamiche:
 Informazioni machine-readable
 Ricerche: match di keyword
3° - Web Semantico
Tim Berners-Lee - Semantic web road map. Internal note, W3C. 1998
 Informazioni machine-understandable
 Interoperabilità sintattica e semantica
 Creazione di linguaggi standard appropriati
 Mark-up dei contenuti / mark-up di presentazione
 Formalizzazione dei metadati
 Creazione di ontologie
 Utilizzo di agenti mobili
Semantic Web:
Progettazione UML nell’ambito del Semantic Web – 15/12/04
agenti mobili raccolgono informazioni da sorgenti eterogenee,
le elaborano e le scambiano automaticamente con altri programmi
RDBMS
Linguaggi KR
Progettazione UML nell’ambito del Semantic Web – 15/12/04
(Knowledge Representation Languages)
Livello Logico
Definizione di
Ontologie
Solo aspetti
statici !
Livello Schema
Livello Dati
Linguaggi KR:
 OWL - SHOIN(D)
 DAML+OIL - KIF (2001)
 DAML (2000)
 OIL - SHIQ (2000)
 logiche del 1° ordine o Description Logics (DL)
RDF-Schema (2000)
XML-Schema
RDF (1999)
XML
MOMIS
(Mediator envirOnment for Multiple Information Sources)
Progettazione UML nell’ambito del Semantic Web – 15/12/04
http://dbgroup.unimo.it/Momis
Progetto nato dalla collaborazione tra i gruppi operativi dell’Università
di Modena e Reggio Emilia e di Milano
Attualmente continua nell’ambito del progetto SEWASIE
(SEmantic Webs and AgentS in Integrated Economies)
Integrazione virtuale ed intelligente di sorgenti eterogenee
Livello Logico: ODLI3 + OLCD (DL)
1. Sorgenti locali di dati strutturate o semistrutturate da integrare
2. Wrapper: descrizione delle informazioni delle sorgenti in ODLI3
3. Mediatore: integrazione degli schemi locali generando un unico
schema globale, la GVV (Global Virtual View)
4. Utente: interroga lo schema globale e riceve un’unica risposta
ODLI3:
Progettazione UML nell’ambito del Semantic Web – 15/12/04
 Nasce come estensione di ODL (Object Definition Language),
un linguaggio di descrizione dei dati object-oriented
 Permette l’integrazione di sorgenti strutturate e semi-strutturate
 Due nuovi costrutti: union e optional
 Estensioni ai tipi valore ed ai tipi classe
 Nel caso di sorgenti relazionali è possibile definire delle foreign key
 Possibilità di definire attributi globali, oltre ai normali attributi locali
 Vengono supportate le Mapping Rule
 E’ possibile la definizione di regole di integrità denominate if-then rule
 È possibile definire le relazioni terminologiche, intensionali ed estensionali, di:
 SYN (SYNonym-of): sinonimia
 BT (Border Terms): ipernimia
 NT (Narrow Terms): iponimia
 RT (Related Terms): associazione
 Annotazioni rispetto a WordNet
UML (Unified Modeling Language)
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Linguaggio di modellazione grafica Object-Oriented
 Standard OMG (Object Management Group), basato su anni di esperienza nel
campo dell’Ingegneria del Software, largamente adottato in campo industriale
 Nasce nel 1997 come fusione di: OMT (James Rumbaugh)
OOSE (Ivar Jacobson)
Metodologia di Booch (Grady Booch)
 General purpose
 Meccanismi di estensione: Vincoli
Valori etichettati
Stereotipi
 E’ provvisto di package e di altri meccanismi di modularità
 Ha la possibilità di esprimere processi e comportamenti dinamici
 OCL: linguaggio formale per la specifica di vincoli, per esprimere regole logiche
 Case-tool: Rational-Rose
ArgoUML (open-source)
}
XMI (XML Metamodel Interchange)
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Diagrammi UML
Categoria
Diagrammi
Analisi dei requisiti
Use-case
Struttura statica
Package diagram
Class diagram
Object diagram
Interazione
Sequence diagram
Collaboration diagram
Stato
State chart
Activity diagram
Implementazione
Component diagram
Deployment dagram
Metamodello UML
Class diagram UML
Weel-formedness rules – OCL
Struttura a package
Progettazione UML nell’ambito del Semantic Web – 15/12/04
MOF (Meta Object Facility):
Metalivello
Ontologie
UML
Meta-metamodello
Top-level Ontology
(N. Guarino)
Modello MOF
Metamodello
Linguaggi KR
Metamodello UML
Istanza del modello MOF
Metadati
Ontologia
Modello/schema UML
definito dall’utente
Istanze del
metamodello:Classi
Dati
Database
Sistema reale
Istanze del
modello:Oggetti
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Limiti
 UML non ha ancora una semantica formale, uniforme e standardizzata
Metamodello: ridondanza
 pUML (precise UML): Core di UML
 Non è ancora efficacemente “Web-enabled”
 UML: object-oriented vs Linguaggi KR: a frame
L’UML non possiede una sintassi lineare
 Sia l’UML che i linguaggi ontologici sono legati al formalismo XML, ma:
DAML+OIL ha una rappresentazione standard XML
l’OMG adotta XMI come modello per trasferire dati
 Semanticamente, OCL manca di una specifica formale
 Significative incompatibilità semantiche tra l’UML ed i Linguaggi KR
Concetto di Proprietà
Progettazione UML nell’ambito del Semantic Web – 15/12/04
K. Baclawski
Linguaggi KR: Le proprietà sono elementi primitivi, possono essere
definite senza riferimento a classi, e sono unidirezionali
Proprietà: più classi domain
RDF(S): 1 classe range
DAML+OIL: più classi range
Il concetto di Proprietà riassume i concetti di:
Associazione (ObjectProperty)
Attributo (DataTypeProperty)
UML: Non c’è il concetto primitivo di Associazione
Le associazioni possono esistere solo nel contesto
di due o più classi
Associazione: 1 classe source e 1 classe target
Concetto di Property
Progettazione UML nell’ambito del Semantic Web – 15/12/04
K. Baclawski
Compagnia
1
Persona
Cane
0..n
minCardinality
“possiede”:
UML: 2 associazioni
DAML+OIL: 1 proprietà
0..n
possiede
1
cardinality
Veicolo
possiede
maxCardinality
daml:Class “Persona"
...
daml:subClassOf
daml:Restriction
daml:onProperty “possiede"
daml:toClass “Cane"
…
daml:Property “possiede"
Unambiguous e Unique Property
Progettazione UML nell’ambito del Semantic Web – 15/12/04
K. Baclawski
a1
0..1
*
Unambiguous Property
a2
*
0..1
Unique Property
Mapping UML / DAML+OIL
Progettazione UML nell’ambito del Semantic Web – 15/12/04
K. Baclawski
K. Baclawski prevede di estendere l’UML, definendo un prototipo UML
che mappi le specifiche UML in quelle DAML+OIL:
 Estensione al metamodello UML
 Stereotipi, specializzazioni di costrutti di modellazione,
che corrispondano a elementi della sintassi DAML+OIL:
<<ontology>> (ontologia DAML+OIL)
<<import>> (ontologie importate)
<<instanceOf>> (type)
<<equivalentTo >>
<<sameClassAs>>
<<samePropertyAs>>
<<inverseOf>>
<<TransitiveProperty>>
<<subProperty Of >>
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Esempio di Stereotipo
Le subProperty DAML+OIL sono mappate con la dipendenza
stereotipata <<subPropertyOf>> tra 2 associazioni:
La proprietà “father” è un raffinamento della proprietà “parent”
Estensione metamodello UML
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Due nuovi costrutti: Proprietà e Restrizione
 La Property è un Classifier e può esistere
senza essere associata a nessuna classe
 Ogni estremo di associazione può
essere descritto da al più una proprietà
 Una Property, come in DAML+OIL, può
essere vincolata da zero o più Restriction
 Le istanze di una Restriction sono gli oggetti
che soddisfano una condizione su una o più
proprietà associate con la restrizione
 Le Restriction sono Classifier ed ognuna
è messa in relazione con almeno una classe
Il fatto che nessuna Property può avere più di uno degli AssociationEnd di un’associazione può essere
espresso con vincoli OCL
Progetti in corso
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Tentativi di applicare UML nel campo della rappresentazione di ontologie
 UBOT (Lockheed Martin Corporation)
 Mapping UML / DAML+OIL di K. Baclawski
 Stephen Cranefied e Martin Purvis: hanno studiato l’uso dei class-diagram UML
per rappresentare ontologie e degli object-diagram UML per rappresentare istanze
 Cranefield sta promuovendo lo sviluppo di ontologie usando UML e
studiando il problema del mapping UML-RDF  tool “UML-Data-Binding”
 Progetto CODIP (Component for Ontology Driver Information Push):
tool DUET (DAML-UML Enhanced Tool), basato su Rational Rose,
che studia un profilo UML per DAML
 F. Bergenti e A. Poggi hanno proposto un approccio basato sull’uso dell’UML
per modellare vari aspetti dei sistemi multi-agente
UBOT (UML Based Ontology Tool-set)
http://ubot.lockheedmartin.com
Progettazione UML nell’ambito del Semantic Web – 15/12/04
ConsVISor
Consistency
checking
XMI models
UML
GUI
Ontology
Engineer
Text or
web pages
XMI models
automatically
generated
UML↔DAML+OIL
Translation
AeroDAML Extraction
to DAML+OIL
DAML+OIL
annotated
text or web pages
AeroText
Text Extraction
DAML+OIL
Ontologies
UML-Data-Binding
S. Cranefield
Progettazione UML nell’ambito del Semantic Web – 15/12/04
http://nzdis.otago.ac.nz/projects
Java
source file
Ontology
Engineer
javac
Java
class file
loads
Applications
XSLT
UML-based
design tool
XMI
Document
references
references
references
XSLT
RDF-Schema
(in XML)
+ Estensioni
Knowledge
(in RDF/XML)
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Conclusioni e sviluppi futuri
Problemi/limiti di mapping  componenti statici dell’UML
Ma l’UML è molto di più:
Ideale per modellare svariati aspetti del Web Semantico
 gestione delle interazioni tra gli agenti software
 organizzazione dei servizi Web offerti
 Confronto dei tool UML  DAML+OIL / RDF
con i traduttori MOMIS ODLI3  RDF(S) / OWL etc...
 Confronto validazione di schemi: ConsVISor / ODB-Tools
 Confronto esprimibilità vincoli: OCL / ODLI3
 Ricerche recenti hanno mostrato come vincoli di integrità UML possono
essere espressi come trasformazioni di grafo del metamodello UML 
Implementazione di questo stile di deduzione in tool UML
Progettazione UML nell’ambito del Semantic Web – 15/12/04
Bibliografia essenziale
Tim Berners-Lee. Semantic web road map. Internal note, W3C. 1998
http://www.w3.org/DesignIssues/Semantic.html
World Wide Web Consortium. http://www.w3.org
Valentina Tamma. Theoretical foundations of ontologies. An Ontology Model supporting
Multiple Ontologies for Knowledge sharing. PhD Thesis, University of Liverpool, 2001
Nicola Guarino. Formal ontologies and information systems. Proceedings of the International
Conference on Formal Ontology in Information Systems (FOIS'98), Trento, Italy, 1998
MOMIS. http://dbgroup.unimo.it/Momis
UML. OMG Unified Modeling Language Specification, ver. 1.4
UBOT. http://ubot.lockheedmartin.com
S. Cranefield. UML and the Semantic Web.
http://www.semanticweb.org/SWWS/program/full/paper1.pdf
Progettazione UML nell’ambito del Semantic Web – 15/12/04
PROGETTAZIONE UML
NELL’AMBITO DEL SEMANTIC WEB
La tesi è consultabile e scaricabile dal sito
www.dbgroup.it
Grazie per l’attenzione
Patrizia Ponchiroli
Scarica

Progettazione UML nell`ambito del Semantic Web