Un serveur SPARQL pour le Sudoc

Depuis juillet 2011, l’ensemble des données Sudoc est accessible en RDF. Si on connaît son identifiant, chacune des dix millions de notices du Sudoc peut être affichée en RDF/XML. Mais encore faut-il connaître cet identifiant… Ce dispositif est utile pour permettre à un programme de naviguer de notice en notice, y compris en rebondissant sur les données RDF d’IdRef par exemple, mais cela ne permet pas d’explorer systématiquement le Sudoc ni d’effectuer une recherche.

SPARQLer le Sudoc ?

Pour ce faire, il faudrait que toutes ces pages RDF soient agrégées en une seule base qui supporte la possibilité d’interroger des données RDF en tant que RDF. Cette possibilité s’appelle SPARQL : il s’agit d’un langage de requête standardisé conçu pour interroger les données RDF. Pour l’ABES, offrir un accès au Sudoc en SPARQL reste un objectif, mais ce n’est pas une priorité de premier niveau. Par contre, faire en sorte que d’autres acteurs puissent récupérer l’ensemble du Sudoc en RDF et ce, s’ils le souhaitent, dans une base RDF compatible avec SPARQL, c’est incontournable.

Moissonner le Sudoc

C’est pourquoi, dès juillet 2011, nous avons indiqué à des agrégateurs potentiels comment moissonner le Sudoc en RDF. De la même manière que les robots des moteurs de recherche peuvent crawler un site web dynamique à partir d’un fichier XML qui liste toutes les URLs du site, les robots des agrégateurs de données RDF ont été invités à crawler le Sudoc de la même manière, mais en demandant explicitement le format RDF/XML. Au passage, ce fichier XML qui liste les URLs est un fichier sitemap et le fait de pouvoir servir une page en HTML ou en RDF (ou autre chose encore) en fonction de la demande du client s’appelle la négociation de contenu.

S’il est en théorie séduisant et rassurant d’imaginer qu’on puisse crawler la version RDF d’une base de données selon la méthode de crawl standard qui fait le web d’aujourd’hui, en pratique, aujourd’hui, ce n’est pas la solution la plus efficace. En un an, Sindice, un des principaux agrégateurs de contenu RDF, n’a moissonné que 10% de la base.

Vous avez prévu quoi pour juillet … 2021 ?

Dumper le Sudoc

Il nous faut donc recourir aux bonnes vieilles méthodes. Nous allons donc générer des exports réguliers du Sudoc en RDF et nous les publierons, en libre accès. Contrairement à la solution du crawl, cette solution du dump implique nécessairement un décalage temporel entre les données du Sudoc et celles de son dump. Nous espérons limiter à un mois ce décalage inévitable.

Afin de roder ce nouveau dispositif, nous avons mis le dump à la disposition de Sindice. Dès que le conseil d’administration aura décidé de la licence juridique associée aux données des réseaux ABES, donc du Sudoc, ce dump sera ouvert à tous.

SPARQLer le Sudoc  avec Sindice !

En attendant, c’est avec enthousiasme que nous avons constaté l’intégration réussie des 300 000 000 de triplets RDF du Sudoc dans le moteur de recherche Sindice et dans son serveur SPARQL. Certes, Sindice est une initiative universitaire, qui ne peut prétendre garantir la continuité de service d’un serveur commercial (ceci dit, Sindice a désormais sa structure commerciale). Certes, les bases de données RDF de cette taille n’ont pas les performances des bases de données relationnelles et encore moins des moteurs de recherche comme Solr. Mais la souplesse et la puissance de SPARQL sont addictifs.

Disposer d’un accès au Sudoc en SPARQL, c’est très précieux pour développer des prototypes, se former au web sémantique sur des données familières, faire des requêtes impossibles avec les interfaces actuelles du Sudoc (Web, Z39.50), identifier avec précision les aspects sur lesquels la conversion actuelle  du MARC en RDF peut être améliorée…. Mais nous ne conseillons pas de faire dépendre un service en production du serveur SPARQL de Sindice. Ce n’est pas le but.

Afin de vous encourager à confesser votre propre addiction dans les commentaires, voici une première requête, très simple, qui liste tous les auteurs que Jacques Roubaud a pu traduire :

SELECT distinct  ?auteur ?auteurnom

FROM <http://www.sudoc.fr/>

WHERE {
  ?doc <http://www.loc.gov/loc.terms/relators/trl> <http://www.idref.fr/027110583/id>.
  ?doc dc:title ?titre.
  ?doc >http://www.loc.gov/loc.terms/relators/aut> ?auteur.
  ?auteur foaf:name ?auteurnom.
      }

Y. Nicolas

Publicités

IdRef dans VIAF et après … #3 Des données et des liens sous licence ouverte

Ce post de fil.abes.fr annonce l’intégration du référentiel IdRef à VIAF et en présente les enjeux stratégiques. Punktokomo prend le relais pour détailler quelques implications pratiques. En voici la troisième.


Comme en témoigne cette courte biographie, VIAF est né comme un projet de recherche porté par OCLC et les bibliothèques nationales allemande, américaine et française. En 2012, VIAF est devenu un service OCLC. C’est un changement important, notamment du point de vue de la gouvernance.

Fort heureusement, VIAF va demeurer une base de données ouverte, en un sens tout à fait strict et explicite puisque ses données sont désormais placées sous la licence ODC-ByOpen Data Commons Attribution License. Cette licence autorise toute réutilisation des données VIAF, à la seule condition de mentionner la source, à savoir VIAF lui-même – et ce sous cette forme précise :

« This [title of report or article or dataset] contains information from VIAF (Virtual International Authority File) which is made available under the ODC Attribution License. »

Cette seule contrainte est déjà de trop pour certains, ceux qui placent leurs données sous une licence encore plus libérale (par exemple sous la licence CC-0). A cette objection, OCLC répond que la seule présence d’un lien vers une URL de VIAF vaudra reconnaissance de la source. VIAF peut donc être interconnecté avec des données sous licence CC-0.

Si vous voulez en savoir plus sur les données VIAF, sa licence de réutilisation ou encore les solutions techniques pour y accéder, consultez la fiche d’identité de ce paquet de données. Tout y est.

Notons pour finir qu’ODC-By est très proche de la licence ouverte d’Etalab, que la BnF, par exemple, a choisie pour encadrer l’ouverture des données RDF de data.bnf.fr.

Y. Nicolas

IdRef dans VIAF et après … #1 Passer d’un identifiant à l’autre (VIAF, IdRef, LC, BnF, Wikipedia, …)

Ce post de fil.abes.fr annonce l’intégration du référentiel IdRef à VIAF et en présente les enjeux stratégiques. Punktokomo prend le relais pour détailler quelques implications pratiques. En voici la première.

Tout l’intérêt de VIAF repose dans son travail d’interconnexion entre des notices d’autorité d’origines différentes. En effet, les algorithmes de VIAF cherchent à identifier toutes les notices d’autorité qui « parlent’ de la même chose, qu’il s’agisse d’une personne, d’une collectivité ou d’une oeuvre. Ils génèrent alors des grappes (clusters) d’autorités. Ces grappes VIAF possèdent elles-même un identifiant unique, en bijection avec chacun des identifiants des autorités membres de la grappe.

Par exemple, l’historien Alain Boureau correspond à la grappe 52358786, qui regroupe l’identifiant IdRef, l’identifiant BnF, l’identifiant de la BN allemande, l’identifiant de la Bibliothèque du Congrès ou encore celui de la Bibliothèque Vaticane. VIAF publie les informations de cette grappe pour qu’elles puissent être lues par un humain (HTML) ou exploitées par un programme (RDF, JSON, MARCXML). Chacune de ces pages  intègre les liens vers les notices d’autorité d’origine, ce qui permet de facilement naviguer de VIAF vers IdRef et les autres bases : connaissant l’identifiant VIAF, un humain ou un programme pourra découvrir l’identifiant IdRef et, en déroulant la bobine de notre web service Biblio, la liste des documents Sudoc liés à cette autorité.

Mais le chemin inverse est tout aussi utile à parcourir : connaissant l’identifiant IdRef, découvrir la grappe VIAF. A terme, cette opération sera possible grâce à l’injection de l’identifiant VIAF à l’intérieur même de chaque autorité IdRef (chantier en cours). En attendant, ce parcours est possible au moyen de l’astuce suivante : connaissant l’identifiant IdRef (ex : PPN = 028270282), on peut accéder à cette page de VIAF http://viaf.org/viaf/sourceID/SUDOC|028270282 qui redirige automatiquement vers l’URL de la grappe : http://viaf.org/viaf/52358786/. Cette redirection peut être exploitée à la fois par un humain et par un programme.

Il est donc possible de faire le chemin aller et le le chemin retour entre VIAF et n’importe quelle autorité d’origine, telle celle d’IdRef. Mais, par transitivité, VIAF peut aussi servir à passer d’une autorité d’origine à une autre, d’une notice de la BN allemande à une notice de la BN espagnole ou d’IdRef à la BnF (et vice versa). Certes, les liens entre les autorités IdRef et les autorités BnF existent déjà, puisque beaucoup de notices IdRef sont créées à partir des notices BnF et en conservent le numéro source. Mais chacun de ces fichiers d’autorité ayant sa propre autonomie, il est probable que VIAF permette de découvrir de nouveaux liens IdRef/BnF, ce qui est une excellente chose pour tout le monde.

Enfin, VIAF contient parfois un lien vers DBpedia, version RDF de Wikipedia versée sur le web de données. Par exemple, en RDF, la grappe Paul Veyne pointe vers cette entrée de DBpedia, et donc de Wikipedia. Là, encore, par transivité, on peut aller de l’autorité IdRef à la page de Wikipedia.

Toutes ces interconnexions contribuent à densifier le maillage de l’information au sein du web de données, et donc à en multiplier les possibilités d’exploitation. Mais en-deçà de cet enjeu global et de long terme, VIAF peut ici et maintenant aider le catalogueur au quotidien.

Y. Nicolas