Linked Open Data Statistics Belgium Midi-conférence – 20/03/2017 L’objectif de ce midi-conférence est de vous expliquer, par des exemples concrets, ce qu’est le Linked Open Data (LOD). Cette technologie encore peu répandue dans les INS devrait nous permettre de structurer certaines de nos données de façon à ce qu'elles intègrent le Web des données, sorte de banque de données mondiale ouverte à tous. Nous verrons que, dans le Web de données, un fichier, une enquête, une personne, une commune ….est un concept que l’on peut identifier par un URI. Nous verrons comment créer ou ré-utiliser des URI existantes et comment, à l’aide de RDF, former des phrases « sujet-prédicat-objet » (aussi appelé « triplet ») qui lient ces concepts. Nous verrons que, pour les prédicats, il existe des vocabulaires standards permettant de créer des phrases pouvant être facilement interprétées par des agents logiciels. Certains vocabulaires sont particulièrement utiles pour les statisticiens. Notamment pour former des catalogues de données (StatDcat), des fichiers de nomenclatures (SKOS) et des fichiers de méta-données (Disco) ou de données (rdf data cube vocabulary). Nous verrons qu’il existe des grandes banques de données LOD comme DBPedia, Wikidata, Geonames. Ces banques de données nous fournissent un nombre très important d’URI que nous pouvons ré-utiliser dans nos phrases. Enfin, nous verrons qu’il existe des outils pour exploiter ou maintenir des banques de données LOD (SPARQL, Wikibase, …).
Open-Data
Open-data@Statbel Portail Open-data mis en ligne en 2015
Open-data@Statbel +-/ 110: Census, utilisation du sol, statistiques fiscales,… Formats: XLSX Excel Pivot tables CSV, TXT R, SAS, …, PostgreSQL, … GML, SHP QGIS, ArcGIS, … ,
5 * Open-Data
Open-data@Statbel Il existe une mesure de qualité des données open-data
Statbel: Situation actuelle Open-data@Statbel Statbel: Situation actuelle Statbel: Ambition
Resource description framework (RDF)
Uniform resource identifier (URI) Use URIs to identify things, so that people can point at your stuff Une URI permet d’identifier un concept. Exemple d’URI pour la commune de Rixensart: http://vocab.belgif.be/refnis/25091#id En général, à un URI est associé une page web qui documente le concept. Pour Rixensart: http://vocab.belgif.be/refnis/25091
Uniform resource identifier (URI) Autre exemple d’URI Exemple d’URI qui identifie la DG Statistique: https://www.wikidata.org/entity/Q12480 Page Web associée à cette URI: https://www.wikidata.org/wiki/Q12480 Il existe des règles pour former des URIs
Resource description framework (RDF) Dans les fichiers RDF, on stocke des triplets du type “sujet-prédicat-objet” Les sujets sont des URIs. Les prédicats sont des URIs. Les objets sont des URIs ou des litéraux. Exemple (nomenclature): <http://vocab.belgif.be/refnis/25091#id> <http://www.w3.org/2004/02/skos/core#prefLabel> "Rixensart"@fr . Il existe des “vocabulaires standards” (règles pour former des triplets). Skos est l’un d’eux.
Resource description framework (RDF) Il est possible d’utiliser des “prefix” pour “abréger” les URI dans les fichiers RDF Exemple: @prefix refnis: http://vocab.belgif.be/refnis/ . @prefix skos: http://www.w3.org/2004/02/skos/core# . refnis:25091#id skos:prefLabel "Rixensart"@fr. refnis:25091#id skos:broader refnis:25000#id.
Resource description framework (RDF) Exemple de triplets RDF pour décrire une personne: Statbel:YoBa foaf:knows Statbel:DaLe Statbel:YoBa foaf:name « Youri Baeyens » Statbel:YoBa foaf:birthday « 1971-03-31 » Statbel:YoBa foaf:based_near geo:lat=« 50,858542 » Statbel:YoBa foaf:based_near geo:lat=« 4,355753 » Cette description utilise le vocabulaire « foaf »: “FOAF is a project devoted to linking people and information using the Web” Décrit ici: http://xmlns.com/foaf/spec/
Resource description framework (RDF) Exemple de fichier RDF pour décrire une étude (métadonnées): ddi:Study_1 a disco:Study. ddi:Study_1 dcterms:title "National Population and Housing Census, 1980"@en. ddi:Study_1 dcterms:identifier "ARG_1980_PHC_v01_A_IPUMS“ . Cette description utilise le vocabulaire « ddi-rdf » (disco): DDI-RDF is “A vocabulary for publishing metadata about data sets (research and survey data) into the Web of Linked Data” Décrit ici: http://rdf-vocabulary.ddialliance.org/discovery.html
Resource description framework (RDF) RDF = former des triplets Il existe plusieurs syntaxes pour les former: turtle, N-triples, xml, … Exemples: voir note attachée à ce slide. Exemple en RDF/turtle (extrait de Wikipedia): @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix ex: <http://example.org/stuff/1.0/> . <http://www.w3.org/TR/rdf-syntax-grammar> dc:title "RDF/XML Syntax Specification (Revised)" ; ex:editor [ ex:fullname "Dave Beckett"; ex:homePage <http://purl.org/net/dajobe/> ] . Exemple en RDF/XML (extrait de Wikipedia): <rdf:RDF xmlns="http://xmlns.com/foaf/0.1/" xmlns:dc="http://purl.org/dc/terms/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > <Document rdf:about="http://www.w3.org/2001/sw/RDFCore/ntriples/"> <dc:title xml:lang="en-US">N-Triples</dc:title> <maker> <Person rdf:nodeID="art"> <name>Art Barstow</name> </Person> </maker> <Person rdf:nodeID="dave"> <name>Dave Beckett</name> </Document> </rdf:RDF> Exemple en RDF/N-Triples (extrait de Wikipedia): <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Document> . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/terms/title> "N-Triples"@en-US . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _:art . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _:dave . _:art <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _:art <http://xmlns.com/foaf/0.1/name> "Art Barstow". _:dave <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _:dave <http://xmlns.com/foaf/0.1/name> "Dave Beckett".
Linked open-data (LOD)
Linked open data (LOD) Il est possible de lier plusieurs sources RDF. On parle alors de Linked Open Data (LOD). Exemples de sites LOD sur lesquels on peut se lier: Dbpedia Wikidata Geonames Une façon simple de se lier à une autre DB est de ré-utiliser ses URIs Exemple: Statbel:YoBa foaf:interest <http://dbpedia.org/resource/Hiking>
Linked open data (LOD) Exemple de LOD (nomenclature): @prefix refnis: http://vocab.belgif.be/refnis/ . @prefix skos: http://www.w3.org/2004/02/skos/core# . refnis:25091#id skos:prefLabel "Rixensart"@fr. refnis:25091#id skos:broader refnis:25000#id. refnis:25091#id skos:exactMatch <http://sws.geonames.org/2787990>. refnis:25091#id skos:exactMatch <http://www.wikidata.org/entity/Q630478> .
Semantic web
Semantic web L’ensemble des phrases “sujet-prédicat-objet” des différents LOD forment un “knowledge graph” géant dont la taille augmente rapidement c’est le “semantic web” 2007: Acteurs principaux
Semantic web 2017: Acteurs principaux
SPARQL Protocol and RDF Query Language (SPARQL) RDF queries SPARQL Protocol and RDF Query Language (SPARQL)
SPARQL – Un « SQL » pour faire des queries sur RDF Il est possible de faire des requêtes sur des fichiers RDF « SPARQL (prononcé sparkle en anglais : « étincelle ») est un langage de requête et un protocole qui permet de rechercher, d'ajouter, de modifier ou de supprimer des données RDF disponibles à travers Internet. » « Son nom est un acronyme récursif qui signifie Simple Protocol and RDF Query Language. »
WikiData – Wikipedia en version RDF
Exemples de DBs RDF URI: wd:Q493522
Sparql sur Wikidata - http://tinyurl.com/z9a3wrw
Petit outil sympa Vous pouvez faire du SPARQL directement sur des fichiers RDF à l’aide de http://librdf.org/rasqal/
Search portal based on RDF (cool stuff)
Discovery hub
RDF Graphs (cool stuff)
Outils pour visualiser des RDF graphs IsaViz (outil développer par le W3C; travaille avec GraphViz)
Wikidata graph builder
Outils pour visualiser des RDF graphs Gephi et son plug-in « Semantic web import »
RDF Stores
Datalift Datalift: un espèce de SGBD pour triplets. Utilisé par Insee. Un même traitement avec R et Datalift. Voir ici.
Blazegraph
graphdb
Jena
Wikibase Wikibase: outil utilisé par Wikidata
Vocabulaires pour les statisticiens Ontologies for statisticians
Vocabulaires standards Classifications SKOS: Classifications (nomenclatures) XKOS: Extension de SKOS (pour la NACE, …) Documenter une liste de fichiers (catalogue) DCAT StatDCAT-AP GeoDCAT-AP
Vocabulaires standards Meta-données: Dublin core DDI-RDF Données: RDF Data cube vocabulary
Vocabulaires standards Autres vocabulaires intéressants conseillés par Eurostat: The Organization Ontology The PROV ontology Time Ontology in OWL Dublin Core ISA Core Vocabularies in RDF (Person, Public Organisation, Business, Public Service, Location) Vocabulary of Interlinked Datasets (VoID)
Nomenclatures Quelques nomenclatures, « controlled vocabularies » & thesauri conseillés par Eurostat: INSPIRE code lists EuroVoc thesaurus Named Authority Lists (NAL)
LOD dans les INS
LOD dans les INS Eurostat pas encore très actif Quelques INS font déjà du LOD: Insee: quelques tables de codes + population légales Istat ONS + Geoportal uk Census 2011 in Ireland
RDF@INSEE
RDF@INSEE nomenclatures http://rdf.insee.fr/ « Le vocabulaire standard SKOS (Simple Knowledge Organization System) est utilisé comme base pour la publication des codes et nomenclatures. » « Pour décrire correctement les nomenclatures statistiques, le vocabulaire SKOS doit être complété sous divers aspects (représentation des niveaux, des tables de correspondances, etc.) : c'est l'objet du vocabulaire XKOS, qui est une extension de SKOS. » « La NAF et la nomenclature des catégories juridiques sont publiées selon ce vocabulaire. »
RDF@INSEE nomenclatures Nace (extrait) <http://id.insee.fr/codes/nafr2/division/16> a skos:Concept ; skos:inScheme <http://id.insee.fr/codes/nafr2/naf> ; skos:narrower <http://id.insee.fr/codes/nafr2/groupe/16.1> , <http://id.insee.fr/codes/nafr2/groupe/16.2> ; skos:notation "16" ; skos:prefLabel "Manufacture of wood and of products of wood and cork, except furniture; manufacture of articles of straw and plaiting materials"@en , "Travail du bois et fabrication d'articles en bois et en liège, à l'exception des meubles ; fabrication d'articles en vannerie et sparterie"@fr ; skos:scopeNote <http://id.insee.fr/codes/nafr2/division/16/noteGenerale> ; skosxl:altLabel <http://id.insee.fr/codes/nafr2/division/16/label65fr> , <http://id.insee.fr/codes/nafr2/division/16/label40fr> .
RDF@INSEE données
RDF@Statbel
Que publier en LOD? Priorités pour la publication LOD: Catalogue des données (faire savoir aux machines du monde entier que des données sont disponibles chez nous dans des formats csv, …) Des méta-données Des nomenclatures (créer des URIs pour la NACEBEL, le REFNIS, … + créer des fichiers qui exposent les hérarchies, …) Quelques données (par exemple: population légale des communes)
LOD@Statbel – Use Case 1 Catalogue des données disponibles chaque “dataset” recevra un URI; le catalogue des datasets peut être diffusé (facilement importable dans open-data portals)
LOD@Statbel – Use Case 2 Certaines nomenclatures sont déjà disponibles ! Coopération avec FedICT http://vocab.belgif.be/ Refnis avec lien vers: Geonames Wikidata NACE
LOD@Statbel – Use Case 3 Méta-données statistiques (ddi, ..)
LOD@Statbel – Use Case 3 Quelques données de “référence” (chiffres de population, occupation du sol, …) Projet “Elections communales”? Exemple de triplet: “La Commune de Rixensart” “a pour densité de population” 1255 Wikidata:Q630478 Wikidata:Q22856 1255
LOD@Statbel – Use Case 3l Le Linked Data (LOD) peut être intéressant pour un usage interne: RDF Store (répertoire des groupes Antonio, Alexandre,…) KBO
Se former au LOD
Quelques références intéressantes Articles: Introduction au semantic web sur Interstices.info Quelques applications du web sémentique Livres: A semantic web primer MOOCs Web sémantique et web des données sur FUN Introduction to a Web of Linked data sur FUN Semantic web technologies sur HPI