Slides
Slides
Slides
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Metodologie per la gestione di<br />
conoscenza ontologica<br />
(pillole di conoscenza per suscitare curiosità)<br />
Prof. M.T. PAZIENZA<br />
a.a. 2008-2009<br />
Programma<br />
2. Ontologie e linguaggionaturale<br />
–Ontologylearningfrom text<br />
–Semanticannotation & ontologypopulation<br />
–Ontologybased information extraction systems<br />
3. OntologyDriven Software Engineering<br />
Ingegneria ontologica<br />
Rappresentazione di concetti generali (trasversali<br />
a qualunque dominio applicativo)<br />
tempo, evento, azioni, entità, soldi, misure,<br />
sostanza, mutamenti…<br />
che possono essere rappresentati e riutilizzati in<br />
una qualunque applicazione (non dipende da<br />
essa la loro rappresentazione ed uso)<br />
Programma<br />
1. Introduzione<br />
–12 Wordnet<br />
–13 Ontologie, frameworkontologico<br />
–14 Linguaggiper la gestionedelleontologie<br />
(RDF, RDFS, OWL)<br />
–15 Valutazioni (delleontologie, deitoolbasatisu<br />
ontologie e degliontologyeditors)<br />
1. Introduzione<br />
Sommario<br />
Cosa èuna ontologia<br />
Per Aristotele la derivazioneèunaforma di<br />
specificazione: un umanoèun animalerazionale,<br />
un animaleèuna sostanza vivente, etc.<br />
Una ontologia è una descrizione formale esplicita<br />
(modello) dei concetti di un dominio:<br />
•esprime i legami tra oggetti/eventi del mondo,<br />
legati al loro essere<br />
•incorpora le decisioni sul modo in cui<br />
rappresentare insieme di oggetti e relazioni<br />
•supporta il ragionamento su quegli oggetti/eventi.
Ontologia (ed Intelligenza Artificiale)<br />
La definizionepiù conosciutanell’ambito<br />
dell’Intelligenza Artificialee della rappresentazione<br />
della conoscenzaèquella fornitada Tom Gruber (“A<br />
translational approach to portable ontology specifications”, Knowledge<br />
acquisition, pp. 199-220,1995):<br />
“An ontology is an explicit specification of a<br />
conceptualisation. The term is borrowed from<br />
philosophy, where an Ontology is a systematic<br />
account of Existence”.<br />
Ontologia (ed IntelligenzaArtificiale)<br />
J. Sowa ha datodue diverse definizionidel termine<br />
“ontologia”: la prima daun puntodi vista più<br />
filosofico:<br />
“The subject of ontology is the study of the categories of<br />
things that exist or may exist in some domain.”<br />
la secondalegatamoltodi piùaisuoicollegamenticon il<br />
linguaggionaturale:<br />
“[an ontology] is a catalogue of the types of things that<br />
are assumed to exist in a domain of interest D from<br />
the perspective of a person who uses a language L for<br />
the purpose of talking about D.”<br />
Cosa èuna ontologia<br />
... a constructedmodel of reality, a theory of the world, a theory<br />
of a domain…<br />
Una ontologia rappresenta il modello concettuale di un<br />
mondo.<br />
Il modello concettuale èla struttura formale di (un pezzo<br />
di) realtàpercepita ed organizzata da chi modella.<br />
Una ontologia popolata di istanze e completata con le<br />
regole di inferenza èuna base di conoscenza.<br />
Ontologia (ed IntelligenzaArtificiale)<br />
An ontology defines the basic terms and relations<br />
comprising the vocabulary of a topic area, as well as the<br />
rules for combining terms and relations to define<br />
extensions to the vocabulary (Neches R., Flikes R. E., Gruber T. R.,<br />
PatitR., Senator T., SwartoutW.R.: “ Enabling technologies for knowledge<br />
sharing”, AI Magazine, pp 36,56, 1991)<br />
An ontology provides the means for describing explicitly the<br />
conceptualisation behind the knowledge represented in a<br />
knowledge base (Bernaras A., LaresgoitiI., CoreraJ.: “Building and<br />
reusing ontologies for electrical netrworkapplication”, Proceedings of the 12 th<br />
ECAI, pp296-302, 1996)<br />
Cosa èuna ontologia<br />
Per un sistemaintelligente:<br />
what "exists" is that which can be represented<br />
Quandola conoscenzadi un dominioèrappresentata in<br />
un formalismodichiarativo, allora l’insiemedi oggetti<br />
chepuò essererappresentatosichiama “universodel<br />
discorso”.<br />
Tale insiemedi oggetti, unitamentea tuttol’insieme<br />
dellerelazionitradi loro, siriflettenelvocabolariodi<br />
simbolicon cui un sistemabasatosuconoscenza<br />
rappresentaper l’appuntola suaconoscenza.<br />
Cosa èuna ontologia<br />
Il termine ‘ontologia’ viene usato per descrivere la<br />
costruzionedi una tassonomiadi riferimento.<br />
An ontology is in this context a dictionary of terms<br />
formulated in a canonical syntax and with commonly<br />
accepted definitions designed to yield a lexical or<br />
taxonomical framework for knowledgerepresentation<br />
which can be shared by different<br />
information systems communities.
Ontologia Ontologie<br />
Ontologie<br />
Interesse nel settore dell’Intelligenza Artificiale e<br />
dell’ingegneria della conoscenza<br />
nell’IT (Information Technology) la maggior<br />
parte dei problemi è inerentementesemantica: le<br />
ontologie assumono un ruolo fondamentale nel<br />
rimuovere le ambiguità terminologiche e nella<br />
disambiguazionedelle interpretazioni<br />
Peculiaritàdi una ontologia<br />
Una ontologia ècaratterizzata da:<br />
•tassonomia (di concetti, relazioni tra concetti ed<br />
attributi)<br />
•ereditarietà multipla<br />
•istanziazionemultipla<br />
•inferenza<br />
Un’ontologia denota una classe di oggetti la cui<br />
funzione principale è fornire una specifica<br />
parziale di un insieme di concettualizzazioniper<br />
un sistema computazionale.<br />
Un’ontologia modella categorie e possibili<br />
relazioni tra loro relativamente ad una realtà<br />
(dominio) e ad un obiettivo (task).<br />
Ontologia<br />
Una ontologia èuna sorgente di terminiformalmente definitia<br />
supporto della comunicazione. Formalmente una ontologia èuna<br />
complessa gerarchia di nodiconcetto ciascuno deiqualipuò essere<br />
rappresentato come:<br />
concept-name<br />
(property-slot preperty-value)+<br />
Ogni concetto ha unao piùproprietà. Ciascun concetto (ad eccezione<br />
della radice) ha la proprietà IS-A ed il valore della proprietà èil<br />
padre di questo concetto, il nodo più alto; es:<br />
moments<br />
is-a intervals<br />
(property-slot preperty-value)+<br />
Ragionamento supportato da ontologie<br />
Categorie Inferenza<br />
Si riconosce un oggetto reale tramite le percezioni fisiche<br />
ad esso collegate (oggetto ovale, dim.7*3.5 cm, buccia<br />
sottile marrone scuro, su banco fruttivendolo)<br />
Si inferisce l’appartenenza dello specifico oggetto ad una<br />
categoria dalle sue proprietà cosìcome percepite (frutta<br />
di tipo kiwi)<br />
Si usa la conoscenza sulla categoria per predire ulteriori<br />
proprietàdello specifico oggetto (ricco di vitamina C,<br />
aiuta a prevenire l’influenza)
Categorie Inferenza<br />
-Kiwi isa Frutta isa Cibo<br />
-Cibo è commestibile<br />
Kiwi è commestibile<br />
Typesof ontologies (N. Guarino 1998)<br />
Describe very general concepts like space, time, event, which are<br />
independent of a particular problem or domain. It seems reasonable to have<br />
unified top-level ontologies for large communities of users.<br />
Describethe vocabulary<br />
related to a<br />
genericdomain<br />
byspecializingthe<br />
concepts introduced in<br />
the top-levelontology.<br />
These are the most specific ontologies. Concepts in application ontologies<br />
often correspond to roles played by domain entities while performing a<br />
certain activity<br />
Ontologia di dominio<br />
Describethe vocabulary<br />
related to a<br />
generictask or activity<br />
by specializingthe toplevelontologies.<br />
…in practicalterms, it isa highlystructuredsystem<br />
of conceptscoveringthe processes, objects, and<br />
attributesof a domainin allof theirpertinent<br />
complexrelations, tothe grainsize determinedby<br />
suchconsiderationsasthe needof anapplication<br />
or computationalcomplexity….<br />
Categorie Ereditarietà<br />
Un oggetto appartiene ad una categoria (kiwi isa<br />
Kiwi)<br />
Una categoria può essere sottoclasse di un’altra<br />
categoria (Kiwi isa Frutta)<br />
Ogni categoria ha proprietàdistintive (Kiwi ha<br />
molti semi piccoli, Avocado ha 1 seme grande)<br />
Sottoclassi di una stessa categoria identificano<br />
insiemi disgiunti di elementi (Kiwi # Avocado)<br />
Gli elementi di una categoria condividono le sue<br />
proprietàe quelle degli antenati<br />
Ontologia di dominio<br />
Una ontologia (di dominio) esprime i legami tra<br />
oggetti/eventi (specifici di quel dominio senza contraddire<br />
quanto abbia validità generale); èuna descrizione esplicita<br />
del mondo (dominio) attraverso:<br />
• Concetti (in classi organizzate gerarchicamente)<br />
• Proprietàed attributi dei concetti<br />
• Vincoli sulle proprietà ed attributi<br />
• Istanze (possono anche non esserci)<br />
Una ontologia di dominio definisce:<br />
• un vocabolario comune (terminologia)<br />
• un modo di ragionare condiviso (rispetto al dominio)<br />
Ontologia di dominio<br />
E’necessario identificare sin dall’inizio dello<br />
sviluppo di un’ontologia di dominio:<br />
• l’estensione/copertura del dominio<br />
• i suoi scopi<br />
• i tipi di domanda a cui trovare risposte<br />
nell’ontologia<br />
• la possibilitàdi riuso (per limitare l’effort futuro,<br />
così come usare ontologie già testate positivamente in<br />
altre applicazioni)
Ontologia di dominio<br />
Qualunque ontologia di dominio viene descritta<br />
usando linguaggi formali che consentano di<br />
codificare:<br />
• Costanti predicative unarie (classi/tipi)<br />
• Costanti individuali (individui/istanze)<br />
• Costanti predicative relazionali<br />
(relazioni/proprietà/attributi/slot)<br />
• Assiomi sulle classi (vincoli/restrizioni/regole) che usano un<br />
insieme ristretto di operatori (operatoribooleani/quantificatori)<br />
Costruireontologie<br />
Le ontologiepossonoessererappresentatecon<br />
formalismidi diversa complessità ed espressività:<br />
cataloghi, glossari, tassonomie, thesauri, schemi<br />
relazionali, teorieassiomatiche,...<br />
Una rappresentazionepiù complessa(e più costosa in<br />
fasedi modellazionee sviluppo) fornisceunapiù<br />
precisarappresentazionedel dominiodi interesse<br />
imponendoeventualmentevincoliper l’integrità dei<br />
dati, consentendoinferenze, etc.<br />
Suggerimenti per lo sviluppo di ont.<br />
• Scrivere nelle ontologie concetti di validità generale,<br />
aggiungere regole specifiche dell’applicazione<br />
• Limitare l’ambito di “copertura”dell’ontologia<br />
• Identificare in maniera univoca la tipologia di relazione<br />
rappresentata (valida per tutti i livelli)<br />
• Rendere omogenee le entitàrappresentate per poter<br />
applicare su esse analoghe proprietà o proprietà<br />
comparabili<br />
• Definire più ontologie separate e, eventualmente,<br />
ragionare su di esse separatamente<br />
• Riconoscere (gestire o bloccare) nel tempo e nello<br />
spazio i nessi tra gli eventi<br />
Ontologia di dominio<br />
ontologia<br />
Fornisce<br />
descrizioni di<br />
dominio<br />
Agenti softw.<br />
Dichiara le strutture<br />
Metodi Pr.Sol.<br />
Applicazioni<br />
Costruireontologie<br />
Base di dati<br />
Base conosc.<br />
1. Non esiste un’unica metodologia corretta per costruire<br />
una ontologia; la soluzione migliore dipende sempre<br />
dall’uso che si faràdell’ontologia.<br />
2. La costruzione dell’ontologia èun processo iterativo.<br />
Una prima versione dell’ontologia viene solitamente<br />
valutata, discutendone il contenuto con esperti di<br />
dominio o utilizzandola in una applicazione reale.<br />
Successivamente l’ontologia viene raffinata e<br />
migliorata.<br />
3. I concetti dell’ontologia sono generalmente oggetti<br />
(nomi) e relazioni (verbi) del mondo di interesse.<br />
Costruireontologie<br />
In pratica lo sviluppodi una ontologia prevede:<br />
• definizionedelleclassidell’ontologia (termini di<br />
dominiopossonoessereidentificaticome concetti/classi),<br />
• strutturazionedelleclasssiin unagerarchiatassonomica<br />
(superclassi, sottoclassi),<br />
• definizionedi slot e descrizionedeivaloriammessiper<br />
glislot<br />
• valoridi possibiliistanze<br />
A questopuntosipuòcreareunabase di conoscenza<br />
definendole specificheistanzedelleclassie riempiendo<br />
glislot con i valorie restrizioniulteriori.
Implementation<br />
Protégé2000 is an ontology editor and a knowledge-base<br />
editor. It is also an open-source, Java tool that provides<br />
an extensible architecture for the creation of customized<br />
knowledge-based applications<br />
The latest version of Protégé2000 supports OWL<br />
Ontologie, tassonomie, basi di conoscenza<br />
Riferimenti (2) (letture per cominciare)<br />
•NatalyaF. Noy and Deborah L. McGuinness: “Ontology Development 101: A<br />
Guide to Creating Your First Ontology , Stanford University, Stanford, CA, 94305<br />
“http://protege.stanford.edu/publications/ontology_development/ontology101.pdf<br />
•University of Buffalo http://ontology.buffalo.edu<br />
•Paul Buitelaar, Philipp Cimiano, Marko Grobelnik, Michael Sintek<br />
http://www.aifb.uni-karlsruhe.de/WBS/pci/OL_Tutorial_ECML_PKDD_05/ECML-<br />
OntologyLearningTutorial-20050923.pdf<br />
•University of Manchester http://www.cs.man.ac.uk/~horrocks/<br />
•Developing Ontologies : for medical domain by Dr. Rogers<br />
http://www.xmluk.org/public/magic-cicle-2002.htm#medical<br />
•S. Staab and A. MaedcheFrom KarlsruheUniversity<br />
http://events.aifb.uni-karlsruhe.de/ontologytutorial<br />
35<br />
Review the steps …<br />
Ontology Purpose,<br />
Goals, Scope<br />
Integration with another<br />
ontology<br />
Ontology Implementation<br />
Experts interview<br />
results, text analyses<br />
Domain concepts, instances,<br />
relations and properties<br />
Evaluation for<br />
Completeness<br />
Consistence<br />
redundancy<br />
Documentation<br />
Riferimenti (1) (letture per cominciare)<br />
• Tom Gruber :“A translational approach to portable ontology specifications”,<br />
Knowledge acquisition, pp. 199-220,1995<br />
• NechesR., Flikes R. E., Gruber T. R., PatitR., Senator T., SwartoutW.R.: “<br />
Enabling technologies for knowledge sharing”, AI Magazine, pp 36,56, 1991<br />
• Bernaras A., LaresgoitiI., CoreraJ.: “Building and reusing ontologies for<br />
electrical netrworkapplication”, Proceedings of the 12 th ECAI, pp296-302,<br />
1996<br />
• Guarino N.: Formal ontologies in information systems”, Proceedings of<br />
Formal Ontology and Information Systems, 1998<br />
• Arash Shaban-Nejad: tutorial on “Ontology: Foundation of Semantic Web”,<br />
2004<br />
• F. Bianchini, A.M. Gliozzo, M. Matteuzzi: “Instrumentum vocale: intelligenza<br />
artificialee linguaggio”, BononiaUniversity press, 2008<br />
• M. Gruninger, O. Bodenreider, F. Olken, L. Obrst, P. Yim: “Ontology,<br />
taxonomy, folksonomy: understanding the distinctions”, Applied Ontology<br />
journal, 3 (2008) pagg.191-200<br />
Riferimenti (3) (letture per cominciare)<br />
Freely available repositories of domain ontologies<br />
•SWOOGLE http//swoogle.umbc.edu<br />
•DAML http//www.cse.dmu.ac.uk<br />
•Ontolingua http//www.ksl.stanford.edu/software/ontolingua/<br />
36
Metodologie per la gestione di<br />
conoscenza ontologica<br />
Prof. M.T. PAZIENZA<br />
a.a. 2008-2009<br />
Risorse linguistiche<br />
Anche se alcune risorse sono state costruite<br />
inizialmente come risorse linguistiche e non<br />
come una astrazione di un particolare<br />
dominio, in alcuni casi esse hanno dimostrato<br />
di costituire un importante punto di partenza<br />
per lo sviluppo di ontologie.<br />
–Es. WordNet, con oltre 100000 sensi<br />
Ontologie “linguistiche”<br />
Sistemi di simboli che rappresentano i concetti<br />
codificati da espressioni in linguaggio naturale<br />
(unitàlessicali, termini, ecc.)<br />
–Specificano le classi semantiche raggruppando termini<br />
simili a livello semantico<br />
–Usano un linguaggio di rappresentazione semantica<br />
car, van, truck<br />
dog, cat, horse<br />
beach<br />
spiaggia<br />
piano concert, rock concert<br />
VEHICLE<br />
MAMMAL<br />
ARTIFACT<br />
ANIMAL<br />
BEACH<br />
CONCERT<br />
OBJECT<br />
LOCATION<br />
EVENT<br />
ENTITY<br />
1. Introduzione<br />
–Wordnet<br />
Semantic Web<br />
Ontologies<br />
Sommario<br />
Ontologie e lessici<br />
computazionali<br />
Access to<br />
Content<br />
?<br />
HLT<br />
Computational<br />
Lexicons<br />
Lessici computazionali semantici<br />
Rappresentano il significato di una parola<br />
–Distinguono differenti sensi di una parola<br />
–Catturano le inferenze (essere umano essere<br />
animato)<br />
–Rappresentano similarità, relatedness ecc. (es.<br />
banca, conto, denaro sono concetti tra loro<br />
collegabili in un ambito finanziario)
Lessici semantici - WordNet<br />
• I lessici sono in genere organizzati alfabeticamente.<br />
• In sostanza, riproducono la struttura dei normali<br />
dizionari, in quanto rendono disponibili informazioni<br />
a partire dalle parole (dai lemmi, ecc.)<br />
• E’possibile organizzare un lessico su base diversa,<br />
per esempio, concettuale<br />
Polisemia e sinonimia<br />
Un certa parola, (es. ‘cane’, “radice”) può avere sensi differenti,<br />
cioè può esprimere più concetti a seconda del contesto; si dice in<br />
tal caso polisemica<br />
• cane = mammifero, amico dell’uomo, ecc..<br />
• cane = parte metallica di arma da fuoco che percuotendo la<br />
polvere da sparo, dàluogo all’esplosione<br />
• radice = parte da cui origina una pianta, in genere sotterranea …<br />
• radice =operazione matematica, inversa dell’elevamento a<br />
potenza…<br />
Inferenze basate su sinonimia<br />
Supponiamo di cercare, all’interno di vari documenti,<br />
quelli in cui compare il concetto di casa/abitazione<br />
• La casa era in fondo alla strada………<br />
• L’architetto ha progettato l’abitazione in modo che…..<br />
• L’edificio si trova………<br />
• Il giudice si recò al suo domicilio…..<br />
Parole e concetti<br />
Le parole, es. ‘cane’, ‘mangiare’, ecc. esprimono concetti.<br />
Il cane è un mammifero<br />
La frase ha tra i suoi costituenti ‘il’ ‘cane’ ‘mammifero’…<br />
La proposizione ha tra i suoi costituenti i concetti di cane e<br />
mammifero<br />
I concetti sono, in un certo senso, i costituenti del significato<br />
(ovvero di ciò che vogliamo comunicare).<br />
Per comprendere la proposizione dobbiamo comprendere i<br />
concetti espressi dai suoi costituenti<br />
Polisemia e sinonimia<br />
Al contrario, uno stesso concetto può essere espresso da<br />
parole diverse (sinonimi)<br />
casa, abitazione, magione, domicilio…<br />
calcolatore, elaboratore<br />
ruotare, girare<br />
Sia la sinonimia che la polisemia, non sono proprietà<br />
assolute, ma dipendono dal contesto<br />
WordNet (WN)<br />
In WordNet, i nomi sono suddivisi in 15 gerarchie<br />
tra di loro separate.<br />
La radice di ognuna di esse corrisponde ad una sorta<br />
di primitivo semantico.<br />
{attività}, {animale}, {artefatto}, {attributo},<br />
{corpo}, {cognizione, conoscenza},<br />
{comunicazione}, {evento, avvenimento}, ……
WordNet (WN)<br />
WordNet (WN) èun database lessicale per l’inglese l inglese<br />
• con un’alta copertura di entries lessicali inglesi (N, V,<br />
Agg, Avv) e<br />
• informazioni su relazioni lessicali e semantiche tra le<br />
entries, tra cui<br />
1. Sinonimia (automobile, macchina)<br />
2. Iponimia - a kind of -(ambulanza, automobile)<br />
3. Meronimia – has part –(mano, dita)<br />
4. Antonimia (giorno, notte)<br />
WordNet (WN) organizzazione<br />
Tabelle (files) separate per le diverse categorie<br />
sintattiche (N, V, Agg, Avv)<br />
Links tra parole e synset ed anche tra synset (che<br />
rappresentino relazioni sintattiche)<br />
Es.{persone, individui, mortale, umano }<br />
a kind of {organism, being}<br />
a kind of {living thing, animate thing}<br />
a kind of {object, physical object}<br />
a kind of {entity, physical thing}<br />
Ontologie<br />
Le relazioni fondamentali (ontologiche) sono:<br />
Hyponimia o inclusione (is-a, isa, IS-A, ISA,..) tra<br />
nomi di entità<br />
Troponimia tra verbi e processi<br />
Meronimia tra entità(nel senso di intero e sue parti)<br />
WordNet (WN) organizzazione<br />
L’elemento fondamentale è il<br />
synset = synonym set<br />
Un synset èequivalente ad un concetto<br />
Un concetto viene espresso tramite un synset<br />
Es. sensi di “car”(synset a cui “car”appartiene)<br />
{car, auto, automobile, machine, motorcar}<br />
{car, railcar, railway car, railroad car}<br />
{cable car, car}<br />
{car, gondola}<br />
{car, elevator car}<br />
WordNet<br />
WordNet definisce concetti come cluster di termini,<br />
cosiddeti synsets. Oltre 100.000 synsets sono stati<br />
definiti e collegati gerarchicamente con una relazione<br />
di sussunzione (detta iponimia) e definita come segue :<br />
“A concept represented by the synset {x, x′, …} is said<br />
to be a hyponym of the concept represented by the<br />
synset {y, y′,…} if native speakers of English accept<br />
sentences constructed from such frames as ‘An x is a<br />
kind of y”.<br />
WN non èuna ontologia, ma da molti èusata come tale<br />
Hyponimia<br />
La relazione di inclusione èmolto potente ed usata<br />
ampiamente nella definizione delle strutture<br />
concettuali di ogni tipo cercando di catturare<br />
l’intuizione dell’umano che suggerisce l’esistenza di<br />
categorie “naturali”di hyponimi.<br />
Una speciale tipologia di hyponimia è la relazione<br />
tassonomica (is-a-kind-of) che struttura verticalmente<br />
le gerarchie tassonomiche.<br />
Le relazioni: tassonomica e di hyponimia condividono la<br />
stessa impostazione prospettica
Troponimia<br />
Piuttosto che specificare per tipo, la relazione troponomica<br />
correla coppie di verbi considerando la maniera in cui<br />
esprimere membri superordinati e membri subordinati.<br />
In tal modo troponimia èla relazione fondamentale per<br />
l’organizzazione del significato dei verbi.<br />
Differenti classi semantiche verbali si distinguono per il<br />
loro comportamento sintattico e per le caratteristiche che<br />
esprimono ai differenti livelli; in alcuni casi si<br />
evidenziano specificità sintattiche a livello di coppie di<br />
verbi superordinati (piùelaborati) rispetto a coppie di<br />
verbi subordinati (non elaborati).<br />
Meronimia<br />
La relazione part-of ètransitiva e riflessiva<br />
part-of(Bucarest, Romania)<br />
part-of(Romania, EuropaOrientale)<br />
part-of(EuropaOrientale, Europa)<br />
part-of(Europa, Terra)<br />
part-of(x,x)<br />
Inferenze basate su sinonimia<br />
Supponiamo di cercare, all’interno di vari documenti,<br />
quelli in cui compare il concetto di casa/abitazione<br />
• La casa era in fondo alla strada………<br />
• L’architetto ha progettato l’abitazione in modo che…..<br />
• L’edificio si trova………<br />
• Il giudice si recò al suo domicilio…..<br />
Meronimia<br />
Le due relazioni di tassonomia (is-a-kind-of) e<br />
meronimia (part-of) hanno punti di similarità.<br />
Le differenze tra di loro hanno importanti riflessi<br />
nella organizzazione e rappresentazione della<br />
conoscenza<br />
Struttura diWordNet<br />
{conveyance; transport}<br />
{vehicle}<br />
hyperonym<br />
{motor vehicle; automotive vehicle}<br />
{car; auto; automobile; machine; motorcar}<br />
hyperonym<br />
hyperonym<br />
hyperonym<br />
hyperonym<br />
meronym<br />
meronym<br />
{cruiser; squad car; patrol car; police car; prowl car} {cab; taxi; hack; taxicab; }<br />
{bumper}<br />
{car door}<br />
{car window}<br />
{car mirror}<br />
meronym<br />
{hinge; flexible joint}<br />
{doorlock}<br />
meronym<br />
{armrest}<br />
Inferenze basate su ipo/iperonimia<br />
Ho visto un pettirosso<br />
Ho visto un uccello<br />
Ho visto un animale<br />
Ho visto un essere vivente<br />
………….
Ereditarietà<br />
Gli hanno regalato un libro di piùdi cinquecento<br />
pagine ed una bicicletta. Carlo ha letto il romanzo<br />
in meno di una settimana.<br />
Mario comprò un chilo di filetto.<br />
Rappresentare concetti lessicali<br />
Per concetto lessicale si intende un concetto<br />
per il quale, in una data lingua, esiste un<br />
modo semplice (parola semplice, parola<br />
composta, ecc.) per esprimerlo.<br />
• casa èun concetto lessicale<br />
• casa di mattoni, casa bianca non lo sono<br />
{automobile, macchina} is-a<br />
{veicolo} is-a<br />
{mezzo di trasporto }<br />
……………..<br />
{mezzo di trasporto}<br />
Is-a<br />
{veicolo}<br />
Is-a<br />
{automobile,macchina}<br />
Anafora e riferimenti<br />
• Gli ho regalato un romanzo, ma il libro lo ha<br />
annoiato.<br />
vGli ho regalato un romanzo, ma il film lo ha<br />
annoiato.<br />
• Carlo ha comprato un pappagallo. Il povero animale<br />
era denutrito.<br />
• Carlo ha comprato un pappagallo. Il pesce era<br />
denutrito.<br />
Rappresentare concetti lessicali<br />
Si può rappresentare un concetto lessicale come<br />
l’insieme delle parole sinonime (synset) che esprimono<br />
quel dato concetto.<br />
{automobile, macchina}<br />
{babbo_natale, papà_natale, santa, santa_claus}<br />
e mettere in relazione synsets (rappresentazioni di<br />
concetti lessicali) tramite le relazioni di iponimia ed<br />
iperonimia.<br />
Rappresentare concetti lessicali<br />
Criterio di massima per includere due parole nello<br />
stesso synset:<br />
Una persona di lingua madre deve poter sostituire<br />
l’una con l’altra nella maggior parte dei contesti<br />
• La casa di Mario èbella<br />
• L’abitazione di Mario èbella<br />
vL’edificio di Mario èbello<br />
vIl domicilio di Mario èbello
Riferimenti (letture per cominciare)<br />
• Fellbaum C.: “WordNet: An Electronic Lexical<br />
Database”, MIT Press, 1998
Metodologie per la gestione di<br />
conoscenza ontologica<br />
Prof. M.T. PAZIENZA<br />
a.a. 2008-2009<br />
Ontologiee Basi di conoscenza<br />
Ontologie, tassonomie, folksonomie<br />
Tra le ontologie vere e proprie e le folksonomie si<br />
collocano le tassonomie (modelli concettuali e<br />
vocabolari controllati con organizzazione in<br />
genere gerarchica) spesso usati per operazioni di<br />
information indexing e retrieval.<br />
E’necessario identificare delle dimensioni chiave<br />
che definiscano le ontologie oltre a definire<br />
operativamente tali dimensioni<br />
3<br />
Sommario<br />
1. Introduzione<br />
–Wordnet<br />
–Ontologie, framework ontologico<br />
Ontologie, tassonomie, folksonomie<br />
In comunità diverse, per definire entità e le relazioni tra loro<br />
esistenti, vengono creati artefatti di diversa tipologia,<br />
ciascuna con finalità proprie quali:<br />
• dataset di annotazione,<br />
• supporto alla comprensione del linguaggio naturale,<br />
• integrazione di risorse differenti,<br />
• interoperabilità semantica,<br />
• conoscenza di background in applicazioni,<br />
• liste di parole-chiave per annotare risorse web<br />
(folksonomie).<br />
Tutti questi artefatti vengono assimilati ad “ontologie”<br />
Framework ontologico<br />
E’possibile sviluppare ontologie anche con una<br />
conoscenza parziale della loro definizione,<br />
implementazione e scopo applicativo.<br />
Obiettivo: fornire un framework che supporti la<br />
diversità (e non la divergenza) assicurando di<br />
mantenerne la stabilità e la riusabilità<br />
all’interno di approcci ontologici differenti.
Framework ontologico<br />
Il framework ontologico è condizione<br />
fondamentale per specificare metadati per<br />
ontologie diverse; tali metadati includono le<br />
proprietà e le caratteristiche usate per<br />
descrivere una ontologia.<br />
Ciò a supporto della condivisione, riuso e<br />
confronto di ontologie<br />
Espressività<br />
L’espressivitàèuna caratteristica del linguaggio in<br />
cui una ontologia èprodotta. Una ontologia<br />
definisce il proprio vocabolario in una qualche<br />
forma di rappresentazione.<br />
Informalmente una ontologia può essere espressa<br />
soltanto da una lista di termini e da definizioni in<br />
linguaggio naturale (inglese, italiano,…) .<br />
Ciò produce confusione tra “ontologie” ed il<br />
linguaggio usato per rappresentare le ontologie.<br />
Framework ontologico<br />
Possiamo identificare 2 gruppi di dimensioni:<br />
1.dimensioni semantiche (espressività,<br />
granularità strutturale e rappresentazionale)<br />
2.dimensioni pragmatiche (uso previsto,<br />
supporto di ragionamento automatico,<br />
identificazione della descrittività o della<br />
prescrittività di una ontologia, metodologia di<br />
disegno, …)<br />
Dimensioni semantiche<br />
Una ontologia include un vocabolario e una specificazione della<br />
interpretazione sottesa (significato) di ciascun termine del<br />
vocabolario.<br />
La specificazione include:<br />
1. identificazione delle categorie fondamentali nel dominio<br />
2. identificazione dei modi in cui membri delle categorie sono<br />
correlati tra loro<br />
3. vincoli sui modi in cui le relazioni possono essere usate<br />
Le dimensioni semantiche caratterizzano come un dato approccio<br />
specifichi i significati dei termini; ciò comprende l’espressività<br />
del linguaggio di rappresentazione ontologica, le proprietà<br />
strutturali, la granularità della rappresentazione delle<br />
specificazioni ontologiche<br />
Proprietàstrutturali<br />
Il livello di struttura spesso corrisponde alla formalità delle definizioni<br />
dei termini nel vocabolario.<br />
• Una ontologia che specifica formalmente i concetti (es. astrazione<br />
matematica) ha molte proprietà strutturali<br />
• Una ontologia che specifica poco i concetti (es. documento,<br />
hyperlink) ha poche proprietà strutturali<br />
• Molte ontologie sono semistrutturate contenendo un mix di<br />
definizioni formali ed informali di concetti e relazioni (es. ontologia<br />
bibliografica con concetto tempo altamente strutturato e concetto<br />
titolo di libro scarsamente strutturato – stringa di testo-)
Proprietàstrutturali Granularità<br />
Confronto tra ontologie<br />
Le ontologie possono essere confrontate<br />
rispetto ai linguaggi con espressività<br />
minima richiesta per definire il loro<br />
vocabolari<br />
Le tassonomie richiedono un linguaggio più<br />
ristretto per specificare la relazione di<br />
“sottoclasse” tra classi<br />
Dimensioni pragmatiche<br />
Si può misurare la tipologia di ragionamento automatico<br />
supportato dall’ontologia: a livello di specificazione si<br />
valutano i vincoli sia sul linguaggio che sul contenuto<br />
• Ragionamento semplice (fare inferenze usando la<br />
relazione di ereditarietàdelle proprietàtra<br />
classi/sottoclassi)<br />
• Ragionamento speciale (il reasoner può fare asserzioni<br />
arbitrarie nel linguaggio di rappresentazione della<br />
conoscenza)<br />
• Ragionamento generale (uso di regole deduttive che<br />
combinano informazioni attraverso l’ontologia)<br />
La granularità èuna proprietà del contenuto della ontologia e non<br />
del linguaggio di rappresentazione; attiene alla numerositàdi<br />
concetti e relazioni nel proprio vocabolario.<br />
La granularità èmisurabile con la profondità media delle sottoclassi<br />
e/o sottoproprietà, la densità media dei termini nella gerarchia, il<br />
numero medio di assiomi per termine<br />
Ridotta granularità se si usano primitive di rappresentazione ad alto<br />
livello (come accade nelle tassonomie con concetti e<br />
sussunzione),<br />
Granularità fine (come nelle ontologie con molti dettagli circa le<br />
proprietà dei concetti e di come essi relazionino tra loro.<br />
Dimensioni pragmatiche<br />
L’uso previsto può determinare la proprietàdi una<br />
ontologia:<br />
• condividere una base di conoscenza<br />
• migliorare la comunicazione tra agenti<br />
• supporto alle decisioni<br />
• rappresentazione del vocabolario di un linguaggio<br />
naturale<br />
• rappresentazione della semantica per servizi ed<br />
applicazioni software<br />
• fornire un framework concettuale per l’indicizzazione di<br />
contenuti<br />
Dimensioni pragmatiche<br />
Uso descrittivo/prescrittivo si riferisce alla sorgente di<br />
interpretazione attesa del vocabolario dell’ontologia.<br />
Nell’approccio descrittivo il contenuto di una ontologia<br />
descrive l’interpretazione attesa caratterizzando le entità<br />
e le relazioni tra entitàcome lo farebbe un utente/esperto<br />
Nell’approccio prescrittivo il contenuto di una ontologia<br />
prescrive le interpretazioni attese forzando così il modo<br />
in cui entità e relazioni debbano essere caratterizzate
Dimensioni pragmatiche<br />
Le metodologie di disegno usate nella costruzione di una<br />
ontologia ne determinano il modo d’uso e sono strettamente<br />
connesse all’uso previsto.<br />
Una metodologia bottom-up (o empirica) pone enfasi<br />
sull’analisi dei dati e la loro semantica; si suppone che<br />
questo approccio possa far emergere patterns di<br />
caratterizzazione preferiti da comunitàdi utenti<br />
Una metodologia top-down (o razionalista) pone enfasi sullo<br />
sviluppo di una ontologia a partire dalla conoscenza sul<br />
mondo o sul dominio. L’ontologia in tal caso è indipendente<br />
dai dati reali. Lo scopo dell’ontologia in tal caso è<br />
determinato dalla classe di domande che un esperto di<br />
dominio può porre.<br />
Riferimenti (letture per cominciare)<br />
• Arash Shaban-Nejad: tutorial on “Ontology:<br />
Foundation of Semantic Web”, 2004<br />
• M. Gruninger, O. Bodenreider, F. Olken, L. Obrst, P.<br />
Yim: “Ontology, taxonomy, folksonomy:<br />
understanding the distinctions”, Applied Ontology<br />
journal, 3 (2008) pagg.191-200<br />
Dimensione di<br />
Governance delle ontologie<br />
La governance attiene a come le decisioni relative alla struttura ed al<br />
contenuto sono state prese ed include la specificazione dei criteri<br />
di qualità e di certificazione.<br />
Si potrebbe demandare alle organizzazioni professionali o di<br />
categoria (piuttosto che a validi ricercatori o ingegneri della<br />
conoscenza) la definizione in linguaggio naturale delle entità e<br />
delle relazioni semantiche intesa come uno sforzo per<br />
formalizzare i concetti. Ciò potrebbe far riferimento a legislazioni<br />
specifiche , regolamenti standard usati per le definizioni e<br />
permetterebbe di valutare formalmente la bontà dei risultati<br />
ottenuti dalle applicazioni
Metodologie per la gestione di<br />
conoscenza ontologica<br />
Prof. M.T. PAZIENZA<br />
a.a. 2008-2009<br />
Linguaggidi gestionedelleontologie<br />
Linguaggi formali per la definizione di ontologie e basi di<br />
conoscenza, per supportare il ragionamento su di esse ed<br />
interrogarle.<br />
RDF produce specifiche di contenuto grazie alle triple<br />
(soggetto-predicato-oggetto)<br />
RDFS che usa le triple per dichiarare le classi e le relazioni<br />
valide sulla base di conoscenza<br />
OWL (Web OntologyLanguage) èun linguaggio di markup<br />
per rappresentare esplicitamente ontologie ( semantica<br />
formale di termini e relazioni tra i termini).<br />
Resource Description Framework<br />
(RDF)<br />
Il Resource Description Framework (RDF) rientra nelcontesto delle<br />
specificazionidel World Wide Web (W3C); originariamente<br />
disegnato come metadata data model, è poi diventato un metodo<br />
generale per modellare l’informazione in una molteplicità di<br />
formatisintattici<br />
Una collezione di statements RDF rappresenta intrinsecamente un<br />
labeled directed multigraph.<br />
In quanto tale un RDF-based data model è più idoneo ad esprimere<br />
certitipi di rappresentazione della conoscenza di quanto non lo<br />
siano ilmodello relazionale ed altrimodelliontologici.<br />
Sommario<br />
1. Introduzione<br />
–Wordnet<br />
–Ontologie, framework ontologico<br />
–Linguaggiper la gestionedelleontologie<br />
(RDF, RDFS, OWL)<br />
Resource Description Framework<br />
(RDF)<br />
Il Resource Description Framework(RDF) èun framework per la<br />
descrizione della conoscenza sul web. Esso è stato specificatamente<br />
creato per la descrizione dei metadatirelativi alle risorse.<br />
RDF è sostanzialmente un modello formale di dati dotato di sintassi di<br />
interscambio, un sistema di schemi di tipo ed un linguaggio<br />
d’interrogazione<br />
RDF si basa su tre principi chiave:<br />
• qualunque cosa può essere identificata da un URI (Universal<br />
Resource Identifier -URL o URN)<br />
• the least power: utilizzare il linguaggio meno espressivo per<br />
definire qualunque cosa<br />
• qualunque cosa può dire qualunque cosa su qualunque cosa<br />
Resource Description Framework<br />
(RDF)<br />
Qualunque cosa descritta da RDF èdetta risorsa. Ogni risorsa èidentificata da un<br />
URI.<br />
In genere una risorsa èreperibile sul Web (UniversalResourceLocatorURL ), ma<br />
RDF può descrivere anche risorse che non si trovano direttamentesul Web<br />
(UniversalResourceNameURN).<br />
Nel data model di RDF si descrive la risorsa nella forma di uno statement<br />
soggetto-predicato-oggettto (triple)<br />
dove il soggetto èuna risorsa, il predicato èuna proprietàe l’oggetto èun valore<br />
(cheèunarisorsao èun tipo di dato primitivo )<br />
Il soggetto denotala risorsa<br />
Il predicato denotacaratteristichedellarisorsa ed esprimeunarelazionetra<br />
soggetto ed oggetto.<br />
RDF èun modello astratto con diversiformatidi file; cosìilmodoparticolarein cui<br />
unarisorsao triplaèrappresentatavariadaformato a formato.
Resource Description Framework<br />
(RDF)<br />
In pratica, però, datiRDF sonocollezionatiin database<br />
relazionalio in altrerappresentazioninative, le<br />
cosiddette“triple stores”, o con “quad stores” se il<br />
contesto(ovveroilgrafodi riferimento) èanch’esso<br />
memorizzatocon triple RDF.<br />
Nel1999 èstatopubblicatocome raccomandazione<br />
del W3C la prima specifica della sintassidel data<br />
model RDF<br />
RDF: Statement reificationand context<br />
La conoscenzamodellizzataattraverso unacollezionedi statement RDF può essere<br />
reificata. In talcaso a ciascuno statement (ovvero a ciascunatripla subjectpredicate-object)<br />
vieneassegnatoun proprio unico URI e trattato come una<br />
risorsaessastessaneicui confrontièpossibilefare uno statement addizionale;<br />
esempio "Jane says that John is the author of document X".<br />
In un database di triple RDF reificato, ciascuno statement originario, essendo esso<br />
stessounarisorsa, in genereha almeno 3 statement addizionaliscrittiper lui: uno<br />
per asserirecheilsuo soggetto èunaqualcherisorsa, unoper asserirecheilsuo<br />
predicato èunaqualcherisorsa, ed unoper asserirecheilsuo oggetto èuna<br />
qualcherisorsao literal.<br />
---------<br />
Le risorse non corrispondono soltanto a cose che possono essere intuitivamente considerate<br />
come oggetti fisici. Molto spesso vengono utilizzate per rappresentare concetti astratti,<br />
eventi, azioni e così via. Il processo che porta a concettualizzare questi aspetti della realtà<br />
come entità èdetto reificazione.<br />
RDF: Queryand inferencelanguages<br />
Il query language predominanteper RDF graphs è<br />
SPARQL, un linguaggioSQL -like, chedal15<br />
gennaio2008 èuna raccomandazionedel W3C<br />
(acronimoricorsivo: SPARQL Protocol and RDF<br />
Query Language. )<br />
Le query SPARQL consistonodi triple patterns,<br />
conjunctions, disjunctions and optional patterns.<br />
RDF: Resourceidentification<br />
• Il soggetto di uno statement RDF èunarisorsa, possibilmente<br />
identificata da un Uniform Resource Identifier (URI) o meno<br />
(risorsaanonima).<br />
• Il predicato èanch’esso una risorsa che rappresenta una relazione.<br />
• L’oggetto èuna risorsa od un valore (Unicode string literal).<br />
In applicazionidel Semantic Web le risorse sono rappresentate da<br />
URI che denotanodatirealiaccessibilisulWeb. Ma RDF non è<br />
limitata alla descrizione di risorse Internet-based.<br />
Perciò ènecessario che produttoried utilizzatoridi statement RDF<br />
concordino sulla semantica degli identificatoridelle risorse.<br />
RDF: Statement reificationand context<br />
Alcuneimplementazionidel modello RDF riconoscono chetalvoltaèutile<br />
raggruppare statements in accordo a criteridi tipo diverso, detti situations,<br />
contexts, or scopes.<br />
Per esempio unostatement può essereassociato ad un contesto, identificato daun<br />
URI, in mododaasserireun "is true in" unaspecificarelazione.<br />
Analogamente ètalvoltaconvenienteraggruppareglistatement in funzionedella<br />
loro sorgente, chepuò essereidentificatadaun URI, ovvero come l’URIdi un<br />
particolaredocumento RDF/XML. In talcaso, quando sifanno degli<br />
aggiornamenti sullerisorse, corrispondentementesipossono cambiaregli<br />
statement relativinelmodello.<br />
L’implementazionedegli scopi non richiedenecessariamentela pienareificazione<br />
neglistatement. Alcuneimplementazionipermettono cheun singolo<br />
identificatoredi scopo siaassociato con uno statement a cui non siastato<br />
assegnatoun URI. Analogamente named graphs in cui un set di triple identificato<br />
daun URI può rappresentareun contesto senzala necessitàdi reificare le triple.<br />
RDF: Queryand inferencelanguages<br />
An example of a SPARQL query to show country capitals in Africa<br />
PREFIX abc: .<br />
SELECT ?capital ?country<br />
WHERE {<br />
?x abc:cityname?capital ;<br />
abc:isCapitalOf?y.<br />
?y abc:countryname?country ;<br />
abc:isInContinentabc:Africa.<br />
}<br />
Variables are indicated by a "?" or "$" prefix. Bindings for?capital and the?country<br />
will be returned.<br />
The SPARQL query processor will search for sets of triples that match these four<br />
triple patterns, binding the variables in the query to the corresponding parts of<br />
each triple. Important to note here is the "property orientation" (class matches can<br />
be conducted solely through class-attributes / properties )
RDF Schema (or RDFS)<br />
Il data model RDF permette di definire un modello semplice per<br />
descrivere le relazioni tra le risorse, in termini di proprietà<br />
(identificate da un nome) e relativi valori.<br />
Tuttavia, RDF data model non fornisce nessun meccanismo per<br />
dichiarare queste proprietà, né per definire le relazioni tra queste<br />
proprietà ed altre risorse.<br />
Per poter dichiarare un vocabolario (ontologia) è necessario definire<br />
classi e proprietà in un RDF-schema.<br />
RDF Schema (or RDFS) èun linguaggio per la rappresentazione<br />
della conoscenza che fornisce glielementifondamentaliper la<br />
descrizione di ontologie (dette vocabolariRDF) che strutturano le<br />
risorse RDF.<br />
Classes and subclasses<br />
Principali costrutti RDFS<br />
• rdfs:Class permettedi dichiarareunarisorsacome classedi altrerisorse.<br />
Tipico esempiodi unardfs:Class èfoaf:Personnelvocabolario FOAF. Una<br />
istanzadi foaf:Person èunarisorsacollegataalla classeusandoun predicato<br />
rdf:type, come nell’espressioneformaleseguente:<br />
ex:John rdf:typefoaf:Person<br />
corrispondenteallafrasein linguaggio naturale: 'John is a Person'.<br />
La definizionedi rdfs:Class èricorsiva: rdfs:Class èla rdfs:Class di qualunque<br />
rdfs:Class.<br />
• rdfs:subClassOf permettedi dichiararegerarchiedi classi.<br />
Per esempio,quidi seguito sidichiarache“ognipersona èun agente”:<br />
foaf:Personrdfs:subClassOffoaf:Agent<br />
Gerarchiedi classisupportano l’ereditarietà(property hineritance) del dominio e<br />
del range di unaproprietàdaunaclasseallesue sottoclassi.<br />
Limiti di RDFS<br />
Poichè RDFS mancadi una semantica formale:<br />
• Non sipuò distingue tra classi ed istanze<br />
• Non sipossono determinare l’estensione del dominio ed eventuali<br />
vincoli<br />
• Non si può definire la cardinalità dei vincoli<br />
• Non si può lavorare con proprietà simmetriche, transitive ed inverse<br />
• Difficile ilsupporto al reasoning<br />
Inoltre RDFS ètroppo debole per descrivere in sufficiente dettaglio le<br />
risorse<br />
RDF Schema<br />
RDF Schema (RDFS) permette di definirevocabolari, caratteristichee relazioni<br />
di un insiemedi proprietà; consente di definiregerarchiedi classiattraverso<br />
la specificadelconcetto di classe e sottoclasse.<br />
Ognirisorsadescrittain RDF èistanzadellaclasse rdfs:Resource.<br />
Le sottoclassidi rdfs:Resourcesono:<br />
rdfs:Literal, rappresentaun letterale, unastringadi testo.<br />
rdfs:Property,rappresentale proprietà.<br />
rdfs:Class corrispondealconcetto di tipo e di classe ; quando vienedefinitauna<br />
nuovaclasse, la risorsachela rappresentadeveaverela proprietà rdf:type<br />
impostataa rdfs:Class.<br />
La relazionedi ereditarietàtraclassièspecificatada rdfs:subClassOf.<br />
L'ereditarietàpuò esseremultipla.<br />
Principali costrutti RDFS<br />
Propertydomainand range<br />
• rdfs:domain di unardf:propertydichiarala classedel subject in unatripla<br />
usando questaproprietàcome predicato<br />
• rdfs:range di unardf:propertydichiarala classeo datatypedell’object in una<br />
triplausando questaproprietàcome predicato.<br />
Per esempio le dichiarazionicheseguono sono usateper esprimerechela<br />
proprietà ex:employercollegaun subject cheèunafoaf:Person ad un object<br />
cheèunafoaf:Organization<br />
ex:employer rdfs:domain foaf:Person<br />
ex:employer rdfs:rangefoaf:Organization<br />
Per cui, nellatripla chesegue, ex:John ènecessariamenteunafoaf:Person, e<br />
ex:CompanyXènecessariamenteunafoaf:Organization<br />
ex:John ex:employer ex:CompanyX<br />
OWL: Web OntologyLanguage<br />
Il Web OntologyLanguage (OWL) è un linguaggio di markup per<br />
rappresentare esplicitamente le ontologie (ovvero il significato<br />
dei termini e relazioni tra i termini).<br />
L'obiettivo è supportare l’elaborazione automatica del contenuto<br />
delle informazioni dei documenti scritti in OWL ed il reasoning<br />
su di essi.<br />
E’ un'estensione RDF.<br />
OWL èun linguaggio di rappresentazione della conoscenza
OWL: Web OntologyLanguage<br />
Poichè OWL èdotatodi unasemantica formale:<br />
• puòspecificarecome derivareconseguenzelogicheda<br />
fattie relazioniesistenti<br />
• può esseredistributotrapiùsistemi<br />
• ècompatibilecon glistandard Web<br />
• èestensibile<br />
OWL: Web OntologyLanguage<br />
I dati descritti da una ontologia OWL sono interpretati come un set di<br />
“individui” ed asserzioni di proprietà che correlano tra loro gli individui.<br />
UnaontologiaOWL consistedi un set di assiomi chepongono vincolisu insiemi<br />
di individui(classi) e suitipi di relazionichesono ammessesu di loro.<br />
Gliassiomisupportano la semanticain quanto permettono aisistemidi effettuare<br />
inferenzesuidati<br />
Esempio: ontologia descrittiva delle famiglie naturali che includa assiomi che affermano<br />
che la proprietà "hasMother" si ha solo tra due individui quando èpresente anche la<br />
proprietà "hasParent" ; individui della classe "HasTypeOBlood" non sono mai in<br />
relazione via "hasParent" con membri della classe "HasTypeABBlood“. Così se viene<br />
affermato che l’istanza Harriet èin relazione "hasMother" con l’istanza Sue, e che<br />
Harriet èmembro della classe "HasTypeOBlood", allora si può inferire che Sue non è<br />
membro di "HasTypeABBlood".<br />
OWL: Web OntologyLanguage<br />
Sublanguages<br />
Le specifiche W3C di OWL includono la definizione di tre variantidi<br />
OWL con differenti livellidi espressività:<br />
OWL Lite originariamente pensato per supportare quegliutentiche<br />
soprattutto avessero bisogno di una classificazione gerarchica e<br />
semplici constraints<br />
OWL DL disegnato per fornire ilmassimo possibile di espressività e nel<br />
contempo mantenere la completezzacomputazionale (è garantito che<br />
tutte le conclusionisiano calcolate) , la decidibilità (tutte le<br />
elaborazionifiniscono in un tempo finito), e la disponibilità reale di<br />
algoritmi di reasoning.<br />
OWL Full è stato disegnato per preservare alcune compatibilità con RDF<br />
Schema; permette ad unaontologia di aumentare ilsignificato di di<br />
un vocabolario predefinito (RDF or OWL).<br />
OWL: Web OntologyLanguage<br />
XML fornisce una sintassi superficiale per documenti strutturati senza però<br />
imporre alcun vincolo semantico<br />
XML Schema restringela strutturadeidocumentiXML mentreestendei datatype<br />
XML<br />
RDF èun datamodelper descrivererisorsee relazionitradi esse e fornisceuna<br />
semanticasempliceper questodatamodelchepuò essererappresentatonella<br />
sintassiXML<br />
RDF Schema èun vocabolario per descrivereproprietàe classidellerisorseRDF<br />
con unasemanticaassociataalla generalizzazionedellegerarchiedi taliclassie<br />
proprietà.<br />
OWL ha mggioristrumentidi RDF ed RDFS per esprimeresignificato e<br />
semantica (es. disgiunzione, cardinalità, eguaglianza , enumerabilità– classi- )<br />
OWL: Web OntologyLanguage<br />
Il linguaggio OWL utilizza nelle definizioniun linguaggio logico<br />
basato sulle Description Logics.<br />
(DLs) Description Logics rappresentano una famiglia di logiche che<br />
sono frammentidecidibilidella logica del prim’ordine.<br />
La semantica per OWL èdata con la traduzione ad un particolare DL.<br />
Perciò OWL è sia una sintassiper descrivere e per scambiare<br />
ontologie, che unasemantica formalmente definita per assegnare<br />
significato.<br />
Per moltiDLs, inclusiquelli sottostantiOWL, esistono deireasoner<br />
sound, complete, and terminating (cioè ègarantito che i reasoner<br />
derivino ogni conseguenza della conoscenza di una ontologia) .<br />
OWL: Web OntologyLanguage<br />
Open World Assumption<br />
OWL adottala Open World Assumption in contrastocon<br />
SQL e Prolog, cheadottanola Closed World<br />
Assumption.<br />
Nell’ambitodella Open World Assumption, se non si<br />
puòprovarecheunostatement sia verousandola<br />
conoscenzaattuale, allora non sipuòarrivarealla<br />
conclusionechelo statement sia falso.
Riferimenti (letture per cominciare)<br />
• Arash Shaban-Nejad: tutorial on “Ontology: Foundation of Semantic Web”,<br />
2004<br />
• F. Bianchini, A.M. Gliozzo, M. Matteuzzi: “Instrumentum vocale: intelligenza<br />
artificialee linguaggio”, BononiaUniversity press, 2008<br />
• Antoniou G., van Harmelen F.: “A Semantic Web Primer”, The MIT Press,<br />
2004, cap.2,3,4<br />
• http://en.wikipedia.org/wiki/Resource_Description_Framework<br />
• http://it.wikipedia.org/wiki/Resource_Description_Framework<br />
• http://en.wikipedia.org/wiki/RDF_schema<br />
• http://en.wikipedia.org/wiki/SPARQL<br />
• http://www.w3.org/TR/owl-features/