ens-lyon 17-19 juin 2013 evolution des catalogues : métadonnées, interopérabilité, web...

35
ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ- lemans.fr Participer au Web de données … en utilisant les technologies du web sémantique. Focus sur RDF, OWL, SKOS, SPARQL

Upload: bernarde-legros

Post on 04-Apr-2015

109 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

ENS-LYON17-19 juin 2013

Evolution des catalogues :Métadonnées, Interopérabilité, web sémantique, FRBR et RDA

Philippe.Bourdenet @univ-lemans.fr

Participer au Web de données… en utilisant les technologies du web sémantique.

Focus sur RDF, OWL, SKOS, SPARQL

Page 2: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Problème :Le contenu du web est fait pour être lu par des humains, pas par des ordinateurs.

Problème? : avec l’accroissement du nombre de pages web, les recherches deviennent de moins en moins efficaces.

on arrive aujourd’hui à la limite de l’efficacité des metatags. (crawlés par moteurs de recherche).

Une éventuelle solution ? Consisterait rendre ces contenus compréhensibles par des machines, que les machines puissent identifier leur nature sans ambiguïté. >> d’une certaine façon, donner du sens au contenu (d’où « sémantique »).

Mise en œuvre : il faut mettre à disposition un langage pour décrire des ressources de façon intelligibles (RDF) qui va permettre de définir des structures.

RDF est plus mode de stockage des définitions, un modèle, donc

Une remarque :il faut distinguer cette entreprise de l’IA qui centralise les données dans une base de données, alors qu’avec RDF, elles peuvent être n’importe où, sans qu’on ait besoin de les stocker : chaque élément RDF peut être appelé par un URI.

Pour éviter que les « agents » ou programmes rencontrent des situations ambiguës, (homonymies ou synonymies), il faut introduire des ontologies, qui reposent sur des classes (OWL)

Des promesses : les applications reposant sur ces structures de données vont pouvoir traiter et manipuler des données sans les humains

Des projets ? Pour l’instant le web sémantique est mis en application dans le domaine du commerce électronique, mais cela peu à peu s’étend à d’autres types de données (dans le cadre de l’ouverture des données publiques, BSN, etc.) et d’autres biens de consommation (domotique par exemple).

Du boulot : il faut que les documents soient décrits comme l’attend le web sémantique…

Page 3: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

événement

l’événement <anniversaire> ou <fête d’anniversaire> comporte des propriétés qui peuvent être supportées par des web services : <date>, <heure>, <lieu>, <déplacement>Ces propriétés ou « sèmes » sont reliées entre elles.

on pourrait ajouter <offrir un cadeau> et proposer un <achat de cadeau>, suivi d’une <livraison>

la <livraison> aurait elle-même comme propriété obligatoire : <expéditeur>, <destinataire>, <coût>, <adresse>, etc.

Page 4: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Son outil de recherche : SPARQL

Les requêtes SPARQL s’inspirent de SQL (modèle simple). On peut ajouter une clause DISTINCT après SELECT ou LIMIT, OFFSET, et ORDER après WHERE

des clauses :OPTIONAL

UNION

FILTER

Ex: rapatrier le nom d’une personne et éventuellement son pict

Ex. Trouver les personnes qui ont un e-mail et celles qui ont un pict

Impose des contraintes sur les variables (Ex. on veut trouver toutes les auteurs des publications du mois de septembre 2009)

Dans la documentation SPARQL, il est fait mention d’une autre syntaxe un peu différente : Turtle (pour « Terse RDF Triple Language »)

Soit l’ensemble de données :@prefix dc: <http://purl.org/dc/elements/1.1/> .@prefix : <http://example.org/book/> .@prefix ns: <http://example.org/ns#> .:book1 dc:title "SPARQL Tutorial" .:book1 ns:price 42 .:book2 dc:title "The Semantic Web" .:book2 ns:price 23 .

Soit la requête :PREFIX dc: <http://purl.org/dc/elements/1.1/>PREFIX ns: <http://example.org/ns#>SELECT ?title ?priceFROM <ex1.ttl>WHERE { ?x dc:title ?title .OPTIONAL { ?x ns:price ?price . FILTER (?price < 30) }}

Résultat : | title | price |==============================| "The Semantic Web" | 23 || "SPARQL Tutorial" | |------------------------------

Page 5: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

RDF-S (RDF-Schema)Permet de définir un modèle ou schéma dans un domaine d’expertise :- définition de hiérarchies de classes et de propriétés- formulation de contraintes.

Comment déclarer une classe de ressource : 2 moyens

1. utiliser l’attribut rdf:type en se référant au type Class

<rdf:Description rdf:about="#Artist"><rdf:type><rdf:Description rdf:about="http://www.w3.org/2000/01/rdfschema#Class"/></rdf:type></rdf:Description>

2. utiliser l’espace de nom rdfs à l’aide d’une déclaration xmlns:rdfs=http://www.w3.org/2000/01/rdf-schema#

<rdfs:Class rdf:ID="Artist"></rdfs:Class>

#Artist

Dans un éditeur de graphe, la fonction AddSubclassOf permet d’ajouter une sous-classe #Painter à la Classe #Artist

#Painter

Page 6: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Pourquoi passer de RDF-S à OWL ?RDF-S apparaît vite comme insuffisant, en empruntant des éléments de la logique formelle :

rdfs:range définit le domaine de valeurs d’une propriété quelle que soit la classe concernée Ex. ne permet pas d’exprimer que les vaches ne mangent que de l’herbe, alors que d’autres sortes d’animaux mangent aussi de la viande

Pas de possibilité d’exprimer que deux classes sont disjointesEx. La classe des hommes et des femmes sont disjointes

Ne permet pas de créer des classes par combinaison ensembliste d’autres classes (inter, union, complément)Ex. Si l’on veut construire la classe Personne comme l’union disjointe des classes Hommes et Femmes

Ne permet pas de définir de restriction sur le nombre d’occurrences de valeurs que peut prendre une propriété. Ex. On ne peut pas dire qu’une personne a exactement deux parents

ne permet pas de définir certaines caractéristiques des propriétés: transitivité (ex: estPlusGrand-Que), unicité (ex: estLePèreDe), inverse (ex: mange est la propriété inverse de estMangéPar). [Paul] – a_pour_sœur [Virginie]

Si les contraintes d’expressivité sont trop grandes, il faut passer à des définitions ontologiques « déportées », extérieures au schéma, qui vont uniquement gérer la complexité des relations logiques entre classes, d’où OWL

Page 7: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Ontologies ?

Page 8: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Et pour les bibliothèques ?

Page 9: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

[A propos du web sémantique]

“Parmi les changements que les bibliothèques vont avoir besoin de mettre en oeuvre pour y pourvoir, doit figurer la migration du catalogue public d’une base de données de notices bibliographiques, autonome et isolée, vers un ensemble de données “hyperliées” qui peut interagir avec les ressources informationnelles du web. On pourra alors intégrer les données documentaires aux environnements numériques de travail des utilisateurs, auxquels les bibliothèques apporteront leur service.”

ALA’s Library Technology Reports is publishing Understanding the Semantic Web: Bibliographic Data and Metadata by Karen Coyle

Page 10: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

examen

programmedocument

diplômepréparé

droits deprêt

situation

localisation

droits d’accès

heuresd’ouverture

Page 11: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

examen

programmedocument

diplômepréparé

droits deprêt

situation

localisation

droits d’accès

heuresd’ouverture

Page 12: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

examen

programmedocument

diplômepréparé

droits deprêt

situation

localisation

droits d’accès

heuresd’ouverture

Page 13: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

programmedocument

droits d’accès

auteur

titreéditeur

mots-clés

niveau « événement »

niveau bibliographique

œuvremanifestation

Page 14: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

« Pourquoi s’inquiéter ? »

Pour

quoi

Page 15: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

001 070305692010 ##$a1-59059-003-1$bbr.073 #0$a9781590590034200 1#$a@XML programming$bTexte imprimé$eWeb applications and Web services with JSP and ASP$fAlexander Nakhimovsky, Tom Myers210 ##$aBerkeley, Calif.$cApress$dcop. 2002215 ##$a1 vol. (XVIII-555 p.)$cill., couv. ill. en coul.$d24 cm225 0#$aThe @expert's voice$ebooks for professionals by professionals300 ##$aLa couv. porte en plus : "Learn practical and up-to-date information on XML specifications and related technologies, including XLink, XPointer, XML Schema, RELAX NG, SOAP, WSDL, UDDI; "Find substantial examples in Java and VB/VB Script that are written to be understandable by any programmer, whatever his or her language background"; "Create Web applications and Web services that use DOM, SAX, and XSLT to process XML data, both virtual (generated in memory) and persistent (stored in files or databases)320 ##$aIndex410 ##$0069269572@Books for professionals by professionals605 ##$a@Active server pages$2lc606 ##$aXML (Document markup language)$2lc606 ##$aMicrosoft Visual BASIC$2lc606 ##$aJavaServer pages$2lc606 ##$aWeb sites$xDesign$2lc606 ##$aWeb site development$2lc606 ##$aJava (Computer program language)$2lc606 ##$3035260521XML (langage de balisage)$2rameau606 ##$3052625877JavaServer pages (logiciel)$2rameau606 ##$3035805684Sites Web -- Développement$2rameau606 ##$3050768735Fournisseurs de services applicatifs$2rameau680 ##$aQA76.76.H94$bN355x 2002700 #1$3059632887Nakhimovsky, Alexander D.$4070701 #1$3059632585Myers, Thomas J. (1952-....)$4070801 #0 $bPPT$gAACR2801 #1 $bPPT$gAACR2

Page 16: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

001 070305692010 ##$a1-59059-003-1$bbr.073 #0$a9781590590034200 1#$a@XML programming$bTexte imprimé$eWeb applications and Web services with JSP and ASP$fAlexander Nakhimovsky, Tom Myers210 ##$aBerkeley, Calif.$cApress$dcop. 2002215 ##$a1 vol. (XVIII-555 p.)$cill., couv. ill. en coul.$d24 cm225 0#$aThe @expert's voice$ebooks for professionals by professionals300 ##$aLa couv. porte en plus : "Learn practical and up-to-date information on XML specifications and related technologies, including XLink, XPointer, XML Schema, RELAX NG, SOAP, WSDL, UDDI; "Find substantial examples in Java and VB/VB Script that are written to be understandable by any programmer, whatever his or her language background"; "Create Web applications and Web services that use DOM, SAX, and XSLT to process XML data, both virtual (generated in memory) and persistent (stored in files or databases)320 ##$aIndex410 ##$0069269572@Books for professionals by professionals605 ##$a@Active server pages$2lc606 ##$aXML (Document markup language)$2lc606 ##$aMicrosoft Visual BASIC$2lc606 ##$aJavaServer pages$2lc606 ##$aWeb sites$xDesign$2lc606 ##$aWeb site development$2lc606 ##$aJava (Computer program language)$2lc606 ##$3035260521XML (langage de balisage)$2rameau606 ##$3052625877JavaServer pages (logiciel)$2rameau606 ##$3035805684Sites Web -- Développement$2rameau606 ##$3050768735Fournisseurs de services applicatifs$2rameau680 ##$aQA76.76.H94$bN355x 2002700 #1$3059632887Nakhimovsky, Alexander D.$4070701 #1$3059632585Myers, Thomas J. (1952-....)$4070801 #0 $bPPT$gAACR2801 #1 $bPPT$gAACR2

Page 17: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

RDF et SPARQL

RDF est un modèle, plus qu’un format : il permet une description « étoilée » d’un objet ou d’une ressource et ménage une relation privilégiée entre des sous-éléments.

Un document structuré en RDF est un « triplet », une association de 3 éléments :- sujet = représente la ressource décrite (URI)- prédicat = une propriété applicable à la ressource (URI)- objet = la valeur du prédicat (URI)

-On parle aussi de représentation par graphe (ou graphe RDF)

Pour décrire un site web, par exemple « European Society for Oceanists », il faut isoler :- le sujet (la ressource) : http://joensuu/fi/esfo/- le prédicat (propriété) : http://purl.org/dc/elements/1.1/title- l’objet : « European Society for Oceanists »

Ce triplet permet d’identifier le sème suivant : (voici) un site web dont la localisation est http://joensuu/fi/esfo/ et dont le titre est ; « European Society for Oceanists »

RDF peut être exprimé avec la théorie des ensemble ou la théorie des modèles (formation d’arcs) et ne gère pas forcément du XML, mais W3C l’a orienté comme tel dans son exploitation pour le web.

Page 18: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Les requêtes SPARQL s’inspirent de SQL (modèle simple). On peut ajouter une clause DISTINCT après SELECT ou LIMIT, OFFSET, et ORDER après WHERE

des clauses :OPTIONAL

UNION

FILTER

Ex: rapatrier le nom d’une personne et éventuellement son pict

Ex. Trouver les personnes qui ont un e-mail et celles qui ont un pict

Impose des contraintes sur les variables (Ex. on veut trouver toutes les auteurs des publications du mois de septembre 2009)

Dans la documentation SPARQL, il est fait mention d’une autre syntaxe un peu différente : Turtle (pour « Terse RDF Triple Language)

Soit l’ensemble de données :@prefix dc: <http://purl.org/dc/elements/1.1/> .@prefix : <http://example.org/book/> .@prefix ns: <http://example.org/ns#> .:book1 dc:title "SPARQL Tutorial" .:book1 ns:price 42 .:book2 dc:title "The Semantic Web" .:book2 ns:price 23 .

Soit la requête :PREFIX dc: <http://purl.org/dc/elements/1.1/>PREFIX ns: <http://example.org/ns#>SELECT ?title ?priceFROM <ex1.ttl>WHERE { ?x dc:title ?title .OPTIONAL { ?x ns:price ?price . FILTER (?price < 30) }}

Résultat : | title | price |==============================| "The Semantic Web" | 23 || "SPARQL Tutorial" | |------------------------------

Page 19: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">

<rdf:Description rdf:about=" http://joensuu/fi/esfo/ "> <dc:title> European Society for Oceanists </dc:title><dc:author>ESfO Directory Membership</dc:author> <dc:subject>Oceanography</dc:subject> <dc:subject>Oceans</dc:subject> <dc:subject>Digital humanities</dc:subject>

</rdf:Description></rdf:RDF>

Liste des assertions utilisées dans ce cas :

http://purl.org/dc/elements/1.1/title TITRE European Society for Oceanistshttp://purl.org/dc/elements/1.1/author AUTEUR = ESfO D.M.http://purl.org/dc/elements/1.1/subject MOT SUJET = Oceanographyhttp://purl.org/dc/elements/1.1/subject MOT SUJET = Oceans

« Notice » RDF :

Page 20: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Requêtes sur des personnesPour définir des personnes, on peut utiliser plusieurs balises : title, nickname, gender, etc.

Une personne est identifiée par un fichier FOAF, qui peut êtreplacé n’importe où sur le Web, et qui contient, dans des champs normés et en XML, desinformations la décrivant.

Chacun peut choisir le nombre et la profondeur des informations le concernant, parmi : le nom, l’adresse email, l’adresse du site Web et/ou du blog, les adresses des photos, les études suivies, les centres d’intérêt, les , etc. (plusieurs dizaines de champs possibles, répartis en cinq grandes catégories : - les données de base (nom, prénom, etc.),- les informations personnelles (centres d’intérêt, connaissances...),- les comptes en lignes (email, messageries instantanées...),- les documents et images (textes produits par la personne, photos personnelles...),- les groupes et projets.

Pour la dernière il est possible d’exprimer le rattachement d’une personne à une organisation (association, entreprise) mais surtout, plus généralement, à un groupe quelconque. Il peut s’agir d’un groupe structuré (parti politique), informel, ou simplement d’une communauté en ligne.

Les champs FOAF sont conçus pour exprimer de façon détaillée les caractéristiquesd’un individu et « ses liens » avec d’autres éléments ou entités du réseau (documents, images, ou d’autres individus.

Présente un intérêt pour le web sémantique et permet de répondre à des questions complexes du type : y-a-t-il quelqu’un qui travaille dans un BU, qui catalogue des ouvrages anciens, qui a des connaissances expertes en paléographie et qui fasse partie d’un groupe de normalisation ?

Page 21: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

FOAF permet la fusion et le rebond sur une base de connaissance qui peut s’enrichir très aisément et rapidement. (« cit. F. Lapique) :

« Supposons que Pierre crée son fichier FOAF, et qu’il ne dispose pasde photos de lui-même. L’un de ses amis, Paul, a lui aussi un fichier FOAF, dans lequel ilindique l’adresse d’une photo le montrant en compagnie de Pierre. Il est alors très facile, defaçon automatisée, de fusionner les deux fichiers FOAF pour que la question « Où peut-onconsulter une photo de Pierre ? » fournisse une réponse, en renvoyant sur la photo présentantPierre et Paul ».

Même si l’on ne dispose pas d’un annuaire centralisé ou d’un fichier complet d’autorités, il est possible de lier des personnes , de lier leurs attributs, comme si toutes ces entrées figuraient dans une même base de données.

Page 22: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

<foaf:Agent rdf:nodeID="id2244837"><foaf:name>Dave Beckett</foaf:name><rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/><foaf:weblog><foaf:Document rdf:about="http://journal.dajobe.org/journal/"><dc:title>Journalblog by Dave Beckett</dc:title><rdfs:seeAlso><rss:channel rdf:about="http://journal.dajobe.org/journal/comments.rdf"><foaf:maker rdf:nodeID="id2244837"/><foaf:topic rdf:resource="http://www.w3.org/2001/sw/"/><foaf:topic rdf:resource="http://www.w3.org/RDF/"/></rss:channel></rdfs:seeAlso></foaf:Document></foaf:weblog><foaf:interest rdf:resource="http://www.w3.org/2001/sw/"/><foaf:interest rdf:resource="http://www.w3.org/RDF/"/></foaf:Agent>

Soit une notice RDF pour le graphe foaf:blogger

Je cherche l’URL du Blog de Dave Beckett

PREFIX foaf: <http://xmlns.com/foaf/0.1/>SELECT ?urlFROM <http://planetrdf.com/bloggers.rdf>WHERE {?contributor foaf:name "Dave Beckett" .?contributor foaf:weblog ?url .}

----------------------------------------| url |=============================| <http://journal.dajobe.org/journal/> |----------------------------------------

Page 23: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

http://planetrdf.com/bloggers.rdf

Page 24: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Je veux un service qui m’indique les 10 derniers articles des personnes que Pierre Gille connaît :

PREFIX foaf: <http://xmlns.com/foaf/0.1/>PREFIX rss: <http://purl.org/rss/1.0/>PREFIX dc: <http://purl.org/dc/elements/1.1/>SELECT ?title ?known_name ?linkFROM <http://www.domaine.net/morten/index.rdf>FROM NAMED <profil.rdf>WHERE {GRAPH <profil.rdf> {?me foaf:name "Pierre Gille" .?me foaf:knows ?known_person .?known_person foaf:name ?known_name .} .?item dc:creator ?known_name .?item rss:title ?title .?item rss:link ?link .?item dc:date ?date.}

ORDER BY DESC(?date) LIMIT 10

2. on cherche dans le dataset les contributions de ses connaissances (on précise que l’on veut un résultat au format XML)

1. On cherche dans le graphe profil.rdf, :

3. On classe les résultats par date pour avoir les derniers, que l’on limite à 10

Si les personnes trouvées ont indiqué leur localisation (eg: <geo:Point geo:lat="51.473" geo:long="-2.5432"/>), on peut imaginer des possibilités encore plus étendues avec l’intégration de l’API Google Maps ! Et répondre à des questions encore plus complexes sous forme de service :Je cherche la localisation sur une carte des bibliothèques dépositaires des 3 derniers articles produits par les contributeurs de tel colloque auquel a participé telle personne…

Page 25: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

SPARQL : les formes de recherche

SELECTRetourne toutes ou une partie des informations qui correspondent à une requête formulée

CONSTRUCTRetourne un graphe RDFconstruit par substitution de variables dans un modèles à trois dimensions (triplet) :_:a foaf:name ‘Alice’_:a foaf:mbox <mailto:[email protected]> CONSTRUCT { < http://exemple .org/person#Alice > vcard:FN ?name } WHERE { ?x foaf:name ?name }Crée des propriétés vcard à partir des informations FOAF:=> < http://exemple .org/person#Alice > vcard FN ‘Alice’

ASKRetourne un indicateur booléen qu’une requête ait des réponses ou pasASK { ?x foaf:name ‘Alice’}S’il en existe une, la réponse sera‘yes’La réponse est enveloppée dans le code :

DESCRIBERetourne un graphe RDF qui décrit la ressource trouvée : fonction informative

<?xml version=1.0<sparql xmlns= «http://www.w3.org/2005/sparql – results# » >

<head></head><results>

<boolean>true</boolean></results>

</sparql>

Page 26: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Le requêtage SPARQL s’inspire de SQL (modèle simple). On peut ajouter une clause DISTINCT après SELECT ou LIMIT, OFFSET,et ORDER après WHERE

Clauses :OPTIONAL

UNION

FILTER

Ex: rapatrier le nom d’une personne et éventuellement son pict

Ex. Trouver les personnes qui ont un e-mail et celles qui ont un pict

Impose des contraintes sur les variables (Ex. on veut trouver toutes les auteurs des publications du mois de septembre 2009)

Dans la documentation SPARQL, il est fait mention d’une autre syntaxe un peu différente : Turtle (pour « Terse RDF Triple Language)

Soit l’ensemble de données :@prefix dc: <http://purl.org/dc/elements/1.1/> .@prefix : <http://example.org/book/> .@prefix ns: <http://example.org/ns#> .:book1 dc:title "SPARQL Tutorial" .:book1 ns:price 42 .:book2 dc:title "The Semantic Web" .:book2 ns:price 23 .

Soit la requête :PREFIX dc: <http://purl.org/dc/elements/1.1/>PREFIX ns: <http://example.org/ns#>SELECT ?title ?priceFROM <ex1.ttl>WHERE { ?x dc:title ?title .OPTIONAL { ?x ns:price ?price . FILTER (?price < 30) }}

Résultat : | title | price |==============================| "The Semantic Web" | 23 || "SPARQL Tutorial" | |

------------------------------

Page 27: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Types d’applications concrètes

http://sparna.fr/linked-data-demo.html

Informations issues de DBPedia.org

<p>Récemment j'ai déménagéà <span class="tag" rel="dc:subject" resource="http://fr.dbpedia.org/resource/Tours">Tours</span> et… </p>

(Code source)

By Thomas Francart

Voir aussi : http://labs.sparna.fr/

Page 28: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Dbpedia.org

http://fr.dbpedia.org/page/ToursPropriétés (interrogeables en SPARQL)

Données liées : valeurs

Se présente commeUne base de donnéesEncyclopédique (miseà jour par les collectivités)

Page 29: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

ISIDORE

=> http://www.rechercheisidore.fr/sqe

Isidore propose un éditeur de requêtes SPARQL qui pointe vers son entrepôt RDF.

Ici, une requête qui donne un aperçu des concepts disponibles.

Page 30: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Avec Twinkle :

<http://dbpedia.org/sparql> a sources:Endpoint ; sources:defaultGraph "http://dbpedia.org" ; rdfs:label "DBpedia.org".

<http://www.rdfabout.com/sparql> a sources:Endpoint ; rdfs:label "GovTrack.us".

<http://revyu.com/sparql> a sources:Endpoint ; rdfs:label "Reyvu.com". <http://rechercheisidore.fr/sparql/> a sources:Endpoint ; rdfs:label "Isidore.fr".

Définition des Endpoint dans $/etc/config.n3

Page 31: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Les collections d’isidore :(classées par ordre alphabétique de description et limitées à 300)

Page 32: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Données gouvernementales

Données culturelles

Données scientifiques

Données environnementales & économiques

Langage d'interrogation SPARQL pour RDFFormat XML des résultats d'interrogation SPARQLProtocole SPARQL pour RDF

Format JSON (Java Script Object Notation) des résultats d'interrogation SPARQL(http://www.w3.org/TR/2007/NOTE-rdf-sparql-json-res-20070618/ )

Nouveau mode…

… de curation de contenu. La recherche sur le web se fait comme dans une application, dont les données sont contenus dans d’immenses réservoirs liés, comme dans unebase de données locale

SPARQL devient un point d’entrée vers un niveau encyclopédique qui fournirt des possibilités de nvaigation entre lLes ources et à l’interrieur des sources, entre les notions (découverte, sérendipité)

http://www.yoyodesign.org/doc/w3c/rdf-sparql-query/, 2008

Plan d’ouverture des données publiques

… de représentation du web : le rapport à l’information se trouve profondément modifié. Elle est structurée, intelligente et tournée vers les usagers (compréhension des modèles cognitifs et des modèles de recherche d’information (RI)

• SPARQL EndPoint (« extrémité » ou handler), à la jonction entre l’interface d’interrogation et la base de connaissance, permet d’appliquer des requêtes.

Page 33: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Des applications au domaine universitaire

exemple d’articulation de donnéesbibliographiques avec des donnéesPédagogique ou encyclopédiques

Page 34: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Des outils

L’éditeur oxygen permet une représentation « hr » des données

Virtuoso (SPARQL), e.g. http://dbpedia.org/sparql : un éditeur de requêtes accessiblesur le web, plus léger à utiliser que twinkle, mais qui limite l’exploitation des données.

Version « Sindice » de Virtuoso : http://sparql.sindice.com/ (cité sur Puktokomo)

http://validator.lod-cloud.net/ : un testeur d’entrepôts RDF qui fournit des données sur Les Endpoint, les conditions d’utilisations, les indices de qualité, etc.

De nombreux tutoriels sur le web, comme la présentation de Gautier Poupeau (Cf. INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE, Le document numérique à l’heure du web de données: séminaire INRIA Carnac, 1er - 5 octobre 2012, Paris, ADBS éditions, 2012.)pour aller plus loin :http://fr.slideshare.net/AntidotNet/sparql-comment-illuminer-vos-mashups-en-consommant-les-donnes-du-linked-data

ZOTERO : gestionnaire de références bibliographiques (ex. diapo suivante) qui permet la constitution de réservoirs locaux en rdf. Twinkle peut ensuite faire pointer les recherches SPARQL sur un fichier structuré

http://www.sudoc.fr/016826019/rdf

Des perspective avec la présentation des données du SUDOC en RDF

Page 35: ENS-LYON 17-19 juin 2013 Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA Philippe.Bourdenet @univ-lemans.fr Participer

Des outils : export d’une notices en RDF à partir de zotero