La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

La récupération de données bibliographiques par flux XML

Présentations similaires


Présentation au sujet: "La récupération de données bibliographiques par flux XML"— Transcription de la présentation:

1 La récupération de données bibliographiques par flux XML
Evolution des catalogues : Métadonnées, Interopérabilité, web sémantique, FRBR et RDA ENS-LYON 17-19 juin 2013 La récupération de données bibliographiques par flux XML *

2 Dispositifs SYNCHRONES

3 Z39.50

4 Le protocole Z39-50 Protocole d’échange pour une utilisation bibliographique qui régit le « dialogue » entre clients et serveurs, décrit et utilisé aux États-unis à partir de 1984. La norme date de 1988, provient du « New York Item » ; Elle est maintenue par la Bibliothèque du Congrès avec la « Z39.50 Maintenance Agency ». Ce protocole permet l’interrogation en temps réel de bases bibliographiques pour un usage de consultation et de récupération de notices, sans que l’usager ne soit obligé de changer d’environnement.

5 Utilisateur / bibliothécaire
Rq 1 Catalogue local (C/S ou émulation telnet) Base de données locale (MARC) SIGB 1 Bibliothèque 1

6 Règles de filtrage Utilisateur / bibliothécaire Rq 1 Rq 1
Catalogue local (C/S ou émulation telnet) Catalogue Z39.50 (port ) Base de données locale (MARC) Base de données locale (MARC) SIGB 1 SIGB 2 Bibliothèque 1 Bibliothèque 2

7 Utilisateur / bibliothécaire
Rq 1 Rs 2 Rq 1 Catalogue local (C/S ou émulation telnet) Catalogue Z39.50 (port ) Rs 2 Base de données locale (MARC) Base de données locale (MARC) SIGB 1 SIGB 2 Bibliothèque 1 Bibliothèque 2

8 Utilisateur / bibliothécaire
Rq 1 Rs 1 Rs 2 Rq 1 Catalogue local (C/S ou émulation telnet) Catalogue Z39.50 (port ) Rs 2 Base de données locale (MARC) Base de données locale (MARC) SIGB 1 SIGB 2 Bibliothèque 1 Bibliothèque 2

9 Utilisateur / bibliothécaire
Rq 1 Rs 1 Rs 2 Rq 1 Catalogue local (C/S ou émulation telnet) Catalogue Z39.50 (port ) Rs 2 Base de données locale (xMARC) Base de données locale (xMARC) ? SIGB 1 SIGB 2 Bibliothèque 1 Bibliothèque 2

10 Z39.50 utilise à l’origine le modèle OSI (Open Systems Interconnection)
qui regroupe 7 couches : 7 Application 6 Présentation 5 Session 4 Transport 3 Réseau 2 Liaison de données 1 Physique TCP/IP (Unix) Port 210 : le client ouvre directement une connexion TCP avec le serveur Z39.50 Croît avec Internet !

11 Ici, la « sémantique commune » est déjà presque acquise :
Avec Z39-50, on a deux systèmes qui dialoguent facilement car ils manipulent des valeurs communes… Système A Système B TITRE T TITRE T Unimarc.200a Unimarc.200a Index: ’TitreM’ Index: ’MTitre’ Interpréteur : TitreM.A=Mtitre.B La liaison fonctionne avec un simple interprète. Le protocole d’échange est solide comme il repose sur des données normalisées (qui sont la garantie de l’interopérabilité).

12 Un protocole de liaison : Search/Retrieve Protocol
Utilisateur / bibliothécaire Rq 1 Rs 1 Rs 2 Rq 1 Catalogue local (C/S ou émulation telnet) Catalogue Z39.50 (port ) Rs 2 Base de données locale (MARC) Base de données locale (MARC) SIGB 1 SIGB 2 Bibliothèque 1 Bibliothèque 2

13 Utilisateur / bibliothécaire
Rq 1 Rs 1 Rs 2 Rq 1 Catalogue local (C/S ou émulation telnet) BASE D’INFORMATION Rs 2 Mais se focalise sur le dialogue entre les plates-formes. Il pourrait très bien s’adapter à la recherche d’information en général, mais il est totalement ignoré en dehors des sphères des bibliothèques. Autre particularité : il gère des opérateurs booléens Base de données locale (xMARC) Le protocole Z39.50 ne s’occupe pas du fonctionnement interne de la plate-forme distante… SIGB 1 Bibliothèque 1 13 13

14 ANS1 : Abstract Notation Syntax 1 (ISO 8824)
L’utilisateur n’a pas à se soucier des différences entre les systèmes : sa requête sera traduite avec précision grâce à la définition booléenne « embarquée » par le protocole. La norme fait état de : ANS1 : Abstract Notation Syntax 1 (ISO 8824) Un langage de description de données indépendant des matériels et logiciels permettant de décoder des messages entre clients et serveurs BER : Basic Encoding Rules (ISO 8825) Des règles de conversion de syntaxes abstraites en une syntaxe spécifique de transfert de données De même le professionnel de l’information s’y retrouve aussi car la complexité du modèle repose sur le paramétrage de notions spécifiquement bibliothéconomiques… 14 14

15 Systèmes de requêtes HTTP
RFC MIME-SMTP HTTP 1.0 Les requests for comments (RFC), littéralement « demande de commentaires », sont une série numérotée de documents officiels décrivant les aspects techniques d'Internet. Peu de RFC sont des standards, mais tous les standards d'Internet sont des RFC. RFC 1945 : Hyper text Transfer Protocol – HTTP/1.0 (Specifications) RFC 1738 : Adresses universelles (URL, Uniform Resource Locators) La RFC qui a longtemps servi de base à la définition des URL et des URI. Elle définissait le format des URL pour différents protocoles, comme Gopher, Mailto, etc. Le format des URL pour les requêtes de ces différents protocoles, sont maintenant traités à part des dans documents propres à chacun. Obsolète, remplacée par la RFC 3986 : Identifiant de Ressource Uniforme (URI) : Syntaxe générique RFC 1808 : pour les URL relatives (Memo) ./ correspond au dossier actuel ; ../ correspond au dossier parent ; / correspond au dossier racine

16 RFC 1945 : Hyper text Transfer Protocol – HTTP/1.0 (Specifications)
Terminologie Connexion Un circuit virtuel s'appuyant sur une couche de transport pour la communication d'information entre deux applications. Message L'unité de base d'une communication HTTP, consistant en une séquence structurée d'octets transmis via la connexion. Requête Un message de requête HTTP Réponse Un message de réponse HTTP Ressource Un service ou objet du réseau pouvant être identifié par une URI Entité Une représentation particulière de données, ou la réponse d'une ressource de type service, incluse dans une requête ou une réponse. Une entité représente une métainformation sous la forme d'un en-tête et d'un contenu (corps, ou « body » ). Client Un programme applicatif dont la fonction principale est d'émettre des requêtes. Utilisateur Le client qui a émis la requête. Celui-ci peut être un navigateur, un éditeur, un "spider" (robot d'exploration), ou autre utilitaire.

17 Utilisateur final L'utilisateur humain pilotant le programme utilisateur. Serveur Un programme applicatif acceptant des connexions dans le but de traiter des requêtes des délivrer des réponses Serveur d’origine Le serveur dans lequel se situe physiquement une ressource. Proxy Un programme intermédiaire qui cumule les fonctions de serveur et de client. Les requêtes sont soit traitées en interne ou répercutées, éventuellement converties, sur d'autres serveurs. Un proxy doit interpréter, puis reconstituer un message avant de le réemettre. Les proxies sont souvent utilisés comme portes d'accès côté utilisateur à des réseaux protégés par un "firewall" ou comme intermédiaire pour convertir des protocoles non supportés du côté utilisateur. Gateway ou routeur Un serveur jouant le rôle d'intermédiaire pour d'autres serveurs. Contrairement à un Proxy, un routeur reçoit les requêtes comme s'il était le serveur d’origine pour la ressource ; le client n’est pas nécessairement conscient de "communiquer" avec un routeur. Les routeurs sont souvent utilisés comme porte d'accès, côté serveur ,d'un réseau protégé par "firewall" et comme convertisseur de protocole pour accéder à des ressources hébergées sur des systèmes non-HTTP. Tunnel Programme applicatif servant de relais "transparent" entre deux connexions. Une fois actif, cet élément n'est plus considéré comme faisant partie de la connexion HTTP, bien qu'il soit issu d'une requête HTTP. Le tunnel cesse d'exister lorsque les deux sens de la connexion ont été fermés. Les tunnels sont utilisés lorsqu'une "porte" est nécessaire et que l'intermédiaire ne peut, ou ne doit pouvoir interpréter la communication.

18 HTTP et MIME (Multipurpose Internet Mail Extensions)
Cache Espace de stockage local destiné à enregistrer les réponses ; sous-système contrôlant ces enregistrements, leur relecture et leur effacement. Un cache enregistre des réponses dans le but de diminuer le temps d'accès et la charge si d’éventuelles requêtes identiques se présentent ultérieurement. HTTP et MIME (Multipurpose Internet Mail Extensions) standard internet qui étend le format de données des courriels pour supporter des textes en différents codage de caractères autres que l'ASCII, des contenus non textuels, des contenus multiples, et des informations d'en-tête en d'autres codages que l'ASCII. Les courriels étant généralement envoyés via le protocole SMTP au format MIME, ces courriels sont souvent appelés courriels SMTP/MIME. Les types de contenus définis par le standard MIME peuvent être utilisés à d'autres fins que l'envoi de courriels, dans les protocoles de communication comme le HTTP pour le World Wide Web. MIME a inspiré WWW pour standardiser le flux d’information émises via HTTP, et rend interopérables les différents encodages. charset            = "US-ASCII" | "ISO " | "ISO "                     | "ISO " | "ISO " | "ISO "                     | "ISO " | "ISO " | "ISO "                     | "ISO " | "ISO-2022-JP" | "ISO-2022-JP-2"                     | "ISO-2022-KR" | "UNICODE-1-1" | "UNICODE-1-1-UTF-7"                     | "UNICODE-1-1-UTF-8" | autre_nom

19 Utilisation de BNF étendue
BNF est une description normalisée des expressions rationnelles. Il provient du langage formel (met en œuvre une notation qui crée du sens) Ex. a* = répétion [éventuellement nulle] de a jusqu’à +∞ a+= au moins 1a Instructions de bas niveau CR LF = marqueur de fin de ligne (Carriage Returne Line Feed) LWS = en-tête TEXT = utilisée pour décrire des informations descriptives. ISO implicite HEX = "A" | "B" | "C" | "D" | "E" | "F" | "a" | "b" | "c" | "d" | "e" | "f" | DIGIT

20 url = httpurl | ftpurl | newsurl | nntpurl | telneturl | gopherurl | waisurl | mailtourl | fileurl | prosperourl | otherurl = 1*[ lowalpha | digit | "+" | "-" | "." ] schemepart = *xchar | ip-schemepart ; schemeparts d’URL pour protocoles fondés sur ip: ip-schemepart = "//" login [ "/" urlpath ] login = [ user [ ":" password ] ] hostport hostport = host [ ":" port ] host = hostname | hostnumber hostname = *[ domainlabel "." ] toplabel domainlabel = alphadigit | alphadigit *[ alphadigit | "-" ] alphadigit toplabe = alpha | alpha *[ alphadigit | "-" ] alphadigit alphadigit = alpha | digit hostnumber = digits "." digits "." digits "." digits port = digits user = *[ uchar | ";" | "?" | "&" | "=" ] password = *[ uchar | ";" | "?" | "&" | "=" ] urlpath = *xchar ; dépend du protocole, voir le paragraphe 3.1 ; Les schémas prédéfinis : ; FTP (voir aussi la RFC 959) ftpurl = "ftp://" login [ "/" fpath [ ";type=" ftptype ]] fpath = fsegment *[ "/" fsegment ] fsegmen = *[ uchar | "?" | ":" | | "&" | "=" ] ftptype = "A" | "I" | "D" | "a" | "i" | "d" ; FILE fileurl = "file://" [ host | "localhost" ] "/" fpath ; HTTP httpurl = " hostport [ "/" hpath [ "?" search ]] hpath = hsegment *[ "/" hsegment ] hsegment = *[ uchar | ";" | ":" | | "&" | "=" ] search = *[ uchar | ";" | ":" | | "&" | "=" ] HTTP

21 ; GOPHER (voir aussi la RFC 1436)
gopherurl = "gopher://" hostport [ / [ gtype [ selector [ "%09" search [ "%09" gopher+_string ] ] ] ] ] gtype = xchar selector = *xchar gopher+_string = *xchar ; MAILTO (voir aussi la RFC 822) mailtourl = "mailto:" encoded822addr encoded822addr = 1*xchar ; mieux défini dans la RFC 822 ; NEWS (voir aussi la RFC 1036) newsurl = "news:" grouppart grouppart = "*" | group | article group = alpha *[ alpha | digit | "-" | "." | "+" | "_" ] article = 1*[ uchar | ";" | "/" | "?" | ":" | "&" | "=" ] host ; NNTP (voir aussi la RFC 977) nntpurl = "nntp://" hostport "/" group [ "/" digits ] ; TELNET telneturl = "telnet://" login [ "/" ] ; WAIS waisurl = waisdatabase | waisindex | waisdoc waisdatabase = "wais://" hostport "/" database waisindex = "wais://" hostport "/" database "?" search waisdoc = "wais://" hostport "/" database "/" wtype "/" wpath database = *uchar wtype = *uchar wpath = *uchar WAIS : Wide Area Information Servers, ou Service, ou System ou Searching, aussi connu sous l'acronyme WAIS, est un système informatique client-serveur permettant à un logiciel client WAIS de se connecter à un serveur répertoriant des bases de données documentaires distribuées sur un réseau informatique et de lancer une recherche dans le texte des documents. Les recherches peuvent s'effectuer par mots clés ou en langage courant. La réponse est donnée sous la forme d'une liste de documents consultables triés par ordre de pertinence. WAIS utilise une extension du protocole de communication ANSI Z39.50.

22 […] ; Définitions diverses lowalpha = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z" hialpha "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z" alpha = lowalpha | hialpha digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" safe = "$" | "-" | "_" | "." | "+" extra = "!" | "*" | "'" | "(" | ")" | "," national = "{" | "}" | "|" | "\" | "^" | "~" | "[" | "]" | "`" punctuation = "<" | ">" | "#" | "%" | <"> reserved = ";" | "/" | "?" | ":" | | "&" | "=" hex = digit | "A" | "B" | "C" | "D" | "E" | "F" | "a" | "b" | "c" | "d" | "e" | "f" escape = "%" hex hex unreserved = alpha | digit | safe | extra ucha = unreserved | escape xchar = unreserved | reserved | escape digits = 1*digit

23 Mémo ? Introduit un paramètre = attribue une valeur à un paramètre & enchaîne deux paramètres @ termine les données d’identification / déplace dans l’arborescence // introduit un protocole : introduit un mot de passe + opérateur booléen ‘’ ‘’ introduit une chaîne # introduit une ancre % HEX HEX introduit un caractère codé

24 ?halsid=0s9v93i6o5altejbh58n9j2845
?halsid=0s9v93i6o5altejbh58n9j2845 &view_this_doc=tel &version=1 &CRIT1=VICTOR%20HUGO&OPER1=and &CRIT1=VICTOR%20HUGO&OPER1=and ?query=EXPERT &INDEX_LIV1=DLIV_MOTSUJ Ouvrages disponibles sur Victor Hugo &CRIT1=VICTOR%20HUGO &OPER1=and

25 Requêtes HTTP GET C'est la méthode la plus courante pour demander une ressource. Une requête GET est sans effet sur la ressource, il doit être possible de répéter la requête sans effet. HEAD Cette méthode ne demande que des informations sur la ressource, sans demander la ressource elle-même. POST Cette méthode doit être utilisée lorsqu'une requête modifie la ressource. OPTIONS Cette méthode permet d'obtenir les options de communication d'une ressource ou du serveur en général. CONNECT Cette méthode permet d'utiliser un proxy comme un tunnel de communication. TRACE Cette méthode demande au serveur de retourner ce qu'il a reçu, dans le but de tester et d'effectuer un diagnostic sur la connexion. PUT Cette méthode permet d'ajouter une ressource sur le serveur. DELETE Cette méthode permet de supprimer une ressource du serveur.

26 SRU

27 Contexte SRU peut être présenté comme une extension de Z39.50, mais qui ne sort pas de la couche web. Z39.50 est lourd à maintenir et à implémenter. Il nécessite une entente stricte entre le client et le serveur. SRU répond à un besoin d’interroger des sources distantes et hétérogènes sans se plier à un environnement technique défini, et offre plus de souplesse en exploitant des données étrangères. S’inscrit dans un cadre universel : XML S’appuie sur un ensemble de formats pivots universels : DC, MODS, MarcXML, … Appelle un protocole de transfert largement répandu : HTTP Utilise un langage de requête simple et intuitif : CQL Son application permet d’envisager une recherche fédérée

28 au client SRU (Search/Retrieve via URL) et SRW (Search/Retrieve Web service) ReST = Representational State Transfer SOAP = Simple Object Access Protocol Encode une requête au sein d’une URL Encode une requête au sein d’une URL Renvoie un fichier XML (entre autres formats) Base au format hétérogène Base de nature hétérogène : Tout objet (msg, archive,…)

29 SRU (et SRW) http://www.loc.gov/standards/sru/
Utilisent tous deux le protocole HTTP pour l’échange de requêtes SRU propose une interface pour l’interaction avec des bases de données distantes, sans qu’il y ait besoin de connaître la logique interne de la base de donnée consultée pour trouver des résultats S’appuie sur un langage de requêtes CQL (Contextual Query Language, anciennement Common Query Language). Les requêtes sont acheminées via le protocole HTTP Les résultats sont transmis en XML SRU gère des paramètres, au nombre de 12 Nom Obligatoire/facultatif Description operation Obligatoire La chaîne : ‘SearchRetrieve’ version La version de la requête. Si le serveur ne peut pas fournir une réponse dans la version spécifiée ou une version inférieure, il doit retourner un diagnostique

30 Nom Obligatoire/facultatif Description request Obligatoire Contient une requête exprimée en CQL, qui demande à être traitée par le serveur. Une requête CQL peut contenir une ou plusieurs clauses reliée par des opérateurs booléens startRecord Facultatif* Spécifie la position du premier enregistrement visé. Doit être > 0. La valeur par défaut 1 est attribuée par le serveur si elle n ’est pas spécifiée dans la requête. maximumRecord Le nombre maximum de notices à être retourné. La valeur doit être 0 ou plus. Une valeur par défaut est attribuée par le serveur si elle n’est pas définie dans la requête. La valeur retournée peut être inférieure à celle qui est tolérée, mais ne doit pas être supérieure. recordPackinq Facultatif Spécifie la façon dont les notices doivent être empaquetées : chaîne de caractère simple(‘string’) ou XML (‘xml’). recordSchema Schéma dans lequel la notice doit être fournie. La valeur est l’URI du schéma ou son affichage abrégé défini par le serveur (*) [voir tableau] recordXPath (V1.1) Une expression Xpath (chemin XML) peut être appliquée aux notices avant qu’elles soient retournées, relativement au schéma spécifié dans le paramètre recordSchema. Sert à préparer la conversion XSL.

31 Exemple de requête Paramètres :
Nom Obligatoire/facultatif Description resultSetTTL Facultatif Nombre de secondes pendant lesquelles la requête du client doit être maintenue. Le serveur peut être programmé pour ignorer ce paramètre et offrir un temps de réponse qui ne correspond pas à celui spécifié. sortKeys (V1.1) Contient une séquence de clés de classement appliquée au résultat. Stylesheet Spécifie une URL pour appliquer une feuille de styles. extraRequestData Emplacement prévu pour des informations supplémentaires … Exemple de requête Paramètres : obligatoires facultatifs version=1.1 operation=searchRetrieve query=balzac maximumRecords=3000 recordSchema=dc &query=balzac&maximumRecords=10&recordSchema={mods | dc | marcxml} Voir en DublinCore, voir en marcxml

32 CQL Langage formel qui permet de présenter des requêtes à des systèmes de recherche comme des catalogues bibliographiques, des collections de musées ou des index web. Langage intuitif, aisé à composer et lisible par les humains (HR) Définition formelle : CQL BNF (Backus-Naur Form)

33 Recherches simples: dinosaur "complete dinosaur" title = "complete dinosaur" title exact "the complete dinosaur" Requêtes utilisant des opérateurs booléens: dinosaur or bird dinosaur and "ice age" dinosaur not reptile dinosaur and bird or dinobird (bird or dinosaur) and (feathers or scales) "feathered dinosaur" and (yixian or jehol) Recherches visant des critères de publication: publicationYear < 1980 lengthOfFemur > 2.4 bioMass >= 100 Recherches de proximité de termes: ribs prox/distance<=5 chevrons ribs prox/unit=sentence chevrons ribs prox/distance>0/unit=paragraph chevrons Recherches à plusieurs dimensions: date within " " dateRange encloses 2003 Recherches basées sur la pertinence: subject any/relevant "fish frog" subject any/rel.lr "fish frog"

34 Réponse pour ?operation=searchRetrieve &version= &query=balzac &maximumRecords= &recordSchema=dc

35 Recherche par titre […]
?version= &operation=searchRetrieve &query=dc.title=eugenia+and+grandet &maximumRecords=20 &recordSchema=dc […]

36 Requête plus large […]

37 Paramètre de contrôle du schéma
Schema (and link/reference) Short Name Identifier Dublin Core Record Schema (.xsd   .html ) dc info:srw/schema/1/dc-v1.1 SRU Diagnostic Schema diag info:srw/schema/1/diagnostic-v1.1 Explain Schema zeerex MODS Schema Version > Version 3.3 mods info:srw/schema/1/mods-v3.x ONIX DTD Version 2.0 onix info:srw/schema/1/onix-v2.0 MARCXML: The MARC 21 XML Schema marcxml info:srw/schema/1/marcxml-v1.1 EAD DTD Version 2002 ead info:srw/schema/1/ead-2002 Zthes DTD, version 0.5 Zthes UNIMARC XML Schema unimarcxml info:srw/schema/8/unimarcxml-v0.1 The Bibliographic Class DTD dlxs-bib info:/srw/schema/10/dlxs-bib-v1.0 Dublin Core Extended (DCX) dcx info:/srw/schema/1/dcx-v1.0 PICA XML Version 1.0   pica-xml-v1-0.xsd) pica-XML info:srw/schema/5/picaXML-v1.0 MADS Schema Version 1.0 reference | schema mads info:srw/schema/1/mads-v1.0 Zthes Schema Version 1.0 reference | schema zthes ISO Schema for holdings reference | schema isohold info:srw/schema/5/iso20775-v1.0 PRISM Aggregator Message Record Schema Version 2.0 pam info:srw/schema/11/pam-v2.0 Document Availability Information API (DAIA/XML) reference | schema PRISM Aggregator Message Record Schema Version 2.1 info:srw/schema/11/pam-v2.1

38 Exemple de notice retournée avec le paramètre &recordSchema=marcxml :
  <?xml version="1.0" ?> <zs:searchRetrieveResponse xmlns:zs="   <zs:version>1.1</zs:version>   <zs:numberOfRecords>415</zs:numberOfRecords> <zs:records> <zs:record>   <zs:recordSchema>info:srw/schema/1/marcxml-v1.1</zs:recordSchema>   <zs:recordPacking>xml</zs:recordPacking> #Début de la notice <zs:recordData> <record xmlns="   <leader>01100nam a a 4500</leader>   <controlfield tag="001"> </controlfield>   <controlfield tag="005"> </controlfield>   <controlfield tag="008">940127s1993 quca b fre</controlfield> <datafield tag="035" ind1="" ind2="">   <subfield code="9">(DLC) </subfield> […] <datafield tag="245" ind1="0" ind2="4">   <subfield code="a">Les Accros du langage /</subfield>   <subfield code="c">sous la direction de Michèle Nevert.</subfield> Il existe aussi une « classe » unimarcxml… mais elle n’est pas implémentée

39 SRU Termes de recherche : Ok Bibliothèque du Congrès JSTOR

40 x SRU balzac literature | Termes de recherche : Ok
Bibliothèque du Congrès JSTOR

41 x SRU balzac literature |
Termes de recherche : balzac literature | Ok x Bibliothèque du Congrès JSTOR Construction d’une requête type SRU à partir des termes saisis : ?version=1.1 &operation=searchRetrieve &query=balzac+and+literature &maximumRecords=2000 &recordSchema=marcxml = URL de base = version de la requête = opération demandée = paramètres de la requête = nb. max. de rép. souhaitées = format de réponse souhaité NB : ici, le format souhaité est le paramètre « marcxml ». Schéma dans lequel la notice doit être fournie. La valeur est l’URI du schéma ou son affichage abrégé défini par le serveur.

42 Quelques plates-formes SRU disponibles…
En France ABES Ailleurs en Europe Finlande : NELLI Dutch union Catalog Espagne : Biblioteca Virtual del Patrimonio Bibliográfico Suisse : Au niveau européen projet TEL, la Bibliothèque européenne Aux Etats-Unis J-STOR ( [exemple] ARTstor Worldcat Beta Library of Congress

43 Web Services

44 WebServices Un serveur propose des fonctions qui peuvent être invoquées à distance via le web. Méthode héritée de RPC (Remote Procedure Call), famille UNIX. S’appuient sur HTTP et ne nécessitent pas d’ouverture de ports particuliers sur les firewalls. Protocoles utilisés : SOAP, XML-RPC Offrent la possibilité de manifester des fonctions agrégées dans une page web, et d’embarquer un contexte (par exemple un ticket d’authentification). Les bibliothèques pourraient par exemple proposer une consultation de leur catalogue à travers un environnement particulier ou un ENT, via WebService.

45 Développements d’API Expression de requêtes http
- Création d’un ticket, d’une session, contrôlée par un certificat - Embarquement de termes de recherches dans une « URL » Exemple s : - compte lecteur intégré à un ENT - mise à dispositions d’ouvrages pour un examen, un partiel - fenêtre courte d’interrogation du catalogue - bibliographies sous formes de Fils RSS - accès aux brèves du site/blog institutionnel Déporter le catalogue dans d’autres environnements…

46 Pratiques des usagers : émergence de nouveaux besoins
Exemple avec iGoogle

47 …avec netvibes Collections numériques Catalogue collectif

48 Les « grammaires » de l’interopérabilité (synthèse)
Jeu de métadonnées Cadre générique d’implémentation protocoles Langage(s) de requêtes Divers J2EE – PHP – Html… API SQL – SQL + - MySQL MARC < Z … ISO 2709 Z39.50 Internes aux applications LOM – DC – TEF – MarcXml… XML OAI-PMH HTTP - index RDF SPARQL for RDF SPARQL Query for RDF DC – MarcXml … SRU/SRW SOAP/REST CQL DC – XML - URL WebServices Divers langages possibles

49 Dispositifs ASYNCHRONES

50 La récupération de données

51 Une notice enregistrée au format ISO 2709 présente le schéma suivant :
L’échange de données en iso2709 Une notice enregistrée au format ISO 2709 présente le schéma suivant : Voir aussi :

52 Exemple de notice : de l’isbd à iso2709
XML par la pratique [Texte imprimé] : bases indispensables, concepts et cas pratiques / [Sébastien Lecomte]. - Nantes : Éd. ENI, cop vol. (353 p.) : ill., couv. ill. ; 21 cm. - (Ressources informatiques, ISSN ). Index ISBN (br.) : 27,14 EUR. - EAN Label 01510nam i ­a ­bBr.­d EUR- ­a d2008 m |0fre|01 ||||ba-0 ­afre- ­aFR- ­aa 0||y|-1 ­aXML par la pratique­ebases indispensables, concepts et cas pratiques­fSÂebastien Lecomte- ­a2e Âed.- ­aNantes­cENI­ d2008- ­a ­a353 p.­cillustrations en noir et blanc­d22 x 18 cm-2 ­aRessources informatiques­x ­aPrÂesentation des concepts fondamentaux de XML au travers de cas pratiques Áa implÂementer. Aborde notamment la syntaxe du langage XML, montre comment concevoir des documents et des grammaires XML simples, comment lier des documents XML entre eux, et comment mettre en forme des documents XML.- ­aTous niveaux- ­b ­ ­tRessources informatiques­x ­aXML (langage de balisage)-0 ­aInternet­alangage de programmation­astructure de donnÂees ­adocument multimÂedia- ­a005.3­v99- ­a004­v99a- 1­ ­aLecomte­bSÂebastien­ ­aFR­bElectre­c ­gAFNOR- ­ ­aExtendible markup language­ ­aExtensible markup language- ­aTous niveaux- ­aTechniques Informatique- ­ aLivres pratiques Autoformation- ­c27.14- Répertoire Zones Séparateur de notices (invisible)

53 le LABEL (taille fixe : 24 octets)
nombre d’octets! Si on décompose le label de la notice de la façon indiquée, on a 8 "groupes" d'information. 01510nam1· i·450· Ce qui nous donne : 1 2 3 4 5 6 7 8 01510 nam am1- 00361 2i· 450·

54 le répertoire (taille variable)
Le répertoire comprend les éléments suivants : a/ une étiquette (=3 octets) b/ une longueur de zone qui correspond à la position 20 du label (=4 octets) c/ la position du premier caractère qui correspond à la position 21 du label (=5 octets) d/ longueur de la partie relative à l'application qui correspond à la position 22 du label (=0 octet) b+c+d= « 450 » du label UNIMARC Si on lit le répertoire de notre notice en suivant la fréquence de 3/4/5/0 octets :

55 … on obtient :

56 XML par la pratique [Texte imprimé] : bases indispensables, concepts et cas pratiques / [Sébastien Lecomte]. - Nantes : Éd. ENI, cop vol. (353 p.) : ill., couv. ill. ; 21 cm. - (Ressources informatiques, ISSN ). Index ISBN (br.) : 27,14 EUR. - EAN

57 01510nam i ­a ­bBr.­d EUR- ­a d2008 m |0fre|01 ||||ba-0 ­afre- ­aFR- ­aa 0||y|-1 ­aXML par la pratique­ebases indispensables, concepts et cas pratiques­fSÂebastien Lecomte- ­a2e Âed.- ­aNantes­cENI­ d2008- ­a ­a353 p.­cillustrations en noir et blanc­d22 x 18 cm-2 ­aRessources informatiques­x ­aPrÂesentation des concepts fondamentaux de XML au travers de cas pratiques Áa implÂementer. Aborde notamment la syntaxe du langage XML, montre comment concevoir des documents et des grammaires XML simples, comment lier des documents XML entre eux, et comment mettre en forme des documents XML.- ­aTous niveaux- ­b ­ ­tRessources informatiques­x ­aXML (langage de balisage)-0 ­aInternet­alangage de programmation­astructure de donnÂees ­adocument multimÂedia- ­a005.3­v99- ­a004­v99a- 1­ ­aLecomte­bSÂebastien­ ­aFR­bElectre­c ­gAFNOR- ­ ­aExtendible markup language­ ­aExtensible markup language- ­aTous niveaux- ­aTechniques Informatique- ­ aLivres pratiques Autoformation- ­c27.14-

58 La zone comporte (00)93 octets
01510nam i ­a ­bBr.­d EUR- ­a d2008 m |0fre|01 ||||ba-0 ­afre- ­aFR- ­aa 0||y|-1 ­aXML par la pratique­ebases indispensables, concepts et cas pratiques­fSÂebastien Lecomte- ­a2e Âed.- ­aNantes­cENI­ d2008- ­a ­a353 p.­cillustrations en noir et blanc­d22 x 18 cm-2 ­aRessources informatiques­x ­aPrÂesentation des concepts fondamentaux de XML au travers de cas pratiques Áa implÂementer. Aborde notamment la syntaxe du langage XML, montre comment concevoir des documents et des grammaires XML simples, comment lier des documents XML entre eux, et comment mettre en forme des documents XML.- ­aTous niveaux- ­b ­ ­tRessources informatiques­x ­aXML (langage de balisage)-0 ­aInternet­alangage de programmation­astructure de donnÂees ­adocument multimÂedia- ­a005.3­v99- ­a004­v99a- 1­ ­aLecomte­bSÂebastien­ ­aFR­bElectre­c ­gAFNOR- ­ ­aExtendible markup language­ ­aExtensible markup language- ­aTous niveaux- ­aTechniques Informatique- ­ aLivres pratiques Autoformation- ­c27.14- Etiquette 200 |-1 ­aXML par la pratique­ebases indispensables, concepts et cas pratiques­fSÂebastien Lecomte- La zone comporte (00)93 octets Elle commence à la position (00)140

59 DublinCore la balise <head> doit posséder l'attribut profile avec la valeur Déclaration des propriétés de DublinCore : <link rel="schema.DC" href=" /> DC Gère 15 attributs >

60 Propriété Description title Titre du document : il s'agit a priori du titre principal du document. creator Créateur du document : nom de la personne, de l'organisation ou du service à l'origine de la rédaction du document. subject Sujet et mots-clefs : mots-clés, phrases de résumé, ou codes de classement. Il est préférable d'utiliser des mots-clés choisis dans le cadre d'une politique de classement. Par exemple, on peut utiliser les codages de la bibliothèque du congrès (LCSH et LCC), le vocabulaire médical (MESH), ou les notations décimales des bibliothécaires (DDC et UDC). description Description du document : résumé, table des matières, ou texte libre. publisher Publicateur du document : nom de la personne, de l'organisation ou du service à l'origine de la publication du document.

61 contributor Contributeur au document : nom d'une personne, d'une organisation ou d'un service qui contribue ou a contribué à l'élaboration du document. date Date d'un événement dans le cycle de vie du document : il peut s'agir par exemple de la date de création ou de la date de mise à disposition. Il est recommandé de spécifier la date au format W3CDTF (AAAA-MM-JJ). type Nature ou genre du contenu : grandes catégories de document. Il est recommandé d'utiliser des termes clairement définis au sein de son organisation. Par exemple, le Dublin Core définit quelques types dans le vocabulaire DCMITypes. format Format du document : format physique ou électronique du document. Par exemple, type de média ou dimensions (taille, durée). On peut spécifier le matériel et le logiciel nécessaires pour accéder au document. Il est recommandé d'utiliser des termes clairement définis, par exemple les types MIME. identifier Identificateur non ambigu : il est recommandé d'utiliser un système de référencement précis, par exemple les URI ou les numéros ISBN.

62 source Ressource dont dérive le document : le document peut découler en totalité ou en partie de la ressource en question. Il est recommandé d'utiliser une dénomination formelle des ressources, par exemple leur URI. language Langue du document : il est recommandé d'utiliser un code de langue conforme au format RFC4646. relation Lien vers une ressource liée : il est recommandé d'utiliser une dénomination formelle des ressources, par exemple leur URI. coverage Portée du document : la portée inclut un domaine géographique, un laps de temps, ou une juridiction (nom d'une entité administrative). Il est recommandé d'utiliser des représentations normalisées de ces types de données, par exemple TGN (Thesaurus of Geographic Names, un dictionnaire de noms de lieux), ISO3166, Point ou Box pour la portée spatiale, Period ou W3CDTF pour la portée temporelle. rights Droits relatifs à la ressource : permet de donner des informations sur le statut des droits du document, par exemple la présence d'un copyright, ou un lien vers le détenteur des droits. L'absence de cette propriété ne présume pas que le document est libre de droits.

63 OAI-PMH

64 Généralités OAI-PMH répond au besoin d’interroger plusieurs bases en exprimant la description des ressources dans un langage uniforme et commun. Les données sont reproduites et stockées dans un entrepôt qui permet de les embrasser toutes à la fois. Cette fourniture est construites en deux temps : une reproduction, puis une agrégation. Les données sont d’abord modelées sur un format commun : XML DC (mais d’autres formats sont possibles) Elles sont ensuite stockées dans une nouvelle base. Le protocole d’échange utilisé est HTTP Il faut ensuite construire un moteur de recherche pour ménager des points d’entrée, des outils de référencement, de classement, etc. (Le moteur de recherche n’est pas fourni par le modèle OAI). De nombreux produits open source sont actuellement disponibles pour mettre en œuvre un modèle OAI

65 OAI-PMH : une logique d’entrepôt
Définition : OAI PMH Open Archive Initiative Protocol for Metadata Harvesting Mvt 1 de l’interopérabiblité : aspect « normatif » : empilement structuré des données Mvt 3 de l’interopérabilité : le protocole d’échange Mvt 2 de l’interopérabiblité : XML DublinCore

66 Origine du schéma : François Nawrocki : Le protocole OAI et ses usages en bibliothèque. (

67 Un peu de vocabulaire… Ressource (‘resource’) : c’est le document qui est décrit par un appareil bibliographique (la réalité à laquelle la description renvoie, une monographie imprimée, un document électronique…) Item : c’est la notice informatique qui contient la description. Cette notice se voit attribuer un identifiant unique supplémentaire, totalement indépendant de celui du système local. Enregistrement (‘record’): ce sont une partie des métadonnées de l’item qui sont choisies et « poussées » dans un fichier XML qui deviennent un enregistrement. OAI-PMH ne travaille pas avec la totalité des données, mais un jeu allégé. Lot ou « collection » (‘set’) : c’est un possibilité d’OAI-PMH pour constituer des ensembles thématiques ou autres (par exemple ; les thèses d’un établissent dans un format donné et pour une période donnée).

68 Métadonnées sur la ressource : le travail du fournisseur d’entrepôt
##‎$a ‎$bBr.‎$d27,14 € 073 #1‎$a par la pratique‎$bTexte imprimé‎$ebases indispensables, concepts et cas pratiques‎$f[Sébastien Lecomte] 210 ##‎$aNantes‎$cÉd. ENI‎$dcop ##‎$a1 vol. (353 p.)‎$cill., couv. ill. en coul.‎$d22 cm 225 informatiques‎$fJoe͏̈lle Musset‎$x ##‎$aIndex 410 ##‎$aRessources informatiques (Nantes), ISSN ##‎$aXML (langage de balisage)‎$2 rameau 606 ##‎$aEchange électronique d'information‎$2rameau 676 ##‎$a006.74‎$v22‎$zeng 700 #1‎$aLecomte, Sébastien ( ; informaticien)‎$4070 item <record> <dc:title> Xml par la pratique : bases indispensables, concepts et cas pratiques</dc:title> <dc:creator>Sébastien Lecomte</dc:creator> <dc:type>Monographie imprimée</dc:type> </record> <identifier>oai:1380</identifier> record

69 Entrepôt à sémantique commune
Principe général Base 1 (spécificités internes) Base 2 (spécificités internes) Base 3 (spécificités internes) Base 4 (spécificités internes) Création d’enregistrements en DC Création d’enregistrements en DC Création d’enregistrements en DC Création d’enregistrements en DC Spécificité commune Entrepôt à sémantique commune ?query=… Pour l’usager : : formulation d’une requête unique !

70 Mise en œuvre

71 « moissonnage » périodique et planifié
Client Institution A Institution B Système local Entrepôt A : dc Base de donnée locale SET 1 Harvester « moissonnage » périodique et planifié SET 2 Base de donnée locale SET 3 Transformation XSL Base de donnée « OAI » « Ingest » Éditeur (=fournisseur)

72 L’interrogation d’un entrepôt OAI : Méthodes et arguments
Verbe Rôle Arguments Exemples Identify Donne des informations sur l’entrepôt de données - ListSets Demande la liste des lots disponibles sur un entrepôt. resumptionToken gallica:afrique ListMetadataFormats Demande la liste des formats de métadonnées disponibles. Sans paramètre introduit, tous les formats disponibles pour au moins un item sont retournés. Avec le paramètre identifier, seul les formats disponibles pour un item donné sont retournés. identifier oai-dc lom marcXml ListRecords Retourne une liste d’enregistrements correspondant aux différents paramètres (dates, lots demandés). from until metadataPrefix set ListIdentifiers Récupère la liste des identifiants disponibles. GetRecord Permet la récupération d’un enregistrment donné, à partir d’un argument

73 Utilisation d’un handler
Exemple avec 1. Identify >> 2. ListSets >> C’est la balise <setSpec> qu’il faut rechercher pour trouver un set 3. ListMetadataFormats >> NB et 3. répondent à la méthode ‘’verb=‘’ demandent plus de précisions 4. ListRecords demande obligatoirement au moins un argument : (obligatoire) &metadataPrefix (et non pas *MetadaPrefix) : Attend un format de données, par exemple ‘oai_dc’ >> Autres arguments attendus : &set= …voir &ListSets &from : date d’enregistrement (type : AAAA-MM-JJ%) &until : date d’enregistrement (type : AAAA-MM-JJ%)

74 &metadataPrefix (et non pas *MetadaPrefix) :
>> 5. ListIdentifiers demande obligatoirement au moins un argument : (obligatoire) &metadataPrefix (et non pas *MetadaPrefix) : Attend un format de données, ici, ‘didl’ ou ‘oai_dc’ >> Autres arguments attendus : &set= …voir &ListSets &from : date d’enregistrement (type : AAAA-MM-JJ%) &until : date d’enregistrement (type : AAAA-MM-JJ%) <header>   <identifier>oai:bnf.fr:gallica/ark:/12148/bpt6k </identifier>   <datestamp> </datestamp>   <setSpec>gallica:6:61</setSpec>   <setSpec>gallica:monographies</setSpec> </header>

75 &metadataPrefix (comme précédemment)
6. GetRecords demande obligatoirement au moins un argument : &GetRecord (obligatoire) &metadataPrefix (comme précédemment) (obligatoire) &identifier NB Il s’agit de l’identifier du nœud header/identifier et non pas de celui de dc:identifier Explication : l’identifier du header est un enregistrement (une clé  ’’primaire’’ ou ‘’unique’’, tandis que le dc:identifier est une information de l’enregistrement, c’est une donnée. >> On aurait pu avoir à traduire la requête GET avec une URL encodée pour l’identifier, pour tout ce qui suit &identifier= car ce n’est pas l’identifier que l’on demande, mais sa « représentation » dans le langage http (cf tableau URL encoding), ce qui aurait donné : &identifier=oai%3abnf%2efr%3agallica%2fark%3a%2f12148%2fbpt6k852111

76 Messages d’erreur possibles
Liste : badArgument badResumptionToken badVerb cannotDisseminateFormat idDoesNotExist idDoesNotMatch noMetadataFormats noSearchHierarch   <?xml version="1.0" encoding="UTF-8" ?> - <OAI-PMH xmlns=" xmlns:xsi=" xsi:schemaLocation="   <responseDate> T15:48:40Z</responseDate>   <request>   <error code="badVerb">Value of the "verb" argument is not a legal OAI-PMH verb, the verb argument is missing, or the verb argument is repeated. Query string : verb=Record&metadataPrefix=oai_dc. Detailed description : incorrect verb = Record.</error>   </OAI-PMH>

77 Le handler du SUDOC est : http://staroai.theses.fr/OAIHandler
Le harvesting Etape 1 : interroger un entrepôt et cibler un SET Etape 2 : ingest initial La réponse (POST) est un ensemble de notices XML, décliné dans plusieurs formats, normalisés le plus souvent : DC, LOM, MarcXML, TEF, … Les données recueillies doivent être insérées dans une base locale On peut utiliser un programme pour le faire, mais dans la plupart des SIGB de nouvelle génération, on a besoin d’une étape intermédiaire de transformation XSL (XSLt) Etape 3 : planification d’un update Un outil pratique : Si l’on veut récupérer des notices de thèses du SUDOC, on peut utiliser une plateforme OAI (du site officiel) qui va nous aider à nous y retrouver : Le handler du SUDOC est : Comparaison de et de : puis « ListSets »

78 Interrogation d’une thèse qui porte l’identifiant ‘2008BOR13627’
voir Il va falloir utiliser une feuille de transformation TEF xsl:for-each xsl:if (test=) xsl:when xsl:choose xsl:otherwise xsl value-of Xsl:template select=‘’*’’

79 Un exemple pas à pas Composons une phrase : demandons les notices DC de la collection « Mathématiques » de arXiv.org : Réponse : un fichier XML de 1000 notices !

80 Transformation XSL <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="math.xsl"?> <WSP> <record> <header> <identifier>oai:arXiv.org: </identifier> <datestamp> </datestamp> <setSpec>math</setSpec> </header> <metadata> <oai_dc:dc xmlns:oai_dc=" xmlns:dc=" xmlns:xsi=" xsi:schemaLocation=" <dc:title>Sparsity-certifying Graph Decompositions</dc:title> <dc:creator>Streinu, Ileana</dc:creator> <dc:creator>Theran, Louis</dc:creator> <dc:subject>Mathematics - Combinatorics</dc:subject> <dc:subject>Computer Science - Computational Geometry</dc:subject> <dc:subject>05C85</dc:subject> <dc:subject>05C70</dc:subject> <dc:subject>68R10</dc:subject> <dc:subject>05B35</dc:subject> <dc:description> We describe a new algorithm, the $(k,\ell)$-pebble game with colors, and use it obtain a characterization of the family of $(k,\ell)$-sparse graphs and algorithmic solutions to a family of problems concerning tree decompositions of graphs. Special instances of sparse graphs appear in rigidity theory and have <?xml version="1.0" encoding="UTF-8" ?> <xsl:stylesheet version="1.0" xmlns=" xmlns:xsl=" xmlns:oai_dc=" xmlns:dc=" xmlns:xsi=" xsi:schemaLocation=" > <xsl:template match="/"> <html> <body> <!-- ligne de presentation pour compter le nombre de notices --> <p><xsl:text>Nombre de notices dans le fichier : </xsl:text><xsl:value-of select="count(//record)"/></p> <!-- isole l'element parent --> <xsl:for-each select="/WSP/record/metadata/oai_dc:dc"> <!-- titre --> <li><xsl:value-of select="dc:title"/> </li> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>

81 VOIR : http://cyberdoc.univ-lemans.fr/PUB/ENSSIB/xml/math.xml
<xsl:template match="/"> <html> <body> <!-- ligne de presentation pour compter le nombre de notices --> <p><xsl:text>Nombre de notices dans le fichier : </xsl:text><xsl:value-of select="count(//record)"/></p> <!-- isole l'element parent --> <xsl:for-each select="/WSP/record/metadata/oai_dc:dc"> <!-- titre --> <li><xsl:value-of select="dc:title"/> / <xsl:value-of select="dc:creator"/></li> Ajout de l’auteur introduit par un « / »

82 Application pkpHarvester (public knowledge project) : manipulations

83 Cas particulier d’ORI-OAI
Voir une feuille de transformation XSL

84 Catalogue de périodiques en ligne (AtoZ)
Schémas de mise en œuvre de l’interopérabilité (3) iso2709 Catalogue d’imprimés OPAC Catalogue d’e-books csv/tabulé Catalogue de périodiques en ligne (AtoZ) IGP P.E.L. oai-pmh ORI-OAI Ressources Pédagogues CERIMES API Articles de BDD en ligne, Catalogues d’autres bibliothèques Ressources externes web service

85 Intégration des données pédagogiques à l’UM

86

87 CLE_PRIMAIRE NOT NULL, NUMBER(10) OAI_IDENTIFIER VARCHAR2(128) champ_de_classement (concatenation), VARCHAR2(240) champ_d’affichage (concatenation), VARCHAR2(240) CREATE_USER VARCHAR2(64) CREATE_DATE VARCHAR2(14) MODIFY_USER MODIFY_DATE TYPDOC <IDENTIFIER /> Binary Large Object Identifiant <TITLE /> Titre <LANGUAGE /> Langue du document <DESCRIPTION /> Résumé <KEYWORD /> Mot clé <DOCUMENT_TYPES /> <DOCUMENT_TYPE /> Type de document <AUTHOR /> Auteur <PUBLISHER /> Editeur <DATE /> Date de publication <FORMATS /> <FORMAT /> Format <URL /> URL d’accès <REQUIREMENTS> Nécessite <DURATION> Durée d’exécution <CONDITIONS> Conditions d’utilisation <LEARNING_RESOURCE_TYPES /> <LEARNING_RESOURCE_TYPE /> Type de ressource pédagogique <INTENDED_END_USER_ROLES /> <INTENDED_END_USER_ROLE /> Public concerné <CONTEXT /> Contexte <DEGREE /> Niveau <ADVICE /> Conseil d’utilisation <ACTIVITIES /> <ACTIVITY /> Activité <SET /> Fait partie de <SET_URL /> Niveau de l’ensemble <SET_DESCRIPTION /> Description de l’ensemble <DEWEY_ID /> Indice Dewey <DEWEY_LBL /> Libellé Dewey <RAMEAUX /> <RAMEAU /> Vedette RAMEAU <CLASSIFICATIONS_LOCALES /> <CLASSIFICATION_LOCALE /> Classification locale

88 oai:record/oai:header/oai:identifier <TITLE />
oai:record/oai:metadata/lom:lom/lom:general/lom:title/lom:string (voir détail ci-dessous) <LANGUAGE /> oai:record/oai:metadata/lom:lom/lom:general/lom:language <DESCRIPTION /> oai:record/oai:metadata/lom:lom/lom:general/lom:description/lom:string <KEYWORD /> oai:record/oai:metadata/lom:lom/lom:general/lom:keyword/lom:string <DOCUMENT_TYPES /> <DOCUMENT_TYPE /> oai:record/oai:metadata/lom:lom/lom:general/lomfr:documentType/lomfr:value <AUTHOR /> oai:record/oai:metadata/lom:lom/lom:lifeCycle/lom:contribute[lom:role/lom:value = 'author'] (voir détail ci-dessous) <PUBLISHER /> = 'publisher'] (voir détail ci-dessous) <DATE /> oai:record/oai:metadata/lom:lom/lom:lifeCycle/lom:contribute/lom:date/lom:dateTime <FORMATS /> <FORMAT /> oai:record/oai:metadata/lom:lom/lom:technical/lom:format <URL /> oai:record/oai:metadata/lom:lom/lom:technical/lom:location <REQUIREMENTS> oai:record/oai:metadata/lom:lom/lom:technical/lom:otherPlatformRequirements/lom:string <DURATION> oai:record/oai:metadata/lom:lom/lom:technical/lom:duration/lom:duration <CONDITIONS> oai:record/oai:metadata/lom:lom/lom:rights/lom:description/lom:string <LEARNING_RESOURCE_TYPES /> <LEARNING_RESOURCE_TYPE /> oai:record/oai:metadata/lom:lom/lom:educational/lom:learningResourceType/. <INTENDED_END_USER_ROLES /> <INTENDED_END_USER_ROLE /> oai:record/oai:metadata/lom:lom/lom:educational/lom:intendedEndUserRole/lom:value <CONTEXT /> oai:record/oai:metadata/lom:lom/lom:educational/lom:context/lom:value XSLIF <DEGREE /> <ADVICE /> oai:record/oai:metadata/lom:lom/lom:educational/lom:description/lom:string <ACTIVITIES /> <ACTIVITY /> oai:record/oai:metadata/lom:lom/lom:educational/lomfr:activity/lomfr:value <SET /> oai:record/oai:metadata/lom:lom/lom:relation/lom:kind/lom:value <SET_URL /> oai:record/oai:metadata/lom:lom/lom:relation/lom:resource/lom:identifier/lom:entry <SET_DESCRIPTION /> oai:record/oai:metadata/lom:lom/lom:relation/lom:resource/lom:description/lom:string <DEWEY_ID /> oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath/lom:source XSLIF <DEWEY_LBL /> oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath/lom:source XSLIF <RAMEAUX /> <ID> <RAMEAU /> oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath/lom:taxon/lom:id oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath/lom:taxon/lom:entry oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath/lom:source/lom:string XSLIF <CLASSIFICATIONS_LOCALES /> <CLASSIFICATION_LOCALE /> oai:record/oai:metadata/lom:lom/lom:classification/lom:taxonPath XSLIF

89 => Table AUTORITES du SID ?
Traitement de l’auteur BEGIN:VCARDVERSION:3.0 N:Geneviève;Franck;;; FN:Franck Genevieve ORG:Laboratoire d'Hématologie Biologique du CHU d'Angers URL: UID:catalogueur END:VCARD => Table AUTORITES du SID ? S ’appuyer sur le repérage d’une chaîne de caractères plutôt que sur un identifiant… Créer une sémantique commune a posteriori…

90 Traitement des descripteurs, des mots-clés et de la catégorisation
<lom:classification> <lom:purpose> <lom:source>LOMv1.0</lom:source> <lom:value>idea</lom:value> </lom:purpose> <lom:taxonPath> <lom:source> <lom:string language="fre">RAMEAU</lom:string> </lom:source> <lom:taxon> <lom:id>FRBNF </lom:id> <lom:entry> <lom:string language="fre">Cinématique</lom:string> </lom:entry> </lom:taxon> Ajout d’indicateurs DEWEY <lom:source>   <lom:string language="fre">Classification 100 Dewey</lom:string>   </lom:source> <lom:taxon>   <lom:id>530</lom:id> => Incohérence dans le niveau de description

91 Traitement du niveau - LearningResourceType : propose un classement selon le type de contenu pédagogique, et peut prendre les valeurs suivantes : <xs:enumeration value="étude de cas" />   <xs:enumeration value="liste de références" />   <xs:enumeration value="jeu de données" /> <xs:enumeration value="autres" / Context : propose des niveaux qui pourront être répartis plus globalement entre L/M/D : <xs:enumeration value="bac+1" /> <xs:enumeration value="bac+2" /> <xs:enumeration value="bac+3" /> <xs:enumeration value="bac+4" /> <xs:enumeration value="bac+5" /> <xs:enumeration value="bac>=6" /> <xs:enumeration value="mastère" />

92 Activity : propose de qualifier le contenu selon un usage possible, ce qui considère le point de vue de l’usager (destinataire duc contenu pédagogique) en priorité : 1 exercice 2 autoévaluation 3 énoncé de problème 4 simulation 5 questionnaire 6 examen 7 évaluation 8 expérience 9 étude de cas 10 cours/présentation 11 animation 12 scénario pédagogique 13 démonstration 14 tutoriel 15 glossaire 16 guide 17 matériel de référence 18 méthodologie 19 liste de référence 20 outil 21 jeu de données. IntendeEndUserRole : qualifie le positionnment du public destinataire : <lom:intendedEndUserRole> <lom:source>LOMv1.0</lom:source> <lom:value>learner</lom:value> <!-- Public prioritairement destinataire de la ressource:Vocabulaire controlé voir liste ci dessous --> <-- teacher/learner/author/manager --> </lom:intendedEndUserRole>

93


Télécharger ppt "La récupération de données bibliographiques par flux XML"

Présentations similaires


Annonces Google