1. Corso sul tema:
Concetti rilevanti
nella modellazione concettuale dei dati
al CSI Piemonte
C. Batini
Universita’ degli Studi di Milano Bicocca
R. Grosso - CSI Piemonte
1
2. Contenuti del corso – primo giorno
• 0. Dott. Bonello – Introduzione al progetto
• 1. Introduzione e scopi del corso
• 2. Le astrazioni utilizzate nella modellazione concettuale
–
–
–
–
–
–
–
Classificazione
Generalizzazione
Aggregazione
Altre astrazioni
Potere espressivo delle astrazioni
I modelli concettuali
Le ontologie
• 3. Il modello Entita’ Relazione
– Concetti rilevanti nel modello
– Relazioni tra astrazioni e concetti nel modello ER
– Vincoli di integrita’
2
3. Contenuti del corso – primo giorno
• 4. Principi di progettazione concettuale
–
–
–
–
–
–
La progettazione top down
La progettazione bottom up
L’astrazione
L’integrazione
L’integrazione/astrazione
La documentazione di schemi: il repository di
schemi concettuali
• Esercizi e studi di caso semplici
3
4. Contenuti del corso – secondo giorno
• 5. L’ attivita’ di ricostruzione del contenuto
concettuale della PA Piemontese
• 5.1 La conoscenza disponibile
– Gli schemi di base
– Gli schemi astratti
– Le gerarchie di concetti
• 5.2 La metodologia adottata
–
–
–
–
Costruzione degli schemi di entita’
Aggiunta delle gerarchie di generalizzazione
Ricostruzione delle relazioni
Attivita’ di verifica
4
5. Contenuti del corso – terzo giorno
• 6. Approfondimento sugli scopi della
modellazione concettuale
– Per comprendere la natura della informazione
– Per confrontare il contenuto informativo di diverse
basi di dati
– Per trovare ridondanze
– Per trovare incoerenze
– Per riconciliare le diverse rappresentazioni della
informazione
– Per costruire una architettura federata della
informazione
5
7. Scopi
• Utilizzare la progettazione concettuale come
strumento per il proprio lavoro
• Comprendere I diversi possibili utilizzi della
progettazione concettuale, specialmente nei
sistemi informativi cooperativi, come quello in
corso di creazione da parte del CSI Piemente
per la PA Piemontese.
• Partecipare attivamente nel processo di
generazione del Repository di schemi
concettuali della PA Piemontese, a partire dal
Repository della PA Centrale Italiana.
7
9. Dato, informazione, conoscenza
• Dato - Rappresentazione codificata di un
frammento di realta’ osservata
• Es. 35
• Informazione - Significato o intepretazione
associata al dato
• Es 35 e’ l’ eta’ di Giovanni
• Conoscenza – Informazione che si puo’ estrarre
mediante ragionamento dai dati
• Es Tutti gli uomini sono mortali, e Socrate e’ un
uomo.
• Quindi Socrate e’ mortale
9
11. Perche’ iniziare con le astrazioni?
• Per abituarci a pensare che nella attivita’ di
modellazione possiamo usare un vasto insieme di
strumenti e linguaggi, e che non esistono solo le
categorie di modellazione del proprio modello
usuale.
• Per scegliere ogni volta le categorie di
astrazione piu’ utili per un certo scopo.
• Per capire quali sono le relazioni trai vari modelli
che utilizziamo.
11
13. Le astrazioni
• Una astrazione e’ un procedimento concettuale
per mezzo del quale creiamo un concetto piu’
generale (e in tel senso piu’ astratto) a partire
da concetti piu’ elementari (e in tal senso piu’
concreti), rimuovendo dalla descrizione del
concetto gli aspetti di dettaglio e particolari e
mettendo in evidenza gli aspetti comuni e
generali.
• I diversi modelli proposti per i dati a livello
concettuale e logico utilizzando, talvolta
implicitamente, un vasto insieme di astrazioni.
13
14. Ad esempio
• La relationship nel modello Entita’ Relazione, come
ad esempio Persona Vive in Citta’, e la relazione nel
modello relazionale, come ad esempio,
• Vive (Codice Fiscale, Codice Citta’)
• Altro esempio di astrazione diffusamente utilizzata
nei modelli e’ la associazione, che a partire da due
concetti permette di crearne uno nuovo, e che
esprime una connessione strutturale tra i due
concetti di partenza.
• La relationship puo’ essere vista come caso
particolare di associazione
14
16. La classificazione
A partire da un insieme di oggetti della realta’ di interesse (ad esempio
gli studenti di una universita’), crea una classe di cui gli oggetti sono
tutte e sole le istanze
Studente
Istanza della
Classe Studente
16
17. La generalizzazione
A partire da un insieme di classi, crea una nuova classe le cui istanze
sono l’unione delle istanze delle classi di partenza.
Nell’ esempio, le istanze della Classe Persona sono la unione delle
istanze delle classi Uomo e Donna
Persona
Uomo
Donna
17
18. La aggregazione
A partire da un insieme di classi, crea una nuova classe di
cui le classi di partenza sono parti componenti.
Nell’esempio, la classe Data ha come parti componenti le
classi Giorno, Mese, Anno
Data
Giorno
Mese
Anno
18
19. Materializzazione
• Materializzazione, mette in relazione una classe
astratta di oggetti (es. Modelli di automobili) con
un insieme di oggetti piu’ concreti (es. Singole
Automobili); a ogni oggetto della classe astratta
corrisponde un sottoinsieme di oggetti della
classe piu’ concreta.
• Es la classe Fiat Panda con l’insieme di tutte le
singole Panda che sono ancora in giro.
19
20. Raggruppamento
• Mette in relazione una classe di oggetti
elementari (es. Giocatori) e una classe di
gruppi (di oggetti elementari) (es. Squadre).
• Es. Giocatori della serie A con Milan,
Juventus, Inter.
• E’ differente rispetto alla materializzazione,
nel senso che in questa si mettono in
relazione oggetti a diverso livello di
astrazione (classe verso oggetti), nel
raggruppamento gli oggetti sono allo stesso
livello di astrazione (classe verso classe).
20
21. Raffinamento
• Mette in relazione una classe C1 con un insieme
di classi CR1, .., Crn.
• La classe C1 e le classi CR1, .., Crn
rappresentano la stessa realta’ di interesse, C1
in modo piu’ astratto, e CR1, .., Crn in modo piu’
concreto.
• Esempio i concetti Residente, Persona, Citta’,
sono un raffinamento del concetto di Residenza.
• Si dice anche che Residenza e’ astrazione di
Residente, Persona, Citta’.
21
22. Ruolo
• Un Ruolo mette in relazione una classe di
oggetti (es Persone) con una classe di loro
collocazioni organizzative o procedurali
(es. Impiegati), in modo da poter
descrivere stati dinamici per la classe di
oggetti.
• Es. Persona del CSI verso Impiegato o
Dirigente o Tecnico, quando lavora,
• Padre o Madre o Single o altro quando e’ in
famiglia.
22
23. Metadati – Attributi dublin core - 1
• I metadati sono ‘tutti gli elementi necessari a
descrivere una risorsa’,
• Noi siamo interessati alla risorsa dato o documento.
• Vari standard per i metadati, il piu’ importante e’ il
Dublin core.
• Ogni elemento del Dublin Core è definito utilizzando
un insieme di dieci attributi dello standard ISO/IEC
11179 [ISO11179] per la descrizione dei dati. Gli
attributi sono:
• Nome – Etichetta assegnata al dato
• Identificatore – Identificativo univoco assegnato al
dato
• Versione – Versione del dato
• Registrazione di autorità – Entità autorizzata a
registrare il dato
23
24. Metadati – Attributi dublin core - 2
• Lingua – Lingua nella quale il dato è indicato
• Definizione – Indicazione che rappresenta chiaramente il
concetto e la natura essenziale del dato.
• Obbligatorietà – Indica se il dato è richiesto sempre o
solo in alcuni casi (contiene un valore)
• Tipo di dato – Indica la tipologia del dato che può essere
rappresentato nel valore del dato stesso
• Occorrenza massima – Indica un limite alla ripetibilità
del dato
• Commento – Un’osservazione che concerne l’applicazione
del dato
• Essi si possono estendere con parole chiave.
24
25. Elementi Dublin core - 1
• Elemento: Titolo
– Nome: Titolo
– Identificatore: Title
– Definizione: Un nome dato alla risorsa
– Commento: In particolare, un Title sarà un
nome con il quale la risorsa è formalmente
conosciuta.
• Elemento: Creatore
• Elemento: Soggetto
• Elemento: Descrizione
• Elemento: Editore
25
26. Elementi Dublin core - 2
•
•
•
•
•
•
•
•
•
•
Elemento: Autore di contributo subordinato
Elemento: Data
Elemento: Tipo
Elemento: Formato
Elemento: Identificatore
Elemento: Fonte
Elemento: Lingua
Elemento: Relazione
Elemento: Copertura
Elemento: Gestione dei diritti
26
27. Le ontologie
• N. Guarino ‘An ontology refers to an
engineering artifact, constituted by a
specific vocabulary used to describe a
certain reality, plus a set of explicit
assumptions regarding the intended
meaning of the vocabulary words'
27
28. Tante definizioni di ontologie
• Ontologie = Modello ER con generalizzazioni +
Thesuarus + funzioni + proposizioni logiche
• Un Thesaurus e’ un elenco di termini per
ciascuno dei quali si definiscono sinonimi,
omonimi, iponimi (cioe’ sottoinsiemi)
• Una funzione e’ una corrispondenza tra domini
• Es Eta’ media e’ una funzione definita tra Eta’ e i
numeri decimali, sommando le Eta’ e dividendo
per il loro numero.
• Una proposizione logica e’ una proprieta’
espressa in un linguaggio logico
• Es. Ogni impiegato guadagna meno del suo capo
28
29. Vantaggi delle ontologie
• Rappresentazione “veramente” formale
• Possibilita’ di costruire ragionamenti, esempi:
• L’ontologie e’ consistente, vi sono cioe’ proprieta’
contraddittorie definite sullo schema?
• Esempio di proprieta’ contraddittorie:
– 1. Ogni impiegato guadagna meno del suo capo
– 2. Esistono impegati che guadagnano piu’ dei loro capi.
• Date due ontologie, quali sono i conflitti di
rappresentazione dei concetti descritti in esse?
• Esempio: In una ontologia colore e’ attributo,
nell’altra e’ entita’.
29
30. Discussione introduttiva sulle ontologie Guarino - 1
• What kinds of ontologies do we need? This is still an open
issue. In most practical applications, ontologies appear as
simple taxonomic structures of primitive or composite terms
together with associated definitions.
• These are the so-called lightweight ontologies, used to
represent semantic relationships among terms in order to
facilitate content-based access to the (Web) data produced
by a given community.
• In this case, the intended meaning of primitive terms is more
or less known in advance by the members of such community.
• Hence, in this case, the role of ontologies is more that of
supporting terminological services (inferences based on
relationships among terms – usually just taxonomic
relationships) rather than explaining or defining their
intended meaning.
• Es. Allegato verso Documento, o Agricoltore verso
• Pastore
30
31. Esempio di ontologia per la PA:l’ontologia dei servizi per le imprese
sottoinsiemi
Esempio di alberatura
Classi in
gerarchia di
generalizzazione
31
32. Discussione introduttiva sulle ontologie Guarino - 2
• On the other hand, however, the need to establishing precise
agreements as to the meaning of terms becomes crucial as
soon as a community of users evolves, or multicultural and
multilingual communities need to exchange data and services.
• Es. faccia il buono alla cassa
• To capture (or at least approximate) such subtle distinctions
we need an explicit representation of the so-called ontological
commitments about the meaning of terms, in order to remove
terminological and conceptual ambiguities. A rigorous logical
axiomatisation seems to be unavoidable in this case, as it
accounts not only for the relationships between terms, but –
most importantly – for the formal structure of the domain to
be represented.
• This allows one to use axiomatic ontologies not only to
facilitate meaning negotiation among agents, but also to
clarify and model the negotiation process itself, and in
general the structure of interaction.
32
33. Modello
• Insieme di categorie di astrazione utili per
determinati scopi
• Nelle basi di dati: descrivere, sviluppare
applicazione, accedere ai dati
33
34. Le ontologie e il modello ER
Ontologie = Modello ER con gen. +
Thesuarus + funzioni + proposizioni logiche
Modello Entita’ Relazione
con generalizzazioni
Modello Entita’ Relazione
originario
34
35. In un modello noi utilizziamo in genere diverse astrazioni
Classificazione
cognome
nome
data di nascita
Lavoratore
codice fiscale
sesso
matricola
stipendio
ufficio
Lavoratore
dipendente
pubblico
Generalizzazione
Candidato
Aspirante ad impiego
pubblico
Nome
Dipendente di
uffici centrali
Dipendente di
uffici periferici
Aggregazione
Regione
Citta’
Risiede
Associazione
35
36. Uno schema nel modello relazionale
LIBRERIA
PARTITA-IVA
NOME
LIBRO
CODICE-L
TITOLO
EDITORE
CODICE
NOME
AUTORE
DISPONIBILITA'
SCRITTO
NOMELIBRERIA
TITOLO
INDIRIZZO
COGNOME
CODICE
LIBRO
CITTA'
PAGINE
NAZIONALITA'
NUMERO
COPIE
COGNOME
36
SESSO
37. Un’ultima proposta
• Corpus based representation
• Nasce dalla constatazione della pratica impossibilita’ di
costruire schemi concettuali / ontologie integrate di
grandi domini.
• Una corpus based representation e’ un insieme di
frammenti di schemi/ontologie + un insieme di
statistiche/ analisi su essi, in cui sono volutamente
assenti schemi integrati globali o parziali.
• Es. Quale e’ la frequenza dei termini?
• Persona o sottocategorie
500
• Impresa o sottocategorie
300
20
• Agricoltore
1
• Spazzacamino
37
39. Confronto tra modelli
Basso
Alto
Comprensibilita’
Modello
Ontologie relazionale
Costo di
Produzione
Modello ER con
generalizzazioni
Modello ER con
generalizzazioni
Modello
relazionale
Ontologie
Potenza
espressiva
Modello
relazionale
Modello ER con
generalizzazioni
Ontologie
Eseguibilita’
in un DBMS
Ontologie
Modello ER con
generalizzazioni
39
Modello
relazionale
40. Utilita’ per I nostri scopi
Basso
Alto
Comprensibilita’
- +
Costo di
Produzione
+-
Modello
Ontologie relazionale
Modello ER con
generalizzazioni
Modello ER con
generalizzazioni
Modello
relazionale
Ontologie
Potenza
Espressiva
Modello
relazionale
- +
Modello ER con
generalizzazioni
Ontologie
Eseguibilita’
in un DBMS
Ontologie
Modello ER con
generalizzazioni
40
Modello
relazionale
41. Efficacia
del modello
Strategia complessiva di utilizzo
di modelli al CSI
Ontologie
Modello ER
con generalizzazioni
Modello ER
originale
Dati e conoscenza
core bussiness
Modello
relazionale
Conoscenza da modellare
41