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.