OAI-PMH Le protocole des archives ouvertes - PowerPoint PPT Presentation

About This Presentation
Title:

OAI-PMH Le protocole des archives ouvertes

Description:

2. Historique d'OAI-PMH. Conclusion de la convention de Santa F en ... Lorsque vous tapez l'URL d'une page, votre navigateur passe une demande au serveur en ... – PowerPoint PPT presentation

Number of Views:181
Avg rating:3.0/5.0
Slides: 34
Provided by: danielc78
Category:

less

Transcript and Presenter's Notes

Title: OAI-PMH Le protocole des archives ouvertes


1
OAI-PMHLe protocole des archives ouvertes
  • Open Archives Initiative
  • Protocole for Metadata Harvesting

daniel.charnay_at_ccsd.cnrs.fr
2
Historique dOAI-PMH
  • Conclusion de la convention de Santa Fé en 1999
  • Né de la nécessité de faire interopérer les bases
    darchives entre elles
  • Choix de simplicité HTTP, XML, Dublin Core

3
Protocole ?
  • Définition
  • En informatique, un protocole est lensemble des
    règles qui définit le dialogue entre un client et
    un serveur
  • Le client est lapplication de lutilisateur lui
    permettant daccéder à un service
  • Exemple
  • Le navigateur Web (IE, Firefox, ) est un client
    Web
  • Le système de réservation de la SNCF est un
    service situé sur un serveur Web
  • HTTP est le protocole du Web permettant de faire
    dialoguer un navigateur avec un serveur Web

4
Protocole ? (suite)
  • Les verbes
  • Dans un protocole, un ensemble de verbe est
    utilisé pour le dialogue
  • Les attributs
  • Un verbe peut être complété par un ou plusieurs
    attributs pour formuler une demande
  • Exemple
  • Le verbe quutilise le plus souvent votre
    navigateur Web est GET. Lorsque vous tapez lURL
    dune page, votre navigateur passe une demande au
    serveur en envoyant par exemple la phrase
    GET
    WWW.SNCF.COM
  • Attention !
  • Il ne faut pas confondre PROTOCOLE et LANGAGE
  • HTTP est un protocole
  • HTML est un langage permettant dexprimer le
    contenu dun document dans un navigateur WEB

5
Protocole ? (fin)
  • Un protocole peut en encapsuler un autre
  • Par exemple, le protocole HTTP est véhiculé dans
    un autre protocole TCP/IP
  • Avec le protocole HTTP, on peut composer et
    envoyer des messages dont le contenu sont
    dautres verbes et attributs appartenant à une
    autre protocole
  • OAI-PMH est un protocole utilisant HTTP. On dit
    encore au-dessus de HTTP.

6
Dublin Core et schéma de données (rappel)
  • o(( On entend encore dire que le Dublin Core ne
    sert à rien dans les archives ouvertes Ne
    confondons pas !
  • Le Dublin Core est essentiel sans lui OAI-PMH
    est un protocole
    babelien !
  • Il permet de se mettre daccord sur un minimum de
    terminologie pour désigner les objets
  • creator pour désigner un auteur
  • source pour désigner ladresse du fichier
    texte
  • Etc.
  • Cette désignation commune va permettre
    lagrégation du contenu de bases différentes
  • Un schéma de données (schema XML ou DTD) spécifie
    un ensemble de contraintes
  • Eléments facultatifs ou obligatoires, ou
    structures plus complexes
  • Un auteur doit avoir un laboratoire qui lui, doit
    dépendre dune institution,

7
Ce quon peut faire avec OAI-PMH
  • OAI-PMH permet de demander de linformation à un
    serveur darchive ouverte
  • Essentiellement
  • Connaître la structure de larchive
  • Le format des méta données
  • La nomenclature de classement
  • Récupérer les notices (les méta données)
  • IMPORTANT !
  • Le plus petit objet que lon peut lire, est une
    notice (ou son identificateur)
  • Laccès aux notices ne se fait que de deux façons
  • On lit une seule notice à la fois en fournissant
    sa référence
  • On demande à lire la totalité des notices

8
Conséquences
  • OAI-PMH nest pas un langage dinterrogation de
    bases de données !
  • OAI-PMH est extrêmement limité dans les critères
    de sélection
  • En pratique et dun point de vue documentaire, on
    peut sélectionner
  • Sur un intervalle de temps
  • Sur la classification des documents
  • OAI-PMH ne permet donc pas de choisir nimporte
    quelle sélection de notices
  • Par exemple, on ne peut pas demander les seules
    fiches dun auteur
  • OAI-PMH nest pas orienté utilisateur !
  • Un utilisateur ninterrogera donc jamais
    directement une archive via OAI-PMH
  • Il sadressera à un service spécialisé
  • OAI-PMH est un protocole dextraction
    dinformation
  • Il ne peut donc pas être utilisé pour déposer de
    linformation dans une archive ouverte
  • Lalimentation dune archive ouverte est
    complètement indépendante du protocole OAI-PMH
  • Alors OAI-PMH pourquoi, pour qui ?

9
OAI-PMH ?
  • Lidée de ce protocole est de permettre
  • La centralisation, lagrégation de lensemble de
    linformation
  • De fournir un accès unique pour les recherches
  • Cette centralisation peut être
  • Thématique
  • Institutionnelle
  • Généraliste
  • Ainsi lutilisateur na pas à faire le tour de
    toutes les archives pour rechercher de
    linformation
  • Il se rend chez le fournisseur de service
    approprié

10
Fournisseurs de données et fournisseur de services
  • Centraliser laccès aux diverses archives
    ouvertes
  • Un fournisseur de service (service provider)
    moissonne des entrepôts de données, les
    archives ouvertes (data provider) quil a
    choisies en collectant les notices correspondant
    aux documents qui y sont déposés (harvesting)
  • Un fournisseur de service offre donc un seul
    point dentrée pour rechercher de linformation
    dans un grand nombre darchives ouvertes
  • oaister.umdl.umich.edu est un fournisseur de
    service
  • hal.ccsd.cnrs.fr est une archive ouverte (ou un
    entrepôt de données)
  • Créer des services à valeur ajoutée
  • Le fournisseur de service peut retravailler
    linformation quil a récoltée
  • Se spécialiser dans une thématique
  • Sélectionner des notices
  • Par exemple, nexposer que les notices qui ont un
    fichier de texte intégral
  • Créer un index des auteurs
  • Créer des index thématiques
  • Etc.

11
Fournisseurs de données Data providers
12
Synchronisation des données
  • Rappel OAI-PMH est un protocole pour LIRE des
    données
  • Il ny a pas dinstruction (de verbe) dans le
    protocole pour insérer des documents ou des
    notices dans une archive ouverte
  • En conséquence, linitiative de mise à jour ne
    peut venir que du fournisseur de services
  • Le moissonneur vient quand il veut pour faire
    la mise à jour
  • Tous les jours ou tous les mois !
  • Conséquence, lutilisateur na pas de garantie
    quant à la fraîcheur de linformation collectée

13
OAI-PMH versus Z39-50
  • L idée est la même pour les deux protocoles
  • Interroger différents systèmes dinformation
    répartis sur le réseau en une seule requête
    (bases de données réparties)
  • Avec Z39-50 les données sont à jour
  • Cest le client Z39-50, installé sur le poste de
    lutilisateur qui se connecte aux différents
    serveurs et qui agrège en temps réel les
    résultats
  • Le résultats de la requête reflète donc limage
    exacte des différentes bases, au moment même ou
    cette requête est effectuée
  • Avec OAI-PMH il faut vérifier la date de
    fraîcheur ?
  • Lutilisateur va rechercher des résultats
    préalablement agrégés par le fournisseur de
    service. Il ne maîtrise pas le moment ou a été
    faite cette agrégation

14
Structuration dune archive ouverte (rappel)
  • La structuration des données dans une archive est
    indépendante du protocole OAI-PMH
  • Elle résulte des choix faits par les concepteurs
  • Elle est mise en œuvre au travers
  • Dun modèle de données pouvant être exprimé par
    un schéma de base de données, un schéma XML, une
    DTD
  • Dune base de données, souvent relationnelle,
    quelquefois nativement XML
  • Une structuration suffisamment élaborée peut
    permettre
  • Une représentation thématique du contenu de
    larchive
  • Un représentation institutionnelle,
    éventuellement à plusieurs niveaux
  • Une représentation par collection au sens large
    du terme
  • Collection institutionnelles
  • Livres, épi journaux, acte de congrès, etc.

15
OAI-PMH et la structuration
  • OAI-PMH supporte la hiérarchisation de
    linformation ()
  • Mais les harvesters ne lexploitent pas forcément
    !
  • OAI-PMH reconnaît le concept de collection (
    ltsetDescriptiongt )
  • Si larchive implémente la notion de collection,
    des sélections plus fines deviennent possibles
  • Au-delà de la sélection thématique, on peut
    sélectionner une collection
  • OAI-PMH permet au client de retrouver la
    structure de larchive (verbe ListSets)

16
Le format des données renvoyées par OAI-PMH
  • Les réponses sont Encapsulées en XML
  • Par exemple, pour une notice, ce sont au minimum
    les valeurs du Dublin Core non qualifié qui sont
    retournées
  • Ci-dessous, on voit la réponse au verbe
    ListRecords (ou GetRecords)

ltdctitlegtIntersection Graphs of Jordan
Arcslt/dctitlegt ltdccreatorgtDe Fraysseix,
Hubertlt/dccreatorgt ltdccreatorgtOssona De Mendez,
Patricelt/dccreatorgt ltdcsubjectgtMathematics/Combi
natoricslt/dcsubjectgt ltdcdescriptiongtA family of
Jordan arcs, such that two arcs are nowhere
tangent.lt/dcdescriptiongt ltdcpublishergtHAL -
CCSd - CNRSlt/dcpublishergt ltdccontributorgtPatrice
Ossona De Mendez ltpom_at_ehess.frgtlt/dccontributorgt
ltdcdategt1999lt/dcdategt ltdctypegtARTJOURNALlt/dcty
pegt ltdcformat/gt ltdcidentifiergtccsd-00005625
(version 1)lt/dcidentifiergt ltdcsourcegthttp//hal/
docs/00/03/17/31/PDF/Taxi_ArcStirin.pdflt/dcsource
gt ltdclanguagegtENlt/dclanguagegt ltdcrelation/gt ltdc
coveragegtgraph drawing intersection
representationlt/dccoveragegt ltdcrights/gt
Titre Auteur 1 Auteur 2 Domaine Résumé Editeur Con
tributeur Date Type de publi. Format Identificateu
r Source Language Relation Mots clés droits
17
Souvenez-vous
  • OAI-PMH offre peu de critères pour sélectionner,
    ou trier les notices dune archive ouverte
  • Il permet la sélection selon la nomenclature de
    stockage
  • La plupart du temps la thématique
  • Mais dautres classements sont possibles
  • Représentation institutionnelle
  • Collections particulières
  • Etc.
  • Il permet la sélection selon des critères
    temporels
  • Depuis une date
  • Jusquà une autre

18
Sélectionner linformation selon un thème
  • Pour sélectionner de linformation, il est
    nécessaire quau préalable celle-ci ait été
    classifiée
  • Chaque archive choisit sa propre
    classification, et elle la fait connaître, grâce
    au verbe ListSets du protocole OAI-PMH
  • Conformément à un schéma XML de données
  • Via un nom symbolique qui sera utilisé comme
    critère de recherche (par exemple
    ltsetSpecgtENVIRlt/setSpecgt )
  • Via un descriptif associé à ce nom symbolique,
    pour en permettre un affichage compréhensible
    (ltsetNamegtEtudes de l'environnementlt/setNamegt)
  • Il nexiste pas de classification thématique
    universelle
  • Ceci ne facilite pas le travail des
    moissonneurs
  • Un bon fournisseur de service devrait être le
    fruit du moissonnage darchives sétant
    concertées pour avoir une thématique commune ou,
    au moins, un bon niveau dinteropérabilité
    Sans cela, toute présentation thématique par un
    moissonneur devient périlleuse !

19
Exemple de thématique
  • Le verbe ListSets permet de connaître le modèle
    de classement dans larchive
  • Classement thématique par exemple

ltOAI-PMH xsischemaLocation"http//www.openarchiv
es.org/OAI/2.0/ http//www.openarchives.org/OAI/2
.0/OAI-PMH.xsd"gt ltresponseDategt2005-08-23T081012
Zlt/responseDategt ltrequest verb"ListSets"gthttp//h
al/oai/oai.phplt/requestgt ltListSetsgt ltsetgt
ltsetSpecgtCHIMlt/setSpecgt
ltsetNamegtChemical Scienceslt/setNamegt lt/setgt
ltsetgt ltsetSpecgtCHIMCATAlt/setSpecgt
ltsetNamegtCatalysislt/setNamegt lt/setgt
20
Sélectionner linformation selon un thème (suite)
  • On peut traiter une structuration en thèmes et
    sous thèmes
  • Exemple ou mathématiques combinatoires est un
    sous thème de
    mathématiques
  • ltsetgt
  • ltsetSpecgt MATH lt/setSpecgt
  • ltsetNamegt Mathematics lt/setNamegt
  • lt/setgt
  • ltsetgt
  • ltsetSpecgt MATHMATH_CO lt/setSpecgt
  • ltsetNamegt Combinatorics lt/setNamegt
  • lt/setgt
  • Le protocole permet de définir une structure
    hiérarchique
  • Le caractère est défini comme séparateur
    entre les différents niveaux
  • Ceci va permettre ultérieurement de sélectionner
  • Toutes les notices de la rubrique mathématiques
  • Uniquement les notices en mathématiques
    combinatoires

21
Sélectionner linformation selon un thème (fin)
  • Au niveau de la fourniture de la notice, la
    thématique est renseignée par la balise
    subject du Dublin Core
  • ltdcsubjectgtMathematics/Combinatoricslt/dcsubject
    gt
  • Rappelez-vous, la plupart des balises peuvent
    être renouvelées autant de fois que nécessaire
  • Ainsi, il est possible de qualifier des notices
    selon plusieurs thématiques

22
Les six verbes expliqués
  • Identify  donne des informations générales sur
    le serveur
  • ListMetadataFormat  donne le ou les formats dans
    lesquels sont fournies les notices. On trouvera
    ici au moins oai_dc correspondant au minimum du
    Dublin Core. Le ou les formats sont définis par
    un schéma XML dont ladresse est donnée dans la
    réponse
  • ListSets  donne la structure de lAO
    (nomenclature de classement des notices de lAO,
    thématique)
  • ListIdentifiers  donne les identifiants pour un
    MetaDataFormat (il ny a pas de défaut comme
    oai_dc aurait pu lêtre)
  • ListRecords  donne toutes les notices de lAO en
    fonction du MetaDataFormat
  • GetRecords  donne lenregistrement défini par
    lidentifier

23
Verbes et attributs
From (depuis) Until (jusquà) Metadata prefix (format) Identifier (Identificateur) Set (Nomenclature, thématique) Token (Jeton)
Identify
ListMetadataFormat  (f)
ListSets 
ListIdentifiers f f o f e
ListRecords f f o f e
GetRecords o o
exemple 2005-08-20 2005-08-22 oai_dc ccsd-00008082 (version 1) Mathematics/Combinatorics lr4309e58879e83
o obligatoire f facultatif e exclusif si ce
paramètre est fourni, il doit être le seul
24
Le jeton
  • Ce paramètre est surtout utile pour
    limplémenteur
  • Lors dune demande de liste (ListRecords,
    ListIdentifiers), larchive ne renvoit quune
    fraction des éléments (contrôle de flux)
  • Pour obtenir les éléments suivants, il faut
    réitérer la demande en fournissant un jeton
  • Evidemment, on ne peut pas changer les paramètres
    en cours de demande, pour cette raison, le
    paramètre jeton est exclusif
  • Le jeton a une durée de vie limitée
  • Cette durée de vie est indiquée au demandeur
  • Sont indiqués aussi, la taille de la liste et le
    nombre de notices déjà envoyées
  • ltresumptionToken expirationDate"2005-08-23T1501
    16Z" completeListSize"1172" cursor"50"gtlr4309e8b
    cae90dlt/resumptionTokengt

25
Requêtes OAI-PMH
  • Exemple une requête OAI en mode GET
  • Ce que lon pourrait être tenté de faire
  • Dont le résultat sera ?

http//hal.ccsd.cnrs.fr/oai/oai.php?verbListRecor
dsmetadataPrefixoai_dcsetTICE2003
http//hal.ccsd.cnrs.fr/.......
oai_dcsetUNIV-RENNES2setSHSHIST
ltOAI-PMH xsischemaLocation"http//www.openarchiv
es.org/OAI/2.0/ http//www.openarchives.org/OAI/2
.0/OAI-PMH.xsd"gt ltresponseDategt2005-08-24T131408
Zlt/responseDategt ltrequestgthttp//hal.ccsd.cnrs.fr/
oai/oai.phplt/requestgt lterror code"badArgument"gtDo
not use them same argument more than
once.lt/errorgt lt/OAI-PMHgt
26
A ce stade
  • Vous avez compris
  • Ce quest le protocole OAI-PMH
  • Ce que lon peut en attendre
  • Vous connaissez les limites des sélections
  • Vous connaissez les limites dues aux
    classification thématiques
  • Vous savez que les notices fournies contiennent,
    au minimum, les informations du Dublin Core non
    qualifiées, mais quune archive peut fournir un
    ou des formats plus complets
  • Vous devez mieux comprendre ce que les OAIsters
    peuvent et ne pourront pas vous offrir
  • Vous avez vu linformation renvoyée par les
    verbes
  • ListSets, ListRecords, GetRecords
  • À quoi servent les autres verbes ?
  • Identify, ListIdentifiers, ListMetaDataFormats

27
Identify
ltltOAI-PMH xsischemaLocation"http//www.openarchi
ves.org/OAI/2.0/ http//www.openarchives.org/OAI/2
.0/OAI-PMH.xsd"gt ltresponseDategt2005-08-19T13325
6Zlt/responseDategt ltrequest verb"Identify"gthttp/
/hal/oai/oai.phplt/requestgt ltIdentifygt ltrepository
NamegtCCSd/HAL e-articles server (based on
gBUS)lt/repositoryNamegt ltbaseURLgthttp//hal/oai/oai
.phplt/baseURLgt ltprotocolVersiongt2.0lt/protocolVersi
ongt ltadminEmailgthal_at_ccsd.cnrs.frlt/adminEmailgt ltear
liestDatestampgt2002-01-01T000000Zlt/earliestDates
tampgt ltdeletedRecordgtnolt/deletedRecordgt ltgranulari
tygtYYYY-MM-DDThhmmssZlt/granularitygt ltdescription
gt ltoai-identifier xsischemaLocation"http//
www.openarchives.org/OAI/2.0/oai-identifier
http//www.openarchives.org/OAI/2.0/oai-identifier
.xsd"gt ltschemegtoailt/schemegt ltrepositoryIdentifie
rgthal.ccsd.cnrs.frlt/repositoryIdentifiergt ltdelimi
tergtlt/delimitergt ltsampleIdentifiergtoaihal.ccsd.
cnrs.frccsd-00000087_v1lt/sampleIdentifiergt
lt/oai-identifiergt lt/descriptiongt ltdescriptiongt
lteprints xsischemaLocation"http//www.openarch
ives.org/OAI/1.1/eprints http//www.openarchives.o
rg/OAI/1.1/eprints.xsd"gt ltcontentgt lttextgtAuthor
self-archived e-printslt/textgt lt/contentgt ltmetad
ataPolicy/gt ltdataPolicy/gt ltsubmissionPolicy/gt
lt/eprintsgt lt/descriptiongt lt/Identifygt lt/OAI-PM
Hgt
28
ListIdentifiers
ltOAI-PMH xsischemaLocation"http//www.openarchiv
es.org/OAI/2.0/ http//www.openarchives.org/OAI/2
.0/OAI-PMH.xsd"gt ltresponseDategt2005-09-24T143237
Zlt/responseDategt ltrequest verb"ListIdentifiers"
metadataPrefix"oai_hal"gthttp//hal.ccsd.cnrs.fr/o
ai/oai.phplt/requestgt ltListIdentifiersgt ltheadergt
ltidentifiergtoaihal.ccsd.cnrs.frccsd-00009060
_v1lt/identifiergt ltdatestampgt2005-09-24T1153
34Zlt/datestampgt ltsetSpecgtMATHMATH_RTlt/setS
pecgt lt/headergt ltheadergt ltidentifiergtoaihal.ccsd
.cnrs.frhalshs-00004699_v1lt/identifiergt
ltdatestampgt2005-09-22T145824Zlt/datestampgt
ltsetSpecgtSHSGENRElt/setSpecgt
ltsetSpecgtSHSHISTlt/setSpecgt
ltsetSpecgtSHSSCIPOlt/setSpecgt lt/headergt ltheadergt lti
dentifiergtoaihal.ccsd.cnrs.frinria-00000314_v1lt/
identifiergt ltdatestampgt2005-09-23T165326Zlt/dates
tampgt lt/headergt
Pas de SET ?
29
ListMetadatFormat
  • Exemple le serveur HAL supporte 2 formats de
    données

ltOAI-PMH xsischemaLocation"http//www.openarchiv
es.org/OAI/2.0/ ....."gt ltresponseDategt2005-08-24T
135543Zlt/responseDategt ltrequest
verb"ListMetadataFormats"gthttp//hal/oai/oai.phplt
/requestgt ltListMetadataFormatsgt
ltmetadataFormatgt ltmetadataPrefixgtoai_dclt/m
etadataPrefixgt ltschemagthttp//www.openarch
ives.org/OAI/2.0/oai_dc.xsdlt/schemagt
ltmetadataNamespacegthttp//www.openarchives.org/OAI
/2.0/oai_dc/lt/metadataNamespacegt
lt/metadataFormatgt ltmetadataFormatgt
ltmetadataPrefixgtoai_hallt/metadataPrefixgt
ltschemagthttp//hal.ccsd.cnrs.fr/oai/elements/hal.x
sdlt/schemagt ltmetadataNamespacegthttp//hal.
ccsd.cnrs.fr/oai/elements/lt/metadataNamespacegt
lt/metadataFormatgt lt/ListMetadataFormatsgt lt/OAI
-PMHgt
30
XML et les espaces de noms (rappel)
  • NameSpace ou espace de nom
  • Sert à lever lambiguïté entre des balises XML
    ayant le même nom et représentant des objets
    différents (fusion de fichiers XML)
  • Exemple ltadressegt représentant ladresse
    physique dun ordinateur (bureau 215A) et
    ladresse IP de ce même ordinateur (134.158.69.4)
  • Remède on utilise un préfixe devant le nom de
    la balise
  • Exemple ltreseauadressegt
  • Mais comment être sûr que le préfixe est unique
    au monde ?
  • On associe à ce préfixe, quelque chose qui est
    unique au monde une URL (celle-ci na pas
    forcément une existance physique
  • Cette association préfixe/url se fait dans la
    déclaration du nameSpace dans le fichier XML
  • xmlnsreseauhttp"http//
    http//hal.ccsd.cnrs.fr/oai/elements/"

31
Comprendre et tester OAI_PMH
  • hal.ccsd.cnrs.fr/oai
  • Vous offre une interface graphique qui, au
    travers dun formulaire, permet de composer des
    requêtes OAI et de visualiser les résultats dans
    votre navigateur
  • Exercices
  • Trouver combien HAL supporte de formats pour
    exporter ses notices
  • Comparer la même notice dans des formats
    différents
  • Faire lextraction des notices pour une
    thématique donnée
  • Utiliser le jeton pour lire une suite

32
Les sites de référence
  • OAI-PMH
  • http//www.openarchives.org/
  • http//www.openarchives.org/Register/BrowseSites
    (data providers)
  • http//www.openarchives.org/service/listproviders.
    html (services providers)
  • Dublin Core
  • http//dublincore.org/
  • XML, HTTP, Technologies Web
  • http//www.w3.org/

33
http//www.ccsd.cnrs.fr
Questions ?
Daniel.charnay_at_ccsd.cnrs.fr
Write a Comment
User Comments (0)
About PowerShow.com