Diego MAGRO Dipartimento di Informatica Università di Torino. Diego MAGRO - All rights reserved. Sommario

Documenti analoghi
Diego MAGRO Dipartimento di Informatica Università di Torino. Dipartimento Informatica. Diego MAGRO - All rights reserved

Gufi, scintille e altre cose strane Una panoramica sull idea di Web Semantico e su quanto essa ha finora prodotto

Semantic Web. Obiettivi a lungo termine del W3C

Introduzione al Semantic Web

Linked Open Data Introduzione e nuovi punti di vista Silvia Mazzini Antonella Pagliarulo smazzini@regesta.com apagliarulo@regesta.

Introduzione al Semantic Web

#SCE2014 ACADEMY. Linked Open Data: come fare, cosa serve. Diego Valerio Camarda. 24 ottobre 2014

Linked Open Data, Semantic Web, SKOS: questi (s)conosciuti

JSON for Linked Data JSON-LD

Vittorio Di Tomaso CELI Language & Information Technology

Comunicazione Digitale

SPARQL Injection attacking the triple store

Tecnologie Web Introduzione

Tutorial: come scrivere query SPARQL semplici

Indice Prefazione 1 Il diritto e la società dell informazione La società dell informazione Un nuovo paradigma soc

Introduzione a Internet e World Wide Web

Formati aperti, interazione, visualizzazione grafica dei dati statistici. Il portale Linked Open Data dell Istat

Reti informatiche. 2. Internet e navigazione

DatiOpen: il portale Linked Open Data dell Istat

Internet. Sommario. Che cos'è? Servizi WWW Posta Elettronica Domini e DNS Evoluzioni del WEB

World Wide Web. WWW e Tim Berners Lee

21/03/2015. Architettura del Web. RDF in due parole. Un grafo RDF (WorldWide!) Una tripla RDF (s,p,o)

Livello applicazione. Fondamenti di Informatica

Collaborazioni on-line

RDF. Resource Description Framework

Tecnologie semantiche per lo sviluppo di conoscenza e servizi Evento W3C LOD 2014

Lezione 3 Progettazione di siti

Strumenti per lo sviluppo e la gestione di Ontologie

Argomenti XML JSON. Linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati, non strutturati. XML Data Model JSON

Analisi dei rischi: esercizi (esercizio 2)

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica

Probabilistic Lightweight Ontology per l estrazione e rappresentazione della Semantica. Abstract. Università di Salerno

Tecnologie Web T Introduzione

Introduzione al modello Entità-Relazione (ER) ( riferimento: [SA15, Cap. 13] )

Biblioteche Digitali. Pasquale Savino ISTI - CNR

Librerie digitali. Cos è una libreria digitale? Introduzione. Cos è una libreria digitale? Cos è una libreria digitale? Cos è una libreria digitale?

Scopo Laboratorio di Informatica

Introduzione all inguaggio HTML e CSS3 INTRODUZIONE. Prof.ssa Cristina Gena

Creare ontologie ONTOLOGIE, DESCRIPTION LOGIC, PROTÉGÉ STEFANO DE LUCA

Sistemi di Elaborazione dell informazione II. Corso di Laurea Specialistica in Ingegneria Telematica II anno 4 CFU Università Kore Enna A.A.

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

Luca Tesei. Laboratorio di Sviluppo Web: Le Basi. Modulo IFTS. Fermo 31/03, 03/04, 07/ Prof. Luca Tesei Università di Camerino 1

Linked Open Data: pubblicazione, arricchimento semantico e linking di dataset pubblici attraverso il sistema MOMIS

DBMS. Affidabilità. Privatezza dei dati. Efficienza. Efficacia. Un DBMS deve garantire:

Librerie digitali. Uso di XML per memorizzare i metadati. Descrizione generale. XML per memorizzare i metadati. Motivi dell uso di XML

La traduzione dei dati nel linguaggio del web semantico TRADUZIONE. Tom Baker

Ministero dei beni e delle attività culturali e del turismo

Ricevimento: dopo la lezione (in aula) o su appuntamento (Sede Scientifica Pal. 1 Primo Piano)

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Realizzazione di un processo a supporto dell interoperabilità semantica nel Web

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0

Linguaggi, Traduttori e le Basi della Programmazione

FUORI CATALOGO. dati aperti per nuove forme di valorizzazione. IBC - Servizio biblioteche archivi musei e beni culturali.

CulturaItalia e i Linked Open Data

Web Semantico e Linked (Open) Data: dal Web dei documenti al Web dei dati. Tommaso Di Noia

Internet 2B IPIA

Il Web. Struttura e servizi

Basi di Dati e Sistemi Informativi su Web

LINGUAGGI DI ALTO LIVELLO

Gestione della Conoscenza

Un viaggio Open Source nel semantic web. Federico Ruberti - Net7 Internet Open Solutions

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Basi di dati (database)

Dati, informazioni, conoscenza e consapevolezza

Tecnologie Web T URI e URL

record a struttura fissa

P R O G E T TO. semantic Multi-source Analyzer

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO

OntoPiA la rete di ontologie e vocabolari controllati per la pubblica amministrazione. Giorgia Lodi

Gestione della Conoscenza

Basi di Dati e Sistemi Informativi su Web

Informatica per le Scienze Umane. Introduzione al corso: programma

Credits to Alessio Melandri SPARQL. Il linguaggio di interrogazione del web-semantico

Scoprire i tesori nascosti negli archivi storici: il ruolo delle ICT, del Semantic Web e delle Digital Humanities

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Corso di. Basi di Dati I. 1. Introduzione

Il modello RDF. Pasquale Savino ISTI-CNR. Biblioteche Digitali Metadati

Corso di. Basi di Dati I. 1. Introduzione

Modellazione di Applicazioni Web. Dr. Marco Benini Dipartimento di Informatica e Comunicazione Università degli Studi dell'insubria

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

Scopo. Informatica. Sistema informativo. Sistema informatico

POLITECNICO DI MILANO

UNIVERSITA' DEGLI STUDI DI MILANO BICOCCA

SISTEMI OPERATIVI, RETI, INTERNET

MILANO APERTA: la città in numeri e il bilancio trasparente. Direzione Sistemi Informativi e Agenda Digitale

Il World Wide Web. Marco Porta - CIM: Web Design & Technologies

Tecnologie informatiche multimediali

Fondamenti di Informatica e Programmazione

Enrico Fagnoni BOTK IN A NUTSHELL

LEZIONE BASI DI DATI I 22/10/2008 XML

In che modo in Trentino si stanno aprendo i dati delle PA

I Linked data, da crisalide a Farfalle. Un applicazione con i linked data Farfalle

Transcript:

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