theses.fr : l’API XML de recherche

logoThesesFrtheses.fr dispose d’une API permettant de récupérer les résultats d’une requête.

Construisez votre requête via l’interface http://www.theses.fr et ajoutez à l’URL de la page le paramètre &format= suivi du format choisi parmi les trois actuellement proposés : XML, JSON et ATOM.

Exemple : vous cherchez toutes les thèses soutenues à Aix-Marseille 2 entre 2010 et 2011 ayant comme discipline « Environnement et santé » et pour lesquelles le texte intégral est accessible en ligne. Dans l’interface, sélectionnez les filtres et facettes correspondants : filtre « Uniquement les thèses soutenues accessibles en ligne » ; date de soutenance entre 2010 et 2011 ; facette Etablissement « Aix-Marseille 2 »  et facette Discipline « Environnement et santé »
L’URL de votre requête est :

http://www.theses.fr/?q=&fq=dateSoutenance:[2010-01-01T23:59:59Z%2BTO%2B2011-12-31T23:59:59Z]&checkedfacets=etablissement=Aix Marseille 2;discipline=Environnement et santé;&start=0&status=&access=accessible:oui

Ajoutez &format=xml à cette URL.

http://www.theses.fr/?q=&fq=dateSoutenance:[2010-01-01T23:59:59Z%2BTO%2B2011-12-31T23:59:59Z]&checkedfacets=etablissement=Aix Marseille 2;discipline=Environnement et santé;&start=0&status=&access=accessible:oui&format=xml

Vous obtenez un fichier XML issu du moteur SolR utilisé par theses.fr

Pour chaque thèse vous disposez :

  • de l’indicateur de la disponibilité de la thèse sur le web : accessible : oui / non
  • du nom et prénom de l’auteur
  • du numéro de la notice d’autorité de l’auteur dans le Sudoc et dans IdRef
  • de la date de soutenance
  • des noms et prénoms des directeurs de thèse
  • des numéros de leurs notices d’autorité dans le Sudoc et dans IdRef
  • de la discipline de la thèse
  • du nom de de l’établissement de soutenance
  • du numéro de sa notice d’autorité dans le Sudoc et dans IdRef
  • de la langue de la thèse
  • du numéro national de thèse pour les thèses soutenues
  • des codes de domaine (codes oaiset issus de la classification décimale Dewey et utilisés par la recommandation TEF)
  • du statut de la thèse : soutenue / en préparation
  • du titre de la thèse

Vous pouvez aussi obtenir ces données au format JSON en ajoutant à l’URL &format=json

Le format ATOM est également disponible en ajoutant &format=atom.

 

Remarque : quelle différence entre le bouton « S’abonner » et le paramètre &format=atom ?
Les données sont les mêmes mais le tri est différent. Le bouton  « S’abonner » génère un flux ATOM trié par date de soutenance décroissant.

Le paramètre  &format=atom applique comme critère de tri celui choisi dans l’interface au moment de la génération de la requête.

L’API de recherche de theses.fr permet de récupérer les résultats de toutes les recherches faites dans theses.fr : filtres, facettes et chaîne de caractère compris.
Par exemple, vous voulez récupérer en JSON la liste des thèses soutenues depuis 2009 en anglais qui traitent du lessivage des terres rares (si si !), votre requête sera :

http://www.theses.fr/?q=lessivage « terres rares »&fq=dateSoutenance:[2009-01-01T23:59:59Z%2BTO%2B2011-12-31T23:59:59Z]&checkedfacets=langueThese=en;&start=0&status=&access=&format=json

Le dernier chapitre de la documentation de theses.fr est consacré aux API.

N’hésitez pas à utiliser le guichet d’assistance ABESstp pour nous faire part de vos remarques.

IMR

theses.fr : les technologies utilisées

logoThesesFrtheses.fr a été développée en interne par l’ABES.

Il s’agit d’une application web Java, tournant sur le conteneur de servlet Tomcat, et dont les urls sont réécrites via Apache.
Nous avons choisi d’utiliser uniquement des JSP et Servlet, sans framework particulier ; voici les quelques librairies utilisées :  Saxon / JDOM / SolRJ / JSON …
La partie « visible » est constituée d’HTML (bien sûr!) et d’une feuille de style (créée par Oxynel), ainsi que de javascript (JQuery) pour les widgets présents : autocompleter, slider, checkers…
Mais theses.fr sait délivrer autre chose que de l’HTML, via ses Servlets. Les API XML de theses.fr vous permettent d’obtenir le contenu sous différents formats, tels que (pour l’instant !) :
– Flux Atom
– RDF
– XML

Les données sont stockées dans une base Oracle : les métadonnées des thèses ainsi que le plein texte sont stockées dans une table (une colonne contenant les métadonnées sous forme TEF étendu, une colonne contenant le plein texte extrait du fichier PDF), la clé de la table est soit le numéro national de thèse, soit le numéro de la thèse en préparation (qui sera fourni par la future application STEP). Ainsi, via l’url http://www.theses.fr/n° on accède aux métadonnées de cette table.
D’autres tables seront par la suite utilisées pour gérer l’authentification qui permettra par exemple de sauvegarder les recherches.

Le principal challenge a été de fournir un moteur de recherche rapide pour ces données. Challenge d’autant plus crucial que le volume de données à l’ouverture n’a rien à voir avec celui que theses.fr devra supporter dans quelques mois, une fois  chargées les métadonnées des thèses décrites dans le Sudoc et le texte intégral des thèses déposées dans TEL.
Nous avons choisi la plateforme de recherche opensource Apache SolR, basée sur Apache Lucene, qui fournit par défaut de nombreuses fonctionnalités :
– recherche plein texte
– highlighting (surlignage)
– facettes
– support de différent type de document (word, pdf…)
– recherche distribuée
– réplication d’index automatique

La plateforme de production qui permet d’avoir un service 24h/24 avec tolérance de pannes est composée de serveurs Red Hat Enterprise (linux) :
– deux boîtiers de répartition de charge
– deux serveurs frontaux (Apache + Tomcat)
– un serveur de fichiers (NAS)
– deux serveurs de recherche (Tomcat + Solr)
– deux serveurs de base de données (Oracle en SAN)

Cette plateforme sert pour toutes les nouvelles applications développées par l’ABES : IdRef, STAR, STEP, theses.fr, les API Sudoc…

Pour de plus amples renseignements, n’hésitez par à contacter l’équipe technique via ABESstp

A. Charot

theses.fr : l’API XML des personnes

logoThesesFrtheses.fr dispose d’une API dédiée aux personnes. Elle permet de récupérer les informations de la personne et la liste des thèses liées.

Repérez la page de la personne qui vous intéresse, et ajoutez le paramètre .rdf à l’URL de la page.

Exemples : http://www.theses.fr/034282297

et http://www.theses.fr/034282297.rdf

Vous obtenez un fichier RDF/XML.

Les données décrivant la personne utilisent le vocabulaire FOAF, les données décrivant les thèses utilisent BIBO et DC, les relations sont exprimées grâce aux MARC RELATORS PROPERTIES

theses.fr utilise les autorités du Sudoc : chaque personne possède un identifiant propre à theses.fr mais aussi son  identifiant pérenne issu du référentiel IdRef.

Attention : cet API ne permet pas de récupérer le nuage de mots de la personne disponible dans l’interface de theses.fr

Le dernier chapitre de la documentation de theses.fr est consacré aux API.

N’hésitez pas à utiliser le guichet d’assistance ABESstp pour nous faire part de vos remarques.

IMR

theses.fr : l’API XML des thèses

logoThesesFrMoteur de recherche des thèses de doctorat françaises, theses.fr propose des API XML d’accès aux données.

Le principe est d’utiliser l’interface puis d’ajouter un paramètre à l’URL pour obtenir les données brutes.

Pour récupérer les données d’une thèse de theses.fr en RDF, repérez la thèse convoitée, récupérez son URL, ajoutez .rdf

Exemples :

http://www.theses.fr/2009PA040090

et

http://www.theses.fr/2009PA040090.rdf

Dans le fichier RDF/XML, les vocabulaires suivants sont utilisés

  • pour qualifier les éléments de la thèse : Dublin Core, BIBO, ISBD (vocabulaire en cours de normalisation par l’IFLA)
  • pour décrire les personnes et les organismes : FOAF
  • pour décrire les relations : MARC RELATORS PROPERTIES

Le dernier chapitre de la documentation de theses.fr est consacré aux API.

Les API de theses.fr démarrent modestement ;  n’hésitez à nous faire part de vos besoins via le guichet d’assistance ABESstp

IMR

IdRef : des pages HTML et RDF plus riches

En Octobre 2010, l’ABES a inauguré IdRef, avec l’ambition de promouvoir l’utilisation des autorités Sudoc au-delà du Sudoc, et même au-delà des seules applications ABES comme Calames ou STAR.

Parmi les moyens techniques mis au service de cette stratégie, figurait l’exposition sur le Web des données d’autorité au moyen de pages HTML et RDF dédiées et d’une batterie d’URL pérennes associées. Depuis ce matin, ces pages sont considérablement enrichies.

IdRef, lié à Sudoc. Et inversement.

Jusqu’à maintenant, ces pages HTML et RDF reflétaient seulement le contenu des notices d’autorité UNIMARC. Désormais, elles contiennent les références bibliographiques de tous les documents signalés dans le Sudoc qui possèdent un lien vers ces notices d’autorité.

Ainsi, à la page suivante :

http://www.idref.fr/027182800

vous trouverez quelques informations sur Paul Veyne, tirées de sa notice d’autorité (version UNIMARC en XML), mais aussi la liste raisonnée de tous les documents qui lui sont liés. Cette liste est raisonnée au sens où ces documents sont regroupés en fonction du rôle qu’y joue Paul Veyne (auteur, directeur de thèse, préfacier, etc.)

Pour obtenir la version RDF/XML de ces données, il suffit d’ajouter  l’extension .rdf à l’URL précédente :

http://www.idref.fr/027182800.rdf

On voit à cette adresse que les données RDF d’IdRef pointent désormais vers les données RDF du Sudoc, publiées aujourd’hui. Et l’inverse est également vrai, comme le montre cet exemple :

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

Les données RDF d’IdRef pointent également vers le référentiel géographique Geonames ou le référentiel de langues Lexvo. Par la suite, nous avons bon espoir de pouvoir établir des liens vers d’autres référentiels, comme VIAF pour les personnes ou Rameau pour les concepts.

Merci

Merci aux quelques milliers de catalogueurs qui, depuis des années, ont établi ces millions de liens ! Et merci aussi à eux pour leur vigilance dans la saisie des données codées !

Le Web de données, reconnaissant.

Documentation technique : http://documentation.abes.fr/aideidref/developpeur/ch03.html

Contact : passez par l’interface d’assistance d’IdRef > Domaine Web Services

Le Sudoc sur le Web de données : plus de détails

Après d’autres catalogues, l’ABES publie aujourd’hui les 10 millions de notices bibliographiques du Sudoc sur le Web de données. Cette décision vient compléter les précédentes initiatives de l’Agence en matière de participation au Web sémantique :

  • En 2008, Calames, catalogue des archives et des manuscrits, devenait conforme à RDFa.
  • En octobre 2010, dès son ouverture, IdRef exposait en RDF/XML plus de 2 millions d’entités décrites par ses notices d’autorité. D’ailleurs, à partir d’aujourd’hui, ces données RDF/XML sont encore plus riches.
  • En octobre 2010, à l’occasion de l’ouverture de la nouvelle version de STAR, application professionnelle de gestion des thèses numériques, chaque thèse de STAR était décrite par une page HTML conforme à RDFa. D’ici quelques jours, ces milliers de pages seront refondues et absorbées dans theses.fr, le portail des thèses françaises. theses.fr restera conforme à RDFa et proposera également des pages RDF/XML.

Comment accéder au contenu sémantique des pages Sudoc ?

Si vous utilisez l’interface Web classique du Sudoc, vous ne pourrez pas accéder, pour l’instant, à la version sémantique des données Sudoc. En effet, cette interface est générée par un logiciel fourni par un des prestataires de l’ABES, ce qui limite notre marge de manœuvre technique.

Il faut donc partir des nouvelles URL officielles du Sudoc, qui sont de type :

http//www.sudoc.fr/{identifiant PPN}

dont, par exemple :

http://www.sudoc.fr/132133520

Si vous utilisez un navigateur Web, cette URL vous redirigera vers :

http://www.sudoc.abes.fr/xslt/DB=2.1/SRCH?IKT=12&TRM=132133520

qui est l’URL de l’interface classique, destinée aux humains.

Mais, si vous utilisez un outil qui attend du RDF, le serveur vous renverra du RDF/XML, l’équivalent de la page suivante :

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

Enfin, si vous êtes un robot de moteur de recherche, le serveur vous renverra une page HTML spéciale, invisible aux humains, truffée de métadonnées Microdata conforme au vocabulaire schema.org, promu par Google, Yahoo et Bing. Astuce : ce contenu HTML spécial est directement accessible à cette adresse :

http://www.sudoc.fr/132133520.html

Si vous soumettez cette URL à cet outil en ligne proposé par Google, vous pourrez visualiser les métadonnées structurées qui sont cachées entre les balises HTML. Vous constaterez également que ces métadonnées sont moins riches que celles contenues dans la version RDF de cette même notice Sudoc.

Derrière les balises, des principes

L’annonce des trois moteurs de recherche dominants qui sont derrière schema.org suscite une polémique violente mais profonde, comme en témoigne cette synthèse « un mois après« . L’irruption de schema.org fait craindre une reddition du Web de données au diktat des marchands de publicité que sont, de facto, les moteurs de recherche.

En choisissant d’exposer les données Sudoc en RDF, l’ABES affirme son attachement à un Web de données ouvert, standard, pluraliste, décentralisé. En soumettant parallèlement aux moteurs de recherche des pages HTML enrichies de métadonnées schema.org, l’ABES prend au sérieux sa mission de rendre visibles et accessibles les fonds documentaires des bibliothèques universitaires. Or, en-deçà des moteurs, point de salut.

Nous ne voyons là ni conflit de valeurs, ni contradiction technique. Essayons. Corrigeons ensuite s’il le faut.

A suivre

Ce billet d’annonce est déjà trop long. D’autres posts suivront, dans les prochaines semaines. Ils reviendront notamment sur les choix de modélisation RDF ou sur les évolutions à venir.

IdRef dans votre application

Depuis octobre 2010, les interfaces professionnelles de STAR et de Calames sont « branchées » sur IdRef. Pour sélectionner un concept Rameau ou pour créer une notice d’autorité pour un nouvel auteur, les catalogueurs de thèse ou de manuscrits cliquent sur un bouton IdRef de leur interface de saisie et basculent dans les formulaires Web d’IdRef pour y lancer une recherche ou saisir des informations qui seront enregistrées dans LA base centrale et unique des autorités Sudoc.

Se brancher sur IdRef, avec quelques lignes de JavaScript

Désormais, ce mode de fonctionnement peut être généralisé à toute autre application Web, pourvu qu’il s’agisse d’une application documentaire relevant du périmètre Enseignement Supérieur et Recherche Français : archive institutionnelle ou archive ouverte, plateforme de ressources pédagogiques, bibliothèque numérique, éditeur universitaire, etc. (Dans ce qui suit, nous qualifions de « cliente » toute application candidate à l’interconnexion avec IdRef.)
Pour ce faire, l’ABES a choisi une solution qui demande le moins d’effort possible aux partenaires souhaitant se « brancher » sur IdRef. Quelques lignes de JavaScript suffisent à assurer cette interconnexion. Dans la documentation fournie, des explications détaillées sont données ainsi que des exemples de code qu’il suffit d’adapter pour chaque application cliente. Il existe également un site de démonstration.

Interroger IdRef par Web Service

Pour les applications clientes qui, au lieu de basculer de leur page vers celle d’IdRef, préfèrent intégrer la recherche dans les référentiels au sein même de leur interface, l’ABES propose un Web service de recherche. Ce Web service permet de lancer toutes sortes de requêtes et de récupérer les résultats bruts en XML ou en JSON. L’intégration de ce service dans l’application cliente est alors personnalisable, et demande plus de travail de développement Web.
Par exemple, la requête suivante interroge l’index Nom de personne (persname_t) pour trouver une notice d’autorité qui contienne le terme « sperber » :

http://www.idref.fr/Sru/Solr?q=persname_t:sperber&sort=score%20desc&version=2.2&start=0&rows=30&indent=on&fl=id,ppn_z,recordtype_z,affcourt_z

Cette requête précise que les résultats seront renvoyés en XML (paramètre wt par défaut, ici absent), triés par pertinence décroissante (paramètre sort), groupés par lots de 30 maximum (paramètre rows) et que les zones affichées seront les champs id, ppn_z, recordtype_z et affcourt_z (paramètre fl).

Il est à noter que ce Web service de recherche est conforme aux spécifications du moteur de recherche Solr, quasi-standard de facto. Sachez que Solr permet de faire des recherches très fines. Et toutes les requêtes que vous pouvez lancer par l’interface Web sont disponibles avec le Web Service. A vous de jouer !

Produire dans IdRef depuis votre application

Il n’existe pas de Web Service pour créer de nouvelles notices d’autorité dans IdRef. Nous avons préféré offrir un formulaire Web qui permette de créer facilement des notices valides, conformes au format UNIMARC et aux consignes de catalogage du réseau Sudoc.

Comme le formulaire de recherche d’IdRef (voir plus haut), grâce à une fonction JavaScript, ce formulaire de saisie peut interagir avec une autre application Web. Ainsi, si votre application documentaire connaît déjà le nom, la date de naissance, la nationalité…. d’une personne, elle peut automatiquement transmettre ces informations au formulaire d’IdRef, évitant ainsi une nouvelle saisie.

La création et la modification de notices dans IdRef exige une authentification, contrairement à la simple recherche. Si votre institution souhaite contribuer à IdRef, contactez-nous (Assistance d’IdRef > Domaine Web Services).

Circuit de l'interaction entre IdRef et une application cliente

Circuit de l'interaction entre IdRef et une application cliente

D’autres nouveautés autour d’IdRef

Aujourd’hui-même, l’ABES annonce deux autres nouveautés autour des données d’IdRef :

  • le Micro Web Service Biblio qui permet de lister tous les documents signalés dans le Sudoc qui sont liés à une personne physique donnée, identifiée par son identifiant de notice d’autorité IdRef (PPN Sudoc)
  • Les pages HTML et RDF des autorités Personne Physique d’idRef, qui sont désormais considérablement enrichies par la liste des documents signalés dans le Sudoc et liés à cette personne. En savoir plus

Ces deux nouveautés partent du principe suivant : ce qu’il y a de plus précieux dans les autorités, c’est moins les informations factuelles comprises dans la notice d’autorité (noms, dates, etc) que leur identifiant, pivot auquel s’accroche une collection de documents. Ce sont les liens qui comptent !

Documentation technique : http://documentation.abes.fr/aideidref/developpeur/index.html

Contact : passez par l’interface d’assistance d’IdRef > Domaine Web Services