Entrepôt OAI-PMH de Gallica et des expositions virtuelles (OAI-NUM)
Présentation
OAI-PMH (Open Archives Initiative - Protocol for Metadata Harvesting), est un « protocole de collecte de métadonnées de l'Initiative pour les Archives ouvertes ».
Le protocole OAI-PMH est un moyen d'échanger sur Internet des métadonnées entre institutions, afin de multiplier les accès aux données des catalogues et bibliothèques numériques.
Son utilisation est libre, tout comme ses spécifications, disponibles sur le site http://www.openarchives.org. Le fonctionnement de base du protocole OAI-PMH repose sur une communication de client à serveur. Le client envoie des requêtes HTTP au serveur, le serveur répond par un flux de données au format XML.
Les entrepôts de la BnF
La BnF gère deux types d'entrepôts où sont stockés l'ensemble des métadonnées relatives à ses documents.
Le premier ensemble de données correspond aux notices des documents numériques dont la consultation est ouverte à tout public. Un sous-ensemble important de ces notices est consultable via Gallica en particulier. Cet entrepôt contient l’ensemble des notices des documents numériques consultables dans Gallica et pour lesquels la BnF possède les fichiers numériques. La granularité de cet entrepôt est le document numérique « unitaire », tel que consulté dans Gallica : un document numérique consultable identifié par un identifiant ark unique, un enregistrement (« record »).
On appellera cet entrepôt OAI-NUM. Son interrogation permet d’obtenir les métadonnées d’un document numérique dont l’identifiant ark a par exemple été trouvé dans Gallica. Il est également possible d’obtenir une liste d’identifiants de documents appartenant à un ensemble prédéfini dans l’entrepôt (appelé « set » dans la terminologie OAI).
- Adresse de l’entrepôt OAI-NUM (requête à compléter) : http://oai.bnf.fr/oai2//OAIHandler?verb=
Le deuxième entrepôt a été créé pour améliorer le signalement des documents conservés dans les collections de la BnF et provenant des catalogues de la BnF, dont BnF Catalogue général. Environ 13 942 000 notices sont exposés dans cet entrepôt appelé OAI-CAT. La granularité de cet entrepôt est la notice bibliographique.
Les deux entrepôts proposés fournissent au minimum des notices au format OAI_DC, Dublin Core non qualifié (15 types d’attribut différents), et au format TEL_AP (The European Library Application Profile). La page Récupération des notices descriptives des documents numérisés décrit succinctement ces formats.
Les notices Dublin Core de l’OAI-CAT et celles de l’OAI-NUM, bien que toutes conformes au Dublin Core, contiennent des informations différentes (plus riches pour ce qui concerne OAI-CAT). Par ailleurs l’ensemble des sets proposés sont différents.
Le contenu des entrepôts, sous forme de liste d'identifiants, est donné par le verbe ListIdentifiers :
Documentation
- Présentation générale
- Présentation BnF de l’OAI [PDF]
- Site comportant la présentation complète du protocole OAI
Le langage d’interrogation
Il existe six requêtes et plusieurs paramètres :
- Identify : pour obtenir des informations sur l’entrepôt interrogé.
- ListIdentifiers : pour obtenir la liste des identifiants de notice de l’entrepôt. Il faut préciser des paramètres complémentaires, comme le format Dublin Core.
- ListMetadataFormats : pour obtenir la liste des formats présents dans l’entrepôt.
- ListSets : pour obtenir la liste des sets (ensembles prédéfinis) de l’entrepôt.
- ListRecords : pour obtenir la liste des enregistrements/notices de l’entrepôt. Il faut préciser le format attendu.
- GetRecord : pour obtenir un enregistrement/notice de l’entrepôt. Il faut préciser le format attendu et l’identifiant du document.
Les requêtes sont précédées de ?verb= et commencent par une majuscule.
Les paramètres sont introduits par « & » et commencent par une minuscule. Il y a des paramètres obligatoires et optionnels pour chaque requête.
Plus de précisions sur le langage d’interrogation
Les sets dans OAI-NUM
Les sets sont de trois types différents :
- type de documents (monographies, images, manuscrits, cartes et plans ... ),
- corpus thématiques (dossiers, Voyage en France, Voyages en Italie, Japon ... ),
- par classes du système de classification Dewey.
Exemple :
gallica:typedoc correspond au type de document dans Gallica. Le set :
<setSpec>gallica:typedoc:monographies</setSpec>
renvoie donc aux monographies disponibles dans Gallica.
Exemples de requêtes
Identify
http://oai.bnf.fr/oai2//OAIHandler?verb=Identify
ListIdentifiers
http://oai.bnf.fr/oai2//OAIHandler?verb=ListIdentifiers&metadataPrefix=oai_dc
Recherche avec clé de reprise (resumption token) : les longues listes sont récupérées par paquets avec Resumption token : http://oai.bnf.fr/oai2/OAIHandler?resumptionToken=1%2168816%2124557098%212767325%21100%212826328%21oai_dc&verb=ListIdentifiers
ListSets
http://oai.bnf.fr/oai2//OAIHandler?verb=ListSets
ListRecords
http://oai.bnf.fr/oai2//OAIHandler?verb=ListRecords&metadataPrefix=oai_dc
Liste des enregistrements créés ou modifiés depuis le 15/10/2016 au format oai_dc :
http://catoai.bnf.fr/oai2//OAIHandler?verb=ListRecords&from=2016-10-15&metadataPrefix=oai_dc
Liste des enregistrements créés ou modifiés depuis le 15/01/2016 appartenant au set thématique : "gallica:theme:9:94" au format oai_dc : http://oai.bnf.fr/oai2//OAIHandler?verb=ListRecords&from=2016-01-15&set=gallica:theme:9:94&metadataPrefix=oai_dc
ListMetadataFormats
http://oai.bnf.fr/oai2//OAIHandler?verb=ListMetadataFormats
GetRecord
Remarques :
- les suppressions de notices dans un set ou dans l'entrepôt sont signalées par les identifiants, mais il n'y a pas de record associé.
- le standard OAI-PMH ne permet pas d'exprimer de requête sur un critère bibliographique (titre, auteur, etc.).
Aide
Dublin Core Format bibliographique
Le Dublin Core simple propose 15 attributs, facultatifs et répétables :
Contenu
- Titre dc:title
- Sujet dc:subject
- Description dc:description
- Source, origine de l'information dc:source
- Langue dc:language
- Relation avec d'autres ressources dc:relation
- Couverture chronologique et géographique dc:coverage
Propriété intellectuelle
- Auteur dc:creator
- Contributeur dc:contributor
- Editeur dc:publisher
- Droits, conditions d'utilisation dc:rights
Instanciation
- Date dc:date
- Type de document (texte, image, son, etc) dc:type
- Format dc:format
- Identifiant dc:identifier
Présentation des 15 éléments sur le site officiel du Dublin Core
Accès
Page de présentation : http://oai.bnf.fr/oai2//OAIHandler?verb=Identify
Formulaire d'aide à la création de requêtes : http://oai.bnf.fr/oai2/test.html