...

Slide Prof.re Di Noia - Studenti Democratici

by user

on
Category: Documents
10

views

Report

Comments

Transcript

Slide Prof.re Di Noia - Studenti Democratici
Web Semantico e Linked (Open) Data:
dal Web dei documenti al Web dei dati
Tommaso Di Noia
Politecnico di Bari
http://sisinflab.poliba.it/dinoia/
[email protected]
Il Web dei documenti
Il Web dei documenti: vantaggi
●
Vastissima quantità di informazione
●
Fruibile da utenti umani
●
Documenti collegati tra loro
●
●
Facilità di navigazione di una base
documentale
Base documentale distribuita
Il Web dei documenti: svantaggi
●
Informazione difficilmente elaborabile in
maniera automatica
●
I dati non sono strutturati
●
Il significato dei dati non è esplicito
●
Difficoltà nel riusare e aggregare informazione
disponibile
Un caso di studio
”Mamma ha necessità di una visita specialistica e
successivamente deve sottoporsi ad una serie di
sedute di fisioterapia. Due volte a settimana o giù
di lì. Vado ad impostare il mio agente software
per organizzarmi gli appuntamenti.”
Idea: un Web orientato ai dati
T. Berners-Lee, James Hendler
and Ora Lassila. The Semantic
Web. Scientific American
Magazine, May 2001
Come faccio per recuperare...
●
●
●
●
●
la descrizione del gruppo U2 in più di una lingua?
un elenco dei musei che si trovano a Roma con
un link ad un'immagine relativa?
una descrizione multilingua dei musei romani?
l'elenco dei comuni della privincia di Bari con più
di 15000 abitanti?
l'elenco degli eventi che si svolgono a Roma?
Database = Schema + Dati
●
Il dato rappresenta l'informazione
●
Lo schema serve a dare significato ai dati
●
Il dato senza schema è solo una sequenza
di caratteri/bit
Nome
Cognome
Età
Tommaso
Di Noia
33
Michelantonio
Trizio
18
Nicholas
Caporusso
21
Semantic Web: database
distribuito
Web vs Semantic Web
Web
Semantic Web
Analogia
File System
Database
Progettato per
Uomini
Macchine
(Agenti Software)
Elementi principali
Documenti
Cose
Collegamenti tra
Documenti
Cose
Semantica
Implicita
Esplicita
Fonte: Semantic Web: Technologies and Applications. Prof. Enrico Motta, The Open University, Milton Keynes - Uk
Il Semantic Web è una evoluzione del Web
La ”torta semantica”
La ”torta semantica”
Come si crea il Semantic Web?
●
●
●
Creare degli schemi che siano in grado di
modellare diversi domini di conoscenza:
Ontologie
Identificare esplicitamente i dati all'interno
delle pagine e dare loro un significato:
collegarli allo schema corrispondente
Collegare i dati tra di loro
Quali Tecnologie?
●
RDF (Resource Description Framework)
●
RDF-S (RDF Schema)
●
OWL (Ontology Web Language)
RDF
Framework per la rappresentazione dei dati e
della relazione tra essi
[Soggetto] [Predicato] [Oggetto]
[Tommaso Di Noia] [autore] [SW_LOD_HitF5.pdf]
[Tommaso Di Noia] [insegna] [Politecnico di Bari]
I predicati possono essere visti come relazioni
binarie tra soggetto e oggetto
RDF: Risorse e URI
●
Il soggetto di una tripla deve essere
univocamente identificabile dal suo URI
–
”Tommaso Di Noia” è una stringa
–
http://sisinflab.poliba.it/dinoia/#me è un
identificatore univoco
Sintassi RDF - Grafo
http://sisinflab.poliba.it/dinoia/#me
http://purl.org/dc/elements/1.1/creator
SW_LOD_HitF5.pdf
http://dbpedia.org/ontology/employer
http://dbpedia.org/resource/Polytechnic_University_of_Bari
http://xmlns.com/foaf/0.1/name
Tommaso Di Noia
Sintassi RDF - N-Triples
<http://sisinflab.poliba.it/dinoia/#me>
<http://purl.org/dc/elements/1.1/creator> ”SW_LOD_HitF5.pdf”
<http://sisinflab.poliba.it/dinoia/#me>
<http://xmlns.com/foaf/0.1/name> ”Tommaso Di Noia”
<http://sisinflab.poliba.it/dinoia/#me>
<http://dbpedia.org/ontology/employer>
<http://dbpedia.org/resource/Polytechnic_University_of_Bari>
Sintassi RDF - N3
@prefix : <http://sisinflab.poliba.it/dinoia/#> .
@prefix dbpedia: <http://dbpedia.org/resource/> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix dbpedia-owl: <http://mged.sourceforge.net/ontologies/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
:me
dbpedia-owl:employer dbpedia:Polytechnic_University_of_Bari;
dc:creator "SW_LOD_HitF5";
foaf:name "Tommaso Di Noia" .
Sintassi RDF - XML
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns:dbpedia-owl="http://mged.sourceforge.net/ontologies/"
xmlns:dbpedia="http://dbpedia.org/resource/">
<rdf:Description rdf:about="http://sisinflab.poliba.it/dinoia/#me">
<dc:creator>SW_LOD_HitF5.pdf</dc:creator>
<foaf:name>Tommaso Di Noia</foaf:name>
<dbpedia-owl:employer> <dbpedia:Polytechnic_University_of_Bari/> </dbpedia-owl:employer>
</rdf:Description>
</rdf:RDF>
RDF-S
●
Permette di descrivere lo schema dei dati
–
Classe
–
Sottoclasse
–
Sottoproprietà
–
Domain
–
Range
–
Label
–
Commento
RDF-S: esempi
foaf:Person è la classe delle persone
http://sisinflab.poliba.it/dinoia/#me rdf:type foaf:Person
La classe acme:University è una sottoclasse di foaf:Organization
acme:University rdfs:subClassOf foaf:Organization
Possiamo definire una proprietà acme:lavora che ha come domain
foaf:Person e come range foaf:Organization
acme:lavora rdfs:domain foaf:Person
acme:lavora rdfs:range foaf:Organization
La proprietà acme:dirige è una sotto-proprietà di acme:lavora
acme:dirige rdfs:subPropertyOf acme:lavora
RDF-S: esempi
dbpedia:Polytechnic_University_of_Bari
rdfs:label ”Politecnico di Bari@it”
dbpedia:Polytechnic_University_of_Bari
rdfs:label ”Polytechnic University of Bari@en”
dbpedia:Polytechnic_University_of_Bari
rdfs:comment ”Il Politecnico di Bari è uno dei tre
politecnici italiani...@it”
RDF-S
OWL
●
●
●
Possibilità di creare dei vincoli tra classi
molto più espressivi ed elaborati
Ha una forte vocazione alla
rappresentazione della conoscenza
Nato dagli studi teorici sulle Logiche
Descrittive
Dove sono gli URI e gli schemi?
Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
Linked Open Data
http://linkeddata.org
Linee guida per la pubblicazione
1.usare URI per dare un nome alle “cose”
2.URI HTTP: facilmente ricercabili e
dereferenziabili
3.quando viene cercato un URI, restituire
dati che usano tecnologie standard (come
RDF e SPARQL)
4.includere nelle descrizioni link ad altri URI
(Web of Data)
(Linked) Open Data Star Rating
★ Disponibile sul Web in qualsiasi formato con una licenza open
★★ Disponibile in un formato che sia elaborabile in maniera
automatica (es. file Excel)
★★★ Disponibile in un formato non proprietario che sia
elaborabile in maniera automatica (es. file csv)
★★★★ Disponibile in un formato standard del W3C (es. RDF)
★★★★★ Come per il caso precdente + collegamento ad altri
dataset liberi
DBpedia
DBpedia
●
●
Versione di Wikipedia per il Web semantico
Generato processando le informazioni
presenti nelle infobox di Wikipedia
DBpedia
DBpedia
●
Ad ogni pagina di Wikipedia (in inglese) viene associato un URI in DBpedia
partendo dall'URL della pagina
URL Wikipedia: http://en.wikipedia.org/wiki/The_Matrix
URI Dbpedia: http://dbpedia.org/resource/The_Matrix
DBpedia
●
●
●
In Wikipedia in inglese esistono i collegamenti alle corrispondenti pagine
in lingue diverse.
Questi collegamenti vengono usati per generare delle rdfs:label ed
rdfs:comment in tutte le lingue per cui la pagina di Wikipedia è disponibile.
Stesso discorso vale per dbpedia:abstract
Dbpedia: le categorie
●
●
●
●
In Wikipedia le categorie (si trovano in fondo alla
pagina) servono a classificare il contenuto della
pagina
Sono organizzate in una gerarchia.
In DBpedia sono modellate e organizzate
attraverso attraverso la proprietà skos:broader .
Ogni risorsa invece è collegata alla categoria
corrispondente attraverso la proprietà
dcterms:subject .
DBpedia: le categorie
dbpedia:The_Matrix dcterms:subject
category:Dystopian_films .
dbpedia:The_Matrix dcterms:subject
category:Warner_Bros._films .
dbpedia:The_Matrix dcterms:subject
category:Post-apocalyptic_films .
dbpedia:The_Matrix dcterms:subject
category:1999_films .
category:Dystopian_films skos:broader
category:Science_fiction_films_by_genre .
category:Science_fiction_films_by_genre skos:broader
category:Science_fiction_films .
DBpedia: Lookup
●
Servizio per la ricerca di risorse collegate a
determinate keywords e appartenenti a delle classi
specificate.
http://lookup.dbpedia.org/api/search/KeywordSearch?QueryClass=film&QueryString=matrix
●
●
●
QueryString. La stringa di caratteri per la quale l'URI di
Dbpedia dovrebbe essere trovato.
QueryClass. (opzionale) Una classe della DBpedia Ontology
di cui la risorsa risultante deve essere istanza.
MaxHits. (opzionale) il numero massimo di risultati restituiti
(default: 5)
DBpedia: YAGO, Umbel e
Dbpedia Ontology
●
YAGO: tassonomia di classi creata mappando le
categorie di Wikipedi che non hanno sotto-categorie con i
synset di Wordnet
–
●
●
Wordnet: databese lessicale prevalentemente per
l'inglese. Un sysnset è un insieme di sinonimi
UMBEL: ontologia derivata da OpenCyc creata per
collegare documenti presenti sul Web con dei dati.
DBpedia Ontology: ontologia in OWL sviluppata
manualmente che riflette le informazioni presenti nelle
infobox
GoodRelations
http://www.ebusiness-unibw.org/wiki/GoodRelations
Triple Store
●
Virtuoso Universal Server
●
AllegroGraph
●
Sesame
●
Jena
Come interrogo un dataset?
Ogni dataset espone un end-point SPARQL
SPARQL
PREFIX dbpedia: <http://dbpedia.org/resource/>
SELECT ?p ?o FROM <http://dbpedia.org>
WHERE{
dbpedia:Polytechnic_University_of_Bari ?p ?o
}
Quanti e quali dataset sono disponibili?
http://labs.mondeca.com/sparqlEndpointsStatus/
owl:sameAs
SELECT ?s ?o WHERE{
{<http://dbpedia.org/resource/PHP> owl:sameAs ?o}
UNION
{?s owl:sameAs <http://dbpedia.org/resource/PHP>}
}
?s = http://mpii.de/yago/resource/PHP
?o = {
http://sw.opencyc.org/concept/Mx4rFe-OqNGXQdabyuNpQ2p2KA
http://rdf.freebase.com/ns/m/060kv
}
Un ultimo passo...
●
RDFa: RDF in attributes
–
Permette di integrare triple RDF
all'interno di pagine XHTML
–
È possibile ”nascondere” l'RDF all'interno
della pagina Web
RDFa: esempio
<?xml version="1.0" encoding="UTF­8"?>
<!DOCTYPE html PUBLIC "­//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml­rdfa­1.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns:dbpedia="http://dbpedia.org/resource/"
version="XHTML+RDFa 1.0" xml:lang="en">
<head>
<base href="http://www.example.org/rdfa" />
<link rel="foaf:primaryTopic" href="http://sisinflab.poliba.it/dinoia/#me"/>
</head>
<body about="http://sisinflab.poliba.it/dinoia/#me">
<h1>Pagina personale di Tommaso Di Noia</h1>
<p><span property="foaf:name">Tommaso Di Noia</span> lavora presso il
<a href="http://www.poliba.it" rel="dbpedia:employer"
resource="[dbpedia:Polytechnic_University_of_Bari]">
Politecnico di Bari
</a>.
</p>
</body>
</html>
RDFa: triple generate
<http://www.example.org/rdfa>
foaf:primaryTopic
<http://sisinflab.poliba.it/dinoia/#me> .
<http://sisinflab.poliba.it/dinoia/#me>
dbpedia:employer
dbpedia:Polytechnic_University_of_Bari;
foaf:name
"Tommaso Di Noia"@en .
Web 2.0 e Web 3.0
●
●
Web 2.0: approccio social, tag
Web 3.0: approccio social (LOD), semantic
tag (RDFa)
–
Faviki:
http://www.faviki.com –
NOT:
http://sisinflab.poliba.it/not­only­tag
/
Strumenti
●
●
Triplestore
Librerie per la manipolazione di dati RDF in
moltissimi linguaggi di programmazione: C,
Java, PHP, Phyton, C#, ....
●
Ragionatori (reasoners)
●
http://www.w3.org/2001/sw/wiki/RDF ●
http://www.w3.org/2001/sw/wiki/OWL A chi interessa il Semantic Web?
A chi interessa il Semantic Web?
http://stores.bestbuy.com/840/semanticweb.rdf
A chi interessa il Semantic Web?
Fonte: Semantic Web: Technologies and Applications. Prof. Enrico Motta, The Open University, Milton Keynes - Uk
Open Government
(Linked) Open Data e Italia
●
http://dati.gov.it
●
http://dati.camera.it
●
http://spcdata.digitpa.gov.it
●
http://www.dati.salute.gov.it/
●
http://it.dbpedia.org/datasets/
Tommaso Di Noia
Politecnico di Bari
http://sisinflab.poliba.it/dinoia/
[email protected]
Fly UP