Gufi, scintille e altre cose strane Una panoramica strutturata sul Web Semantico, le ontologie, i Linked Data: approcci, linguaggi, protocolli e standard Diego MAGRO di Università di Torino Sommario 1. Cose per nulla strane 2. Cose un po strane (molto interessanti, ma che non tratteremo) 3. Cose strane 4. Scintille 5. Gufi 1
Cose per nulla strane L attuale Web è: Il Web attuale una rete globale di risorse informative multimediali interconnesse una piattaforma globale attraverso cui è possibile offrire e fruire di servizi 2
Risorse per gli umani Molte risorse presenti su Web sono rivolte principalmente a utenti umani:» testi Sempre caro mi fu quest ermo colle, / e questa siepe» immagini» audio» video https://openclipart.org/ https://openclipart.org/» https://openclipart.org/ Un esempio di risorsa testuale: la pagina Wikipedia per Torino 3
Esempi di collegamenti ipertestuali fra risorse Web http://en.wikipedia.org/wiki/turin Torino Film Festival Wikipedia Università di Torino Cose un po strane (molto interessanti, ma che non tratteremo) 4
Accesso da parte delle macchine alle risorse pensate per gli umani Sono stati sviluppati particolari software per accedere al contenuto (o, almeno, ad una parte di esso) di risorse testuali, audio, video e immagini, basati su complesse tecnologie, es. Tecnologie di Natural Language Processing per la comprensione di testi (o l estrazione di informazione da testi) Tecnologie di elaborazione delle immagini per la comprensione del contenuto di immagini i i( (e filmati) i) Tecnologie di elaborazione dell informazione audio per la comprensione del parlato (e altro) Esempio di uso di tecnologie di NERC (Named Entity Recognition and Classification) Stanford NER online demo http://nlp.stanford.edu:8080/ner/ 5
Esempio di uso di tecnologie di Sentiment Analysis https://twitter.com/filmreviewin140 Esempio di uso di tecnologie di Sentiment Analysis http://nlp.stanford.edu:8080/sentiment/rntndemo.html 6
Esempio di uso di tecnologie di Sentiment Analysis http://nlp.stanford.edu:8080/sentiment/rntndemo.html Esempio di uso di tecnologie per la comprensione delle immagini Google Immagini [https://images.google.com/] 7
Esempio di uso di tecnologie per la comprensione delle immagini Wow! Ci azzecca!! Google Immagini [https://images.google.com/] Altro esempio di uso di tecnologie per la comprensione delle immagini http://www.clarifai.com 8
Altro esempio di uso di tecnologie per la comprensione delle immagini Be ci azzecca abbastanza! http://www.clarifai.com L accesso al contenuto informativo di questo genere di risorse è: agevole per un umano FIGO! faticoso per un agente artificiale UFF! da https://openclipart.org/ da https://openclipart.org/ 9
Cose strane e risorse per le macchine Due considerazioni: 1. Attualmente: a) organizzazioni e persone dispongono di una grande quantità di dati (molti dei quali possono essere pubblicati) b) Molti dati sono presenti nei database che stanno dietro le quinte delle applicazioni Web (data tier) Questi dati potrebbero essere pubblicati su Web e resi disponibili a chiunque (umani e/o macchine) 2. Nuove e interessanti applicazioni potrebbero essere costruite se le macchine potessero aver diretto accesso al contenuto informativo (alla semantica) di dati e informazioni presenti su Web 10
Semantic Web/Web of Data Tutto inizia così, nel 2001, con questo articolo: T. Berners Lee, J. Hendler and O. Lassila, The Semantic Web. A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities, Scientific American, 2001 Oh! Questo è l inventore (assieme a Robert Cailliau) del Semantic Web/Web of Data Web!!...e attuale direttore del W3C!! Mica uno qualunque! Da: http://upload.wikimedia.org/ wikipedia/commons/thumb/ c/c2/tim_berners Lee_2012.jpg/ 220px Tim_Berners Lee_2012.jpg Da: http://openclipart.org/ Tutto inizia così, nel 2001, con questo articolo: T. Berners Lee, J. Hendler and O. Lassila, The Semantic Web. A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities, Scientific American, 2001 11
Semantic Web/Web of Data Inizia così l avventura (tuttora in corso) della costruzione del Web semantico o Web di dati [recentemente, le espressioni Web semantico e Web di dati sono usate o come equivalenti, oppure intendendo il Web di dati come comprensivo anche del Web semantico. In questa presentazione, considereremo le due espressioni come equivalenti] Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack Ne esistono altre versioni, leggermente diverse da questa e fra loro Tratto da http://en.wikipedia.org Licenza: Public Domain 12
Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack Casomai interessasse, un bel tutorial (non recentissimo) - legalmente scaricabile a gratis! - su Web Semantico: Da: http://openclipart.org/ Ivan Herman, Tutorial on Semantic Web, W3C, reperibile all URL http://www.w3.org/people/ivan/coreprese /P /I /C P ntations/swtutorial/ Tratto da http://en.wikipedia.org Licenza: Public Domain Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack Le informazioni presenti e scambiate nell ambito del Web of data hanno una rappresentazione testuale (in cui i caratteri appartengono al Character set Unicode) in un qualche formato XML ( il formato XML non è però l unico possibile) Tratto da http://en.wikipedia.org Licenza: Public Domain 13
Dati, dati, dati Iniziamo dal basso, cioè dai dati Le 5 stelle di Tim Berners Lee Esempi a http://5stardata.info/ (non molto recenti, ma ancora validi) 14
Le 5 stelle di Tim Berners Lee Qui intervengono le tecnologie e le buone pratiche legate al Web of data Esempi a http://5stardata.info/ (non molto recenti, ma ancora validi) Linked Data I Linked Data sono un insieme di best practices per la pubblicazione ione di dati su Web: 1. Use IRIs as names for things. 2. Use HTTP IRIs, so that people can look up those names. 3. When someone looks up a IRI, provide useful information, using the standards (RDF, SPARQL). 4. Include links to other IRIs, so that they can discover more things. Un dataset pubblicato secondo i principi dei linked data è un dataset a 5 stelle 15
Linked Data Casomai interessasse, un bel tutorial su Linked Data (nemmeno questo recentissimo): T. Heath and C. Bizer: Linked Data: Evolving the Web into a Global Data Space, 2011 http://www.linkeddatabook.com/editions/1.0/ Da: http://openclipart.org/ Un esempio: DBpedia la versione linked data di Wikipedia: http://dbpedia.org/ DBpedia è la versione linked data di Wikipedia Ne esistono anche localizzazioni in 125 lingue diverse, compresa quella italiana: http://it.dbpedia.org/ Contiene informazioni estratte da Wikipedia e rappresentate in modo da essere facilmente fruite da una macchina Al momento, è uno dei più importanti esempi di applicazione dei principi dei linked data ( anche se perfettibile sotto vari aspetti ) 16
La pagina Wikipedia vs quella DBpedia su Torino DBpedia: http://dbpedia.org/page/turin Wikipedia: http://en.wikipedia.org/wiki/turin La pagina Wikipedia vs quella DBpedia su Torino La pagina DBpedia su Torino è poco adatta ad un utente t umano (per questi, meglio quella di Wikipedia) ed è poco adatta anche per una macchina Bah! Bah! da https://openclipart.org/ da https://openclipart.org/ 17
La pagina Wikipedia vs quella DBpedia su Torino Allora, a che serve la pagina di DBpedia? Fornisce ad un utente umano la visione sui dati che DBpedia offre alle macchine Tali dati sono però offerti ad una macchina in una diversa rappresentazione ed è (anche) questa la forza di DBpedia: La descrizione di Torino che DBpedia offre alle macchine Wow! 18
Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack I PRINCIPI DEI LINKED DATA 1. Use IRIs as names for things. 2. Use HTTP IRIs, so that people can look up those names. 3. When someone looks up a IRI, provide useful information, using the standards (RDF, SPARQL). 4. Include links to other IRIs, so that they can discover more things. Tratto da http://en.wikipedia.org Licenza: Public Domain Linked Data: uso di IRI HTTP Gli IRI HTTP sono stati originariamente introdotti per identificare risorse Web (especificarne l ubicazione nel Web), es: http://en.wikipedia.org/wiki/turin identifica la pagina in inglese di Wikipedia che descrive Torino (e specifica dove si trova tale pagina) http://www.unito.it/ identifica la home page del sito dell Università di Torino (e specifica dove si trova tale pagina) 19
Linked Data: uso di IRI HTTP In ambito Linked Data, un IRI HTTP può identificare qualunque cosa: risorse Web, oggetti reali, concetti astratti, relazioni i inoltre, ogni elemento che necessita di essere identificato è identificato tramite IRI HTTP Es. (di IRI usati in DBpedia): http://dbpedia.org/resource/turinidentifica la città di Torino http://dbpedia.org/ontology/scientist p// p gy/ identifica il concetto di Scienziato http://dbpedia.org/ontology/birthplace identifica la relazione fra una persona e il luogo di nascita Linked Data: uso di IRI HTTP In ambito Linked Data, un client Web che chiede la dereferenziazione di un IRI deve ottenere o la risorsa Web corrispondente (se l IRI identifica una risorsa Web), oppure una descrizione della risorsa (se l IRI identifica un entità che non è una risorsa Web) Es., se nella barra indirizzi di un browser digitiamo http://dbpedia.org/resource/turin, otteniamo la già citata pagina Web di DBpedia su Torino 20
Linked Data: uso di IRI HTTP In ambito Linked Data, un client Web che chiede la dereferenziazione di un IRI deve ottenere o la risorsa Web corrispondente (se l IRI identifica una risorsa Web), oppure una descrizione della risorsa (se l IRI identifica un entità che non è una risorsa Web) Es., se nella barra indirizzi di un browser digitiamo http://dbpedia.org/resource/turin, otteniamo la già citata pagina Web di DBpedia su Torino Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack I PRINCIPI DEI LINKED DATA 1. Use IRIs as names for things. 2. Use HTTP IRIs, so that people can look up those names. 3. When someone looks up a IRI, provide useful information, using the standards (RDF, SPARQL). 4. Include links to other IRIs, so that they can discover more things. Tratto da http://en.wikipedia.org Licenza: Public Domain 21
Linked Data: uso di RDF (Resource Description Framework) In ambito Linked Data i dati sono rappresentati secondo il modello RDF RDF è un modello dati (piuttosto semplice) E una specifica del W3C (http://www.w3.org/) Una buona descrizione introduttiva prodotta dal W3C: RDF 1.1 Primer (W3C Working Group Note 24 June 2014) [http://www.w3.org/tr/2014/note rdf11 primer 20140624/] In RDF i dati sono rappresentati da triple o asserzioni (in inglese: statements ) (soggetto predicato oggetto) Informalmente: il significato di una tripla (s p o) è: il soggetto s ha valore o per il predicato p (viene usato anche il termine proprietà come sinonimo di predicato ) Linked Data: uso di RDF (Resource Description Framework) Es (adattato da DBPedia): (http://.../turin /T http://.../populationtotal / lti Ttl911823 ) (http://.../turin http://.../birthplace http://.../amedeo_avogadro) (http://.../amedeo_avogadro http://...#type http://.../scientist) (http://.../amedeo_avogadro/amedeo Avogadro http://.../birthdate/birthdate 1776 08 09) (http://.../amedeo_avogadro http://.../deathdate 1856 07 09) 22
Linked Data: uso di RDF (Resource Description Framework) Nei testi e documenti che parlano di RDF, una ti tripla (soggetto predicato oggetto) è spesso rappresentata graficamente in questo modo: soggetto predicato oggetto Es. Linked Data: uso di RDF (Resource Description Framework) http://.../turin http://.../populationtotal 911823 http://.../turin http://.../birthplace http://.../amedeo_avogadro http://.../amedeo_avogadro http://...#type http://.../scientist http://.../amedeo_avogadro /A A d http://.../birthdate 1776 08 09 09 http://.../amedeo_avogadro http://.../deathdate 1856 07 09 23
Linked Data: uso di RDF (Resource Description Framework) Se sovrapponiamo gli ovali che rappresentano le stesse entità, otteniamo una rappresentazione complessiva dei dati sotto forma di (multi)grafo diretto etichettato http://.../turin http://.../populationtotal 911823 http://.../birthplace http://.../amedeo_avogadro http://...#type http://.../scientist http://.../birthdate http://.../deathdate 1776 08 09 1856 07 09 Linked Data: uso di RDF (Resource Description Framework) RDF è un modello dati cui corrispondono diversi formati di serializzazione. Uno di questi è basato su XML. serializzazione dei dati = rappresentazione dei dati in un qualche formato che ne consenta la memorizzazione in un calcolatore o il trasferimento attraverso reti di calcolatori La succitata descrizione di Torino che DBpedia offre alle macchine non è nient altro che la rappresentazione in XML delle triple RDF che descrivono Torino in DBpedia 24
Linked Data: uso di RDF (Resource Description Framework) RDF è un modello dati cui corrispondono diversi formati di serializzazione. Uno di questi è basato su XML. serializzazione dei dati = rappresentazione dei dati in un qualche formato che ne consenta la memorizzazione in un calcolatore o il trasferimento attraverso reti di calcolatori La succitata descrizione di Torino che DBpedia offre alle macchine non è nient altro che la rappresentazione in XML delle triple RDF che descrivono Torino in DBpedia Scintille 25
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) SPARQL (pron. sparkle = scintillare ) è un protocollo e un linguaggio di interrogazione e manipolazione di dataset RDF E una specifica del W3C (http://www.w3.org/) Una brevissima introduzione prodotta dal W3C: SPARQL 1.1 Overview (W3C Recommendation 21 March 2013) [http://www.w3.org/tr/sparql11 overview/]. Altri documenti ufficiali del W3C descrivono dettagliatamente questo standard Il linguaggio di interrogazione (SPARQL query language) consente di estrarre informazioni da dataset RDF; il linguaggio di manipolazione (SPARQL update) consente di aggiungere, cancellare e aggiornare dati in un dataset RDF; il protocollo specifica come le richieste e le risposte SPARQL devono essere veicolate tramite protocollo HTTP https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) SPARQL è un insieme di specifiche piuttosto complesse Nel seguito, faremo qualche cenno al solo suo aspetto di linguaggio di interrogazione Vi sono vari manuali di SPARQL, fra questi: Bob DuCharme, Learning SPARQL, 2 nd Edition, O Reilly 2013 26
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Come linguaggio di interrogazione (e manipolazione), i SPARQL è per i dt datasetrdf (all incirca) quello che SQL è per le basi di dati relazionali Supporta 4 tipi di query: SELECT (quelle che più da vicino ricordano SQL), Q), ASK,, CONSTRUCT e DESCRIBE Faremo solo qualche breve cenno a SELECT https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Es. (http://.../marco http://.../conosce http://.../luisa ) (http://.../marco / http://.../conosce / http://.../pippo) / (http://.../marco http://.../conosce http://.../omar) (http://.../luisa http://.../hanome Luisa) (http://.../luisa http://.../hanome Marialuisa) (http://.../pippo http://.../hanome Filippo) (http://.../omar http://.../hanome Omar) Per estrarre i nomi di tutti coloro che Marco conosce: SELECT?nome WHERE { < http://.../marco > < http://.../conosce >?person.?person <http://.../hanome>?nome. } 27
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Es. (http://.../marco http://.../conosce http://.../luisa ) (http://.../marco / http://.../conosce / http://.../pippo) / (http://.../marco http://.../conosce http://.../omar) (http://.../luisa http://.../hanome Luisa) (http://.../luisa http://.../hanome Marialuisa) (http://.../pippo http://.../hanome Filippo) (http://.../omar http://.../hanome Omar) Per estrarre i nomi di tutti coloro che Marco conosce: SELECT?nome Variabili WHERE { < http://.../marco > < http://.../conosce >?person.?person <http://.../hanome>?nome. } https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Es. (http://.../marco http://.../conosce http://.../luisa ) (http://.../marco / http://.../conosce / http://.../pippo) / (http://.../marco http://.../conosce http://.../omar) (http://.../luisa http://.../hanome Luisa) (http://.../luisa http://.../hanome Marialuisa) (http://.../pippo http://.../hanome Filippo) (http://.../omar http://.../hanome Omar) Per estrarre i nomi di tutti coloro che Marco conosce: SELECT?nome Variabile di output WHERE { < http://.../marco > < http://.../conosce >?person.?person <http://.../hanome>?nome. } 28
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Es. (http://.../marco http://.../conosce http://.../luisa ) (http://.../marco / http://.../conosce / http://.../pippo) / (http://.../marco http://.../conosce http://.../omar) (http://.../luisa http://.../hanome Luisa) (http://.../luisa http://.../hanome Marialuisa) (http://.../pippo http://.../hanome Filippo) (http://.../omar http://.../hanome Omar) Per estrarre i nomi di tutti coloro che Marco conosce: SELECT?nome WHERE { < http://.../marco > < http://.../conosce >?person. Schema di grafo RDF?person <http://.../hanome>?nome. } https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) L interprete SPARQL individua nei dati cui la query fa riferimento i tutte tt le combinazioni i i di valori per le variabili, corrispondenti a dati che rispettano lo schema di grafo RDF e restituisce i valori per le sole variabili di output Nel caso dell esempio, il risultato sarebbe:?nome Luisa Marialuisa Filippo Omar 29
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Per poter essere interrogati tramite SPARQL, i dataset nel Web di dati devono offrire uno SPARQL endpoint, cioè un server che risponde a richieste SPARQL Ad esempio, lo SPARQL endpoint di DBpedia ha indirizzo: i http://dbpedia.org/sparql di / Vediamone un esempio d uso https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Estrarre dal dataset di DBpedia IRI, data di nascita e eventuale data di morte di tutti ttigli scienziati i nati a Torino 30
https://openclipart.org/ Linked Data: SPARQL (SPARQL Protocol and RDF Query Language) Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack I PRINCIPI DEI LINKED DATA 1. Use IRIs as names for things. 2. Use HTTP IRIs, so that people can look up those names. 3. When someone looks up a IRI, provide useful information, using the standards (RDF, SPARQL). 4. Include links to other IRIs, so that they can discover more things. Tratto da http://en.wikipedia.org Licenza: Public Domain 31
Linked Data: specificare collegamenti tra i dati Costruire un Web di dati significa anche stabilire espliciti collegamenti fra le risorse di cui i dati parlano ( i dati devono essere linked, appunto) collegamenti possono essere interni ad un medesimo dataset (es. collegamenti fra risorse interne a DBpedia). Sono l analogo dei collegamenti ipertestuali fra risorse in uno stesso sito Web. collegamenti fra dataset diversi: importantissimi per non confinare i dati in silos separati (Es. collegamenti fra risorse interne a DBpedia e risorse interne a Geonames o a LinkedGeoData). Sono l analogo dei collegamenti ipertestuali fra risorse che risiedono su siti Web diversi Linked Data: specificare collegamenti tra i dati http://.../populationtotal 911823 http://.../sameas http://.../3165524/ http://.../turin http://.../birthplace http://.../birthdate 1776 08 09 http://.../amedeo_av ogadro http://.../deathdate 1856 07 09 http://...#type http://.../sameas http://.../scientist Geonames DBpedia http://.../node63621 589 LinkedGeoData 32
Il LOD Cloud Diagram Da http://lod cloud.net/, Ultimo aggiornamento: 20/02/2017 Il LOD Cloud Diagram Questo è DBPedia Da http://lod cloud.net/, Ultimo aggiornamento: 20/02/2017 33
Gufi Tratto da http://openclipart.org/ Licenza: Public Domain Semantic Web (Layer) Cake o Semantic Web Stack E dov è la semantica di sto Web semantico? da: http://openclipart.org Qui! Tratto da http://en.wikipedia.org Licenza: Public Domain 34
Semantica I dati sono espressi per mezzo di un vocabolario, es.: 911823 http://.../turin http://.../amedeo_av ogadro http://.../populationtotal http://.../birthplace http://...#type http://.../birthdate http://.../deathdate http://.../scientist Qual è il significato (la semantica) dei termini del vocabolario utilizzato? Es.: che significano http://.../populationtotal, http://.../birthplace, http://.../scientist? /Si i 1776 08 09 1856 07 09 DBpedia Semantica Un umano può riuscire a comprendere questi termini (o,almeno, a ipotizzarne il significato); questo compito è molto più complesso per una macchina C è un modo per rappresentare esplicitamente il significato dei termini del vocabolario in modo che esso sia immediatamente accessibile ad una macchina? L idea attuata nel Web semantico è quella di sfruttare la logica matematica (dove la semantica di termini e formule è ben definita) 35
Semantica Adottando tale approccio, la semantica viene espressa tramite un insieme di formule logiche (dette assiomi ) che usano i termini del linguaggio per vincolarne l uso può sembrare un po strano, ma vincolare l uso dei termini è un modo per delinearne il significato riflettere su questo fatto: http://commons.wikimedia.org Non sempre (quasi mai ) è possibile esprimere completamente il significato dei termini, quindi spesso ci si accontenta di approssimarlo da: http://openclipart.org OWL (Web Ontology Language) Uno dei modi per esprimere (una parte del)la semantica di un insieme di termini in ambito Web è quello di specificare delle teorie logiche in OWL ( owl = gufo ) che usano tali termini [ non è l unico modo es. ci sono anche RDFS e i linguaggi a regole ma è uno dei più diffusi ed è l unico cui accenneremo qui] Queste teorie logiche vengono chiamate ontologie o vocabolari OWL è un linguaggio logico (meglio: una famiglia di linguaggi gg logici) derivato dalla logica dei predicati del primo ordine (è un frammento di essa, con l aggiunta di termini per denotare valori di tipi particolari, come stringhe, numeri, ecc.) E una specifica del W3C (http://www.w3.org/) 36
da: http://openclipart.org OWL (Web Ontology Language) OWL consente la caratterizzazione semantica di termini che denotano: Classi (o concetti, o tipi di individui), es. http://.../scientist Proprietà binarie fra individui (object properties), es. http://.../birthplace Proprietà binarie che legano individui a valori (data properties), es. http://.../populationtotal, / lti Ttl http://.../birthdate, http://.../deathdate Individui, es. http://.../turin, http://.../amedeo_avogadro da: http://openclipart.org OWL (Web Ontology Language) Es., DBpedia usa (anche) una propria ontologia OWL (DBpedia ontology) che caratterizza (in maniera molto approssimata) )la semantica di dei termini iusati in DBpedia Es., la DBpedia ontology contiene,fra i suoi numerosi assiomi, anche i seguenti: ( x)(http://.../scientist(x) http://.../person (x)) ( tutti gli scienziati sono persone ) ( x,y)(http://.../birthplace(x,y) http://.../person(x) http://.../place(y)) ( birthplace è una relazione tra persone e luoghi ) ( x,y)( http://.../birthdate(x,y) http://.../person (x) Date(y)) ( birthdate associa una data a una persona ) 37
da: http://openclipart.org OWL (Web Ontology Language) Il primo tipo di assiomi consente di definire tassonomie di classi, es. (piccolo frammento della tassonomia della DBpedia ontology): Thing Agent Place Scientist Person tutti gli scienziati sono persone State Populated Place Region da: http://openclipart.org OWL (Web Ontology Language) La caratterizzazione dei termini tramite linguaggi logici: ne riduce l ambiguità, rappresentandone esplicitamente un frammento di semantica [già visto ] Consente di sfruttare meccanismi di inferenza automatica vale a dire: l esplicitazione automatica di conoscenza implicita e l individuazione di un eventuale inconsistenza (cioè la presenza di una contraddizione, eventualmente nascosta, nei dati), il tutto tramite appositi software, detti «reasoners» 38
OWL (Web Ontology Language) da: http://openclipart.org Es. Agent Person Scientist Un reasoner che disponesse della DBpedia ontology, dalla sola tripla RDF (http://.../amedeo_avogadro http://...#type http://.../scientist), sarebbe in grado di dedurre automaticamente queste altre due triple: (http://.../amedeo_avogadro http://...#type http://.../person) (http://.../amedeo_avogadro http://...#type http://.../agent) da: http://openclipart.org OWL (Web Ontology Language) Esistono vari tools per scrivere ontologie OWL, fra questi, quello più noto, al momento, è Protégé (http://protege.stanford.edu/) Vi sono vari reasoners utilizzabili con le ontologie OWL (alcuni invocabili anche da Protégé), fra questi: HermiT it(htt (http://hermit reasoner.com/) /) Pellet (https://github.com/complexible/pellet) Fact++ (http://owl.man.ac.uk/factplusplus/) 39
Dati in RDF, ontologie/vocabolari OWL, L accesso al contenuto informativo di questo genere di risorse è: faticoso per un umano UFF! agevole per un agente artificiale ΦGO! il Web di dati è infatti pensato per le macchine: gli umani ne fruiscono e beneficiano indirettamente, t attraverso le applicazioni software in grado di accedere alle risorse che esso offre da https://openclipart.org/ da https://openclipart.org/ Bon! Finisce qui questa è stata solo un introduzione ci sarebbero tante altre cose da dire! 40
Grazie per l attenzione!! 41