ALIADA
-
Upload
cult-srl -
Category
Technology
-
view
175 -
download
0
Transcript of ALIADA
ALIADA Automatic publication under LInked dAta paradigm of library DAta
Andrea Gazzarini, @Cult Tiziana Possemato, @Cult
c
c c
Automatic publication under LInked dAta paradigm of library DAta
Il progetto ALIADA, approvato e finanziato dall’Unione Europea all’interno del Seventh Framework Programm for Research (FP7), ha avuto come obiettivo la realizzazione di un framework di conversione e pubblicazione automatica in RDF dei dati appartenenti a istituzioni culturali.
Il progetto prevede la collaborazione tra cinque partner in Spagna, Italia e Ungheria:
- @Cult (I)
- Scanbit (S)
- Tecnalia (S)
- ARTIUM - Centro Museo Vasco de Arte Contemporáneo (S),
- Szépmuvészeti Múzeum (U).
I primi tre rivestono un ruolo tecnico, con la responsabilità di gestire e creare gli artefatti (software e documentazione). Gli altri due partner sono istituzioni culturali che rappresentano i bisogni dei fruitori, fornendo suggerimenti e requisiti funzionali da parte di chi conosce il “dominio culturale”
http://aliada-project.eu
ALIADA - Automatic publication under LInked dAta paradigm of library DAta
Obiettivo del progetto ALIADA [1] è la realizzazione di una pipeline di gestione, conversione e pubblicazione automatica dei dati di istituzioni appartenenti al mondo dei beni culturali.
Il software è open source, licenziato sotto GPL V3 [2].
Il progetto è stato strutturato in diversi moduli, ognuno dei quali assolve a uno specifico compito nella catena complessiva di lavoro che parte dalla gestione dei dati di input sino alla loro pubblicazione, convertiti in triple o tuple RDF.
[1] http://aliada-project.eu
[2] https://github.com/ALIADA/aliada-tool
ALIADA
http://camel.apache.org
http://www.enterpriseintegrationpatterns.com
Proof of Concept
L'obiettivo del POC è quello di combinare una serie di strumenti / tecnologie che, a partire dal dato bibliografico, espresso in formato MARC, permettano la creazione e la gestione, in maniera efficace ed efficiente, di una base dati semantica con collegati una serie di servizi di fruizione aventi lo scopo di aumentare il livello di qualità dell'esperienza di ricerca utente in termini di :
Correttezza: affidabilità e pertinenza dei risultati restituiti; Significatività: aderenza dei risultati rispetto agli obiettivi; Capacità informativa: legami con altre risorse
7
L’architettura di ALIADA è costituita da 4 componenti di alto livello:
- Interfaccia utente
- Conversione
- Iterlinking
- Pubblicazione
Conversion
Linking
Publication
UserInterface
USER
LINKED OPENDATA CLOUD
DATASETSINFORMATION
DATASETPUBLICATION
INPUT COMMANDS
EXECUTIONFEEDBACK
ALIADA
Dublin Core
© 2015 Aliada Consortium
Architettura di ALIADA
8
1. L’interfaccia utente interagisce con gli
altri componenti di ALIADA per fare in
modo che l’utente lavori con i linked open
data pur non essendo un esperto di
tecnologie semantiche.
2. L’ontologia di ALIADA orienta e
definisce il processo di conversione del
file originario (input) in formato RDF.
Differenti RDF-iers, cioè, processi di
conversione, prendono parte al processo. I
dati RDF così prodotti saranno validati
prima di essere utilizzati dalla componente
di interlinking.
3. La componente di interlinking
memorizzerà il dataset in formato RDF in
un triple store e collegherà ciascun dato ad
altri dati presenti su dataset disponibili nel
LOD cloud.
4. Al termine, la componente di
pubblicazione pubblicherà il dataset RDF
nel LOD cloud.
RDF Triple Store
RDF output
MARCXML2RDF
LIDO2RDF
ALIADA ontology
CONVERSION
DublinCore2RDF translation
LINKING
PUBLICATION
Linked Data Server
Creation CKAN DataHub page
Validation of Input Data
VALIDATIONRDF
VALIDATIONLinked Dataset
USERINTERFACE
RDF-izer
Other RDF-izer
endpoint Links Discovery
Dublin Core
© 2015 Aliada Consortium
Architettura di ALIADA
Il dato di partenza: Le avventure di Pinocchio
000 00694nam a2200241 i 4500
008 971205s1997 it j 000 0 ita c
020 a 880921191X
082 1 a 853.8
100 1 a Collodi, Carlo.
245 13 a Le avventure di Pinocchio /
c C. Collodi ; illustrazioni di Attilio Mussino.
260 a Firenze :
b Giunti,
c 1997.
440 0 a Collana favolosa / [Giunti]
521 a Letteratura per ragazzi
700 1 a Mussino, Attilio.
La consolle di amministrazione
Il processo di conversione e pubblicazione dei dati rappresenta il fattore chiave di ALIADA;
la consolle di amministrazione, gestita da un utente professionale, consente il controllo delle funzioni:
- caricamento dei dati,
- conversione
- visualizzazione
- interlinking
- monitoraggio dei processi.
L’applicazione è stata disegnata cercando di astrarre e semplificare la complessità delle operazioni svolte dal sistema.
L’interfaccia di amministrazione permette, dunque, di gestire i dati di input, produrre dei template (modelli) preconfigurati per definire le regole di conversione, lanciare i processi di trasformazione e monitorarne lo status (andamento).
RDFizer: modulo di conversione
Alla base della catena di produzione del dato RDF si trova il modulo di conversione, denominato RDFizer.
Il suo ruolo è di prendere un insieme di dati in input, in uno dei formati supportati, applicare delle regole di trasformazione e infine produrre un output.
Il modulo è disegnato per trattare dati in qualunque formato in input e in output. La natura modulare lo rende conforme al principio Open-Closed, secondo il quale un sistema deve poter permettere l’aggiunta di nuove funzionalità, fornendo punti di estensione ed evitando effetti indesiderati relativi all’interruzione di funzioni esistenti.
Il modulo opera la conversione dei dati di input in triple RDF, in accordo con le ontologie definite per il progetto.
RDFizer - Pipeline di conversione
INPUT
OUTPUT
INPUT I record MARC da processare
OUTPUT I dati convertiti in accordo alle caratteristiche di ciascuno store
Pinocchio nell'RDF Store
<bibo:Book rdf:about="http://www.cbt.trentinocultura.net/biblio/000002577949">
<dcterms:identifier>000002577949</dcterms:identifier>
<bibo:isbn10>880921191X</bibo:isbn10>
<dcterms:shortTitle>Le avventure di Pinocchio</dcterms:shortTitle>
<dcterms:title>
Le avventure di Pinocchio / C. Collodi ; illustrazioni di Attilio Mussino
</dcterms:title>
<dc:creator rdf:resource="http://www.cbt.trentinocultura.net/person/collodi_carlo"/>
<dcterms:language>ita</dcterms:language>
<dcterms:audience rdf:resource="http://www.cbt.trentinocultura.net/subject/opera_per_bambini"/>
<dcterms:isPartOf rdf:resource="http://www.cbt.trentinocultura.net/biblio/2378129373323" />
<dcterms:extent>186 p.</dcterms:extent>
<isbd:hasPlaceOfPublicationProductionDistribution>
Firenze
</isbd:hasPlaceOfPublicationProductionDistribution>
<dcterms:issued>1997</dcterms:issued>
<dcterms:publisher rdf:resource="http://www.cbt.trentinocultura.net/organisations/giunti"/>
</bibo:Book>
<foaf:Person rdf:about="http://www.cbt.trentinocultura.net/person/collodi_carlo">
<foaf:name>Collodi, Carlo</foaf:name>
</foaf:Person>
<foaf:Organization rdf:about="http://www.cbt.trentinocultura.net/organisations/giunti">
<foaf:name>Giunti</foaf:name>
</foaf:Organization>
Pinocchio all'interno dell'inverted index (1/2)
Le avventure di Pinocchio
Le avventure di Pinocchio
avventure Pinocchio
avventure pinocchio
avventur pinocchio
ATFN PNX
Tokenization
Stopwords
Lowercase
Stemming (light)
Fonemi (!)
Le di
Pinocchio all'interno dell'inverted index (2/2)
All’interno dell’indice i dati perdono qualsiasi connotazione semantica:
il meccanismo di sounds-like* per il titolo e l’autore di questo testo produce i fonemi:
- ATFN = Adventures
- PNX = Pinocchio
- KRL = Carlo
- KLT = Collodi
ATFN PNX
KRL KLT
* Per questa funzione viene utilizzato un algoritmo open chiamato double methaphone
Interlinking La produzione di triple RDF a partire da un formato in ingresso soddisfa un
requisito di standardizzazione e aumenta la caratteristica di riusabilità del dato.
La reale potenza di questo formato di dati è, tuttavia, rappresentato dalla possibilità di creare legami con concetti ed entità presenti su dataset esterni.
A fronte del grafo RDF prodotto da RDFizer, il modulo dell’interlinking, tramite un set di regole configurabili da interfaccia di amministrazione, provvede a cercare entità in dataset esterni e a creare collegamenti.
Interlinking
Il risultato è una serie di triple con:
- soggetto: gli URI delle entità locali ricavate dal processo di conversione;
- predicato: owl:sameAs o una sua sotto-proprietà;
- oggetto: l’URI della risorsa esterna collegata.
A questo punto RDF store contiene un dataset interrogabile (per esempio, SPARQL) e arricchito dai collegamenti esterni.
Silk Framework
Silk Framework [1] è un progetto open source, coordinato dall'Università di Mannheim, e serve per collegare dataset diversi tra di loro (interlinking).
Il progetto, disponibile sotto licenza Apache Version 2.0, può essere prelevato gratuitamente.
Mette a disposizione uno strumento grafico per creare le regole di interlinking ed istruire così il sistema durante la ricerca dei legami.
Una delle caratteristiche fondamentali è la possibilità di effettuare un tuning incrementale delle regole di matching che determinano l'equivalenza di due entità.
[1] http://wifo5-03.informatik.uni-mannheim.de/bizer/silk
22
ALIADA
dataset
E39_Actor
E21_Person
F10_Person
Actor_Appellation
MARCCo
deLists
MARC_Country
MARC_GeographicArea
DBpedia Agent:name
Place:name
Work:label
Europeana dc:title
edm:ProvidedCHO BNB
dc:title
BNE
ifla-frbr:C1005
ifla-frbr:P3039 / ifla-frad:P4031
ifla-frbr:C1001
ifla-frbr:P3001 / ifla-frad:P4033
GeoNames geo:name
wgs84:lat
wgs84:long
Freebase
people.person
visual_art.artwork
book.book
F3_Manifestation_Product_Type –
Title
E18_Physical_Thing –
Appellation
NSZL foaf:Person
bibo:document
E53_Place
F9_Place Place_Appellation
wgs84:lat
wgs84:long
film.film
E73_Information_Object –
Title
E56_Language
MARC:Language
ALIADA Final Review Meeting. Luxemburg, November 12th, 2015
Linking a dataset provvisti di uno SPARQL endpoint
23
ALIADA
dataset
E39_Actor
E21_Person
F10_Person
Actor_Appellation
LOBID: Libraries
& rel.
organisations
VIAF
Library of
Congress Subject
Headings
http://id.loc.gov/search/?q=StringToS
earchFor&q=cs:http://id.loc.gov/auth
orities/subjects&format=xml
F3_Manifestation_Product_Type - Title
Title ecrm:P3_has_note StringToSearchFor
LOBID:
Bib.
resources
E39_Actor - Actor_Appellation
Actor_Appellation ecrm:P3_has_note StringToSearchFor
E89_PropositionalObject ecrm:P129_is_about skos:Concept
skos:Concept skos:prefLabel StringToSearchFor
E1_CRM_Entity P137 exemplifies skos:Concept
skos:Concept skos:prefLabel StringToSearchFor
http://api.lobid.org/organisation?name=StringToSearchFor&format=ids
http://api.lobid.org/resource?name=StringToSearchFor&format=id
s
Actor_Appellation ecrm:P3_has_note StringToSearchFor
http://www.viaf.org/viaf/AutoSuggest?query=StringToSearchFor
Open
Library
https://openlibrary.org/search?title=StringToSearchFor
ALIADA Final Review Meeting. Luxemburg, November 12th, 2015
Linking a datasets che non forniscono uno SPARQL endpoint
Aggiungiamo Silk
INPUT
OUTPUT
<foaf:Person rdf:about="http://www.cbt.trentinocultura.net/person/collodi_carlo">
<foaf:name>Collodi, Carlo</foaf:name>
</foaf:Person>
<foaf:Person rdf:about="http://www.cbt.trentinocultura.net/person/collodi_carlo">
<foaf:name>Collodi, Carlo</foaf:name>
<owl:sameAs rdf:resource=”http://dbpedia.org/resource/Carlo_Collodi”/>
</foaf:Person>
Linked Data Server
Oltre alle possibilità d’interrogazione offerte da RDF store, il quale funge da SPARQL endpoint, il modulo Linked Data Server espone un set di API REST che permettono di dereferenziare* gli URI delle entità, restituendo una loro rappresentazione.
La tipologia della rappresentazione, il formato, dipende dalla negoziazione con il client, sulla base di attributi presenti nella richiesta.
*Dereferenziare. L’azione di recuperare la rappresentazione di una risorsa identificata da un URI (dereferencing the URI).
Riferimenti: http://www.w3.org/TR/cooluris/
Per essere nel web:
- Le macchine e le persone dovrebbero essere capaci di recuperare una descrizione della risorsa identificata dall’URI.
- Le macchine dovrebbero ottenere dati RDF e le persone dovrebbero ottenere una rappresentazione leggibile, per esempio in HTML.
Cool URIs:
- Semplicità: URI corto e mnemonico
- Stabilità: dovrebbe on cambiare nel tempo (persistenza)
- Gestibilità: tutti gli URI dovrebbero essere in un sottodominio dedicato
31 ALIADA Final Review Meeting. Luxemburg, November 12th, 2015
URI dereferenziazione
Struttura dell’URI in Aliada
{domain}/{type}/{concept}/{class}/{reference}.{format}
32
Thing
Generic
Document
RDF+XML RDF+N3 RDF+JSON LD+JSON Text/Plain HTML
http://data.szepmuveszeti.hu/id/collections/museum/E18_Physical_Thing/szepmuveszeti.hu_object_29
303 Redirect
http://data.szepmuveszeti.hu/doc/collections/museum/E18_Physical_Thing/szepmuveszeti.hu_object_29
Content negotiation
application/rdf+xml text/rdf+n3 application/rdf+json application/ld+json text/html text/plain
ALIADA Final Review Meeting. Luxemburg, November 12th, 2015
URI dereferenziazione
Pubblicazione
Convertiti in RDF, arricchiti con l’interlinking e disponibili sul Linked Data Server, i dati potrebbero essere qualificati come pubblici, purché l’accesso SPARQL e Linked Data Server lo siano.
Il modulo di pubblicazione di Alida è finalizzato a estendere il concetto di disponibilità e fruizione dei dati, favorendo l’automazione del processo di consegna e la disponibilità del dataset generato su piattaforme pubbliche come datahub.io.*
Il processo, in parte automatico e in parte manuale, prevede l’aderenza a una serie di principi formali, quali per esempio, consistenza del dataset, URI dereferenziabili, presenza di un Linked Data Server che supporti la negoziazione del contenuto.
ALIADA aiuta l’utente automatizzando i passaggi che possono essere svolti dalla macchina e fornendo dei meccanismi di controllo ausiliari per le operazione che devono essere svolte manualmente.
*http://datahub.io
L'ontologia di ALIADA
La prima fase del progetto ha analizzato numerose ontologie su cui modellare il motore di conversione. Il risultato dell’analisi è stata una nuova ontologia, consultabile all’indirizzo http://www.aliada-project.eu/2014/aliada-ontology.owl
L'ontologia di ALIADA
Essa include altre ontologie individuate e scelte per rappresentare le entità trattate:
• Erlangen FRBRoo (FRBRoo): basata sulla definizione dell’ontologia FRBRoo, aggiunge e combina elementi proveniente dalle ontologie ECRM e CIDOC-CRM;
• WGS84 Geo Positioning: per rappresentare concetti geospaziali, localizzabili tramite coordinate geografiche;
• OWL-Time: per i concetti a connotazione temporale;
• SKOS-XL (Simple Knowledge Organization System eXtension for Labels): estensione di SKOS, che aggiunge entità a concetti che nella versione base sono rappresentati da letterali;
• FOAF: per rappresentare concetti relativi a persone, organizzazioni, enti e corrispondenti relazioni.
L’ontologia di ALIADA è, dunque, una meta-ontologia, che, oltre alla integrazione di ontologie esistenti, definisce proprie entità, che derivano dai sistemi di classificazione usati dai partner coinvolti nel progetto.
La versione commerciale di ALIADA sostituisce l’ontologia BIBFRAME a FRBRoo
ALIADA
Automatic publication under LInked dAta paradigm of library Data
http://aliada.scanbit.net/aliada-user-interface-2.0
Andrea Gazzarini, @Cult
Tiziana Possemato, @Cult