Étiquette : OAI-PMH (Page 2 sur 2)

Trancodage de dates informatiques

Bonsoir,

Un petit script php très simple pour convertir une date du type AAAA-MM-JJ HH:MM:SS en date normée suivant RFC 822 utilisée dans les flux RSS ou dans le monde OAI-PMH :

$datedepart = '2007-09-10 00:00:00'; // on entre la date (qui peut venir d'un champ de type datetime de SGBDR : MySQL, PostgreSQL, etc.)
list($date, $hours) = split(' ', $datedepart);
list($year,$month,$day) = split('-',$date);
list($hour,$min,$sec) = split(':',$hours);

$date = date(r,mktime($hour, $min, $sec, $month, $day, $year));
print "$date";

Stéphane.

Source : http://www.phpfreaks.com/quickcode/from-MySQL-datetime-to-RFC-822-for-RSS/597.php

Décrire un objet numérique ou numérisé : utilisation du Dublin Core

Bonjour,
La semaine passée un chercheur me demande : « J’entends parler de métadonnées en Dublin Core, qu’est-ce ? ». Après explication, je me suis aperçu que faire l’association entre les champs d’une base de donnée – décrivant des objets numériques ou numérisés – et la notion de métadonnées XML n’était pas forcement naturelle. Plus qu’une différence de vocabulaire, il s’agit d’un terrain inconnu avec son lot de mystères et de rumeurs inquiétantes. La notion de champs de description, dans une base de données comportant une ou plusieurs tables, est assez connue aujourd’hui ; mais l’interaction entre ces champs et des métadonnées est assez nouvelle pour le grand public. L’information stockée dans un champ d’une table de données (par exemple le nom de l’auteur du document, ou sa date) peut être utilisée de différente façon. C’est là l’une des clés de la compréhension des métadonnées. Cette information peut être affichée directement sur un site web via l’intermédiaire d’un programme informatique (écrit en PHP ou Perl par exemple). Mais elle peut également servir à renseigner la valeur d’une balise HTML (dans une entête de fichier HTML), ou la valeur d’une balise XML (dans un fichier XML servant à échanger ou préserver donc de l’information de façon indépendante via à vis des logiciels courants).

Prenons l’exemple de deux équipes de recherche qui souhaitent échanger des informations. Chacune des équipes a créé une base de données qui a, pour des raisons historiques et pratiques, des champs différents : c’est à dire que les modélisations sont différentes car les besoins ont été listés sans concertation au départ. L’un des moyens pour échanger des informations entre ces deux bases de données est d’avoir un format commun aux deux équipes : par exemple s’échanger des fichiers textes (ou XML) en ayant structuré l’information de telle façon que les deux équipes seront capables de ranger ces informations dans les bonnes « cases » (champs) de leurs bases de données respectives.
Il existe pour cela des normes de structuration de l’information (l’on dit aussi grammaire ou syntaxe). L’une des plus utile dans le monde de la recherche est la norme Dublin Core (ou DC). Le DC est une norme simple de description bibliographique créée pour les documents numériques. Le DC définit un ensemble d’éléments (l’on dira métadonnées ou « données de données ») qui sont au nombre de 15 pour le DC dit « non qualifié » (norme ISO 15836 de février 2003) :

  • -le titre,
  • -le créateur,
  • -l’éditeur,
  • -le sujet,
  • -la description (sorte de résumé, qui peut se rapprocher de « l’Analyse » pour les médiévistes),
  • -la source,
  • -la langue,
  • -la relation (relation ou lien avec une autre ressource DC),
  • -la couverture (l’aspect spatio-temporelle de la ressource : géographies, chronologie),
  • -la date,
  • -le type (images, sons, textes),
  • -le format (le format de la ressource : txt ; wmv ; pdf ; ogg ; php ; mov ; rtf ; ops ; etc),
  • -l’identificateur (DOI ; URL ; id OAI-PMH),
  • -le contributeur (personne physique ou moral ayant participée à l’élaboration de la ressource),
  • -les droits.

Ainsi, il est facilement possible de configurer une base de données MySQL, PostgreSQL, MS-Access ou même OpenOffice suivant ces « champs » et de créer un format de sortie XML reprennant les 15 élements DC. C’est le coeur, par exemple, des enregistrements dans un entrepôt OAI-PMH :

<record>
   <header>
    <identifier>oai:www.crhst.cnrs.fr:hstl-000101</identifier>
    <datestamp>2007-01-15T15:04:36Z</datestamp>
    <setSpec>manuscript</setSpec>
   </header>
   <metadata>
     <oai_dc:dc
       xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"
       xmlns:dc="http://purl.org/dc/elements/1.1/"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/
       http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
      <dc:title>Autobiographie d'Ampère.</dc:title>
      <dc:creator>André-Marie AMPERE</dc:creator>
      <dc:subject>history</dc:subject>
      <dc:description>Cahier manuscrit de 16 feuillets dont les 8 premiers feuillets sont autographes...</dc:description>
      <dc:publisher>Christine BLONDEL</dc:publisher>
      <dc:contributor>CNRS, CRHST</dc:contributor>
      <dc:contributor>HSTL : Delphine USAL</dc:contributor>
      <dc:date>1824-00-00</dc:date>
      <dc:type>studies materials</dc:type>
      <dc:type>text</dc:type>
      <dc:format>xhtml from databases</dc:format>
      <dc:identifier>http://www.ampere.cnrs.fr/ice/ice_book_detail-fr-text-ampere-ampere_text-8-3.html</dc:identifier>
      <dc:source>http://www.ampere.cnrs.fr/ice/ice_book_detail-fr-text-ampere-ampere_text-8-3.html</dc:source>
      <dc:language>french</dc:language>
      <dc:coverage>ampère</dc:coverage>
      <dc:coverage>autobiographie</dc:coverage>
      <dc:coverage>electricity</dc:coverage>
      <dc:coverage>AMPERE</dc:coverage>
      <dc:coverage>XIXe</dc:coverage>
      <dc:coverage>France</dc:coverage>
      <dc:rights>public domain</dc:rights>
     </oai_dc:dc>
   </metadata>
  </record>

Nous voyons bien dans ce cas, que les balises XML utilisant le DC sont au coeur de la notice (dc:title par exemple). La notice XML, écrite en DC, est encapsulée dans d’autres balise XML propres à l’OAI-PMH. Cette notice XML DC est en fait générée par un script PHP (que nous pouvons nommer application ou programme) à partir d’une base de données MySQL.

Bonne journée,

Stéphane.

OAIster + Firefox : deux outils pour faire des recherches dans des réservoirs OAI-PMH

Bonsoir, Grâce aux extensions XPI, il est possible d’utiliser dans Firefox un autre moteur de recherche que Google qui apparaît traditionnellement dans le coin en haut à droite. Pour m’a part, j’y ai placé une fenêtre OAIster. Ceci me permet de faire des recherches dans le plus grand moteur OAI-PMH (près de 11 Mo de références scientifiques). Quand les applications ce mélange cela donne souvant des outils très intéressants. Par exemple, dans ce cas, il est possible de recherche un article publié dans HAL ou bien retrouver une lettre d’Ampère à Arago ou un cartulaire de l’Ecole des Chartes.

OAI

Le principal défaut d’OAIster est la lenteur du moteur, mais bon, il paraît qu’ils y sont dessus.

Bonne journée

Stéphane.

OAI-PMH v2.0 et XSLT Style Sheet

Bonjour,

J’explore en ce moment le monde de l’OAI-PMH. J’ai développé pour mon équipe un entrepôt OAI-PMH en m’appuyant sur l’outil – très pratique et simple – de H. Stamerjohanns : phpoai2 Data Provider. Cet outil utilise la brique PEAR et PostgreSQL ou MySQL pour le stockage des références (mais grâce à PEAR il est facile de le lier à autre chose).

L’entrepôt de mon laboratoire diffuse des références et donc donne accès à des sources historiques : ouvrages rares, manuscrits, documents scientifiques, carnets de notes de savants, etc. Le protocole OAI-PMH, finalement très simple, intéresse un très grand nombre d’institution de recherche de part le monde (je ne me lancerai pas là dans un inventaire à la Prévert) et il semble être le meilleur protocole de diffusion de références et de données grâce à XML. L’XMLisation de ce protocole permet la répartition des charges entre entrepôts et fournisseurs de services.

Il est possible de donner un regard plus « humain » au flux OAI à l’aide la feuille de style XSL développée par nos amis du GNU EPrints project. Elle est très pratique cette feuille XSL car elle permet de transformer en XHTML les flux issus des verbes OAI. Cela permet de créer une visualisation du flux XML dans un simple navigateur, les moteurs de recherche s’en régaleront, un seul entrepôt, un flux de données, le moissonnage classique par OAIster et en plus, la consultation web classique, voir l’indexation par des moteurs de recherche « standards » ou très locaux (htdig par exemple).

Stéphane.

Diffusion de sources historiques via le protocole OAI-PMH (partie 2)

Bonjour,
Après avoir testé en interne mon serveur OAI-PMH je me suis lancé !
Je l’ai soumis à OAIster qui semble être le plus grand portail d’accès à des ressources OAI…. Réactivité maximale, 24h après la soumission, me voila délivrant des ressources issues des sites du Centre de Recherche en Histoire des Sciences et des Techniques via de l’OAI-PMH.

Mon serveur OAI-PMH est développé en PHP et utilise DOM, plus une petite base de données très simple tournant sous PostgreSQL qui reprend les informations issues de mon outil ICEberg. L’idée est d’avoir une « web-application » minimale à maintenir dans le futur (l’un des clés de la pérennisation des données par ailleurs).

Diffusion de sources historiques via le protocole OAI-PMH (partie 1)

Bonsoir,
La mise au point du serveur OAI-PMH du CRHST est presque terminée. Il me manque la mise en place du ResumptionToken qui n’est d’ailleurs pas très simple a réaliser. J’ai utilisé PHP, mon langage préféré, pour le monter. En s’appuyant sur DOM XML, c’est très facile… donc il est en ligne : http://www.crhst.cnrs.fr/esources/
Moissonnez !
Stéphane.

OAI vs DOI ???

Un peu de lecture pour comparer le DOI et l’OAI :
DOI : http://evopsy.org/article-imp.php3?id_article=1
OAI : http://www.culture.gouv.fr/culture/dll/OAI-PMH.htm
Stéphane.

Page 2 sur 2

Fièrement propulsé par WordPress & Thème par Anders Norén