Search/Retrieve via URL

Un article de Wikipédia, l'encyclopédie libre.

Search/Retrieve via URL (SRU) est un protocole standard permettant de générer un web service de recherche dans un catalogue de bibliothèques. Il utilise le langage Contextual Query Language (CQL).

Initialement géré par la Bibliothèque du Congrès[1], le protocole et ses évolutions sont désormais pris en charge par le consortium OASIS[2].

Le protocole SRU est dans la continuité du protocole Z39.50 créé avant Internet afin de permettre l'interrogation distante des catalogues de bibliothèques.

Structure de l'URL de requête[modifier | modifier le code]

Exemple avec l'URL http://lx2.loc.gov:210/lcdb?version=1.1&operation=searchRetrieve&query=%22Victor%20Hugo%22&startRecord=1&maximumRecords=5&recordSchema=dc

  • version : Paramètre obligatoire. Version du protocole SRU utilisé (ici : "1.1")
  • operation : Paramètre obligatoire Valeurs autorisées :
    • "explain" : fournit la liste des paramètres disponibles : critères de recherche (et manière de les interroger), formats disponibles en sortie, etc.
    • "searchRetrieve" : permet de lancer une requête dans le catalogue interrogé
  • query : obligatoire si "operation=searchRetrieve"
  • recordSchema : optionnel (si non renseigné, c'est la valeur par défaut configurée pour le serveur SRU interrogé). Ici recordSchema=dc (pour Dublin Core, en XML)
  • maximumRecords : optionnel (valeur par défaut). Indique le nombre de notices par page de résultats
  • startRecord : optionnel (valeur par défaut : "1"). Indique le numéro du résultat pour la page. Par exemple : si le nombre de résultats par pages (paramètre "maximumRecords") est "10", et que la requête renvoie 16 résultats, on ne verra que les 10 premiers. Il faut donc ajouter &startRecord=11 à la fin de l'URL pour afficher les résultats 11 à 16

Structure de la réponse du serveur[modifier | modifier le code]

Si le paramètre "operation=explain" (affichage de la configuration du SRU)[modifier | modifier le code]

Si le paramètre operation=searchRetrieve (récupération d'une liste de résultats)[modifier | modifier le code]

Exemple de requête, avec affichage du premier résultat (format d'affichage choisi : "dc")

  • Métadonnées de la requête (ligne 3 à 8) :
    • Version du SRU utilisé
    • Rappel de la requête exécutée
    • Nombre total de résultats
  • Puis ensemble des notices encapsulées dans <zs:records/> (ligne 9) Pour chaque notice :
    • Métadonnées globales : format (XML) et vocabulaire utilisé (dc)
    • Puis contenu de la notice récupérée de la base interrogée, à l'intérieur d'une balise <zs:recordData/>(ligne 13)
<?xml version="1.0" encoding="UTF-8"?>
<zs:searchRetrieveResponse xmlns:zs="http://www.loc.gov/zing/srw/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <zs:version>1.1</zs:version>
  <zs:echoedSearchRetrieveRequest>
      <srw:version>1.2</srw:version>
      <zs:query>"Victor Hugo"</zs:query>
  </zs:echoedSearchRetrieveRequest>
  <zs:numberOfRecords>2097</zs:numberOfRecords>
  <zs:records>
    <zs:record>
      <zs:recordSchema>dc</zs:recordSchema>
      <zs:recordPacking>xml</zs:recordPacking>
      <zs:recordData>
        <srw_dc:dc xmlns:srw_dc="info:srw/schema/1/dc-schema">
          <dc:title>En torno a Victor Hugo /</dc:title>
          <dc:creator>Santamarta Luengos, José María.</dc:creator>
          <dc:type>text</dc:type>
          <dc:publisher>[León] : Universidad de León, Servicio de Publicaciones,</dc:publisher>
          <dc:date>[1987?]</dc:date>
          <dc:language>spa</dc:language>
          <dc:description>Includes bibliographical references.</dc:description>
          <dc:subject>Hugo, Victor, 1802-1885--Criticism and interpretation.</dc:subject>
          <dc:identifier>URN:ISBN:8477190658</dc:identifier>
        </srw_dc:dc>
      </zs:recordData>
      <zs:recordPosition>1</zs:recordPosition>
    </zs:record>
  </zs:records>
</zs:searchRetrieveResponse>

Notes et références[modifier | modifier le code]

  1. « SRU: Search/Retrieval via URL -- SRU, CQL and ZeeRex (Standards, Library of Congress) », sur www.loc.gov (consulté le )
  2. (en) « searchRetrieve Version 1.0 OASIS Standard published | OASIS », sur www.oasis-open.org (consulté le )