05.06.2013 Views

Slides

Slides

Slides

SHOW MORE
SHOW LESS

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/

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!