Si le Web a été conçu, au départ, pour permettre à des intelligences humaines de lire des documents – accessibles par des hyper-liens –, la démultiplication de l’information disponible nécessite aujourd’hui d’autres types d’accès, basés sur des automatismes gérés par des programmes informatiques. C’est dans ce cadre que l’on voit fleurir bon nombre de moteurs de recherche sur Internet et beaucoup de technologies, encore à l’état expérimental, comme celles des "agents".
RDF permet de rendre plus "intelligente" l’information nécessaire à ces moteurs de recherche et, plus généralement, nécessaire à tout outil informatique analysant de façon automatisée des pages Web. Pour ce faire, RDF propose d’associer à toute ressource du Web un ensemble de descriptifs qui caractérisent au mieux cette ressource : on parle alors de métadonnées (en anglais, metadata). Présupposant un monde ouvert ou tout le monde parle de tout, RDF permet d’agréger des informations issues de différents éditeurs, sur un même sujet.
Du métalangage de définition de métadonnées, il est nécessaire de dériver des langages de définition de corpus homogènes de métadonnées. C’est la fonction d’un métalangage de définition de modèles (RDF-S), souvent appelés "vocabulaires". Ces vocabulaires RDF (qui relèvent plutôt de l’ordre de la syntaxe) seront spécifiques à une profession ou à une communauté particulière.
Une application pourra alors, par simple analyse des types de données définies dans le modèle, reconnaître un certain nombre de sémantiques applicables aux métadonnées liées à ce modèle. Elle pourra aussi déduire de nouvelles informations et c’est là où l’intelligence artificielle refait son apparition, avec ses bases de faits (les métadonnées) sur lesquelles des programmes vont pouvoir “raisonner” et “inférer”.
Décrire est une activité bien connue. Les bibliothécaires, les archivistes pratiquent la description depuis bien longtemps. Par ailleurs, HTML lui-même, dans ses versions récentes, proposait un certain nombre de possibilités de description dans les entêtes de document (éléments meta contenus dans élément head). RDF se propose alors de définir un cadre (framework) de définition de métadonnées, sans se prononcer plus avant sur la nature des métadonnées elles-mêmes.
Pour ce qui concerne XHTML, l’association à RDFa est maintenant formalisée dans RDF qui propose une méthode pour identifier des métadonnées n’importe où dans le corps d’une page Web (et pas seulement dans l’entête comme cela se faisait préalablement).
À noter, pour finir, que RDF-S prend toute sa signification avec l’apparition d’OWL qui permet de mettre en relation des vocabulaires (on parlera d’ontologies) présentant des concepts similaires.
L’objectif de RDF est de proposer un cadre formel de définition de métadonnées, sans préjuger des vocabulaires et syntaxes utilisés pour écrire ces métadonnées : en ce sens, RDF est un métalangage spécialisé dans les métadonnées. Son objectif : rendre plus pertinent le traitement automatisé des informations contenues sur le Web, par la possibilité de fournir aux outils de traitement une information plus sémantique que les seuls mots contenus dans un document. De ce métalangage, il sera possible de définir des langages de description de données : ce sera l’objectif des vocabulaires RDF.
Un autre objectif de RDF est de fédérer les vocabulaires et syntaxes de description de métadonnées existantes dans un cadre (framework) commun. Cela ne veut pas dire qu’il s’agit de définir LE modèle de métadonnées, mais plutôt de permettre à chaque modèle de s’insérer harmonieusement dans les métadonnées décrivant une ressource particulière. Dans ce cadre, les vocabulaires RDF permettront de mieux contrôler les métadonnées au regard de leur modèle.
Dernier objectif, et pas des moindres, proposer une solution dans ce monde Internet totalement ouvert où “tout le monde peut dire quelque chose sur n’importe quel sujet”. Du coup, il faut pouvoir identifier, mais sans préjuger du fait que quelqu’un pourra identifier un même concept d’une autre façon. Il faut aussi permettre à différentes entités, distribuées sur le Web, de parler de la même chose, pourquoi pas de façon contradictoire.
Pour atteindre ses objectifs, le principe de RDF est de définir des ressources par des propriétés. Comme toutes les ressources sont identifiées, c’est l’agrégation des propriétés qui donnera une “complétude” aux métadonnées de la ressource. Ainsi, un éditeur pourrait donner un ensemble de métadonnées descriptives sur les livres qu’il commercialise. Un site de vente par correspondance pourra alors utiliser ces métadonnées pour les agréger avec différents autres sites commercialisant l’ouvrage et proposer l’ensemble à l’internaute.
Dans ses principes de base, RDF dissocie trois types d’objets : une "ressource" (resource) est définie par des valeurs (object) de "propriétés" (properties) ; l’association d’une ressource à une propriété par une valeur de propriété est une "assertion" (statement). Une assertion est donc un triplet : l’association des trois informations sujet, prédicat, objet.
Ainsi, il est possible de décrire, avec RDF, des assertions du type : http://www.tireme.fr/glossaire a pour titre "Glossaire de Pierre Attar": http://www.tireme.fr/glossaire est la ressource (le sujet dont on parle) ; "a pour titre" est une propriété dont la valeur est "Glossaire de Pierre Attar".
La syntaxe utilisée par RDF étant XML, la déclaration précédente pourra s’écrire :
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:description about="http://www.tireme.fr/glossaire/">
<titre>"Glossaire de Pierre Attar"</titre>
</rdf:description>
</rdf:RDF>
Un outil automatisé comprendra alors que l’on est en train de parler d’une ressource avec un propriété de type "titre" dont la valeur de propriété est "Glossaire de Pierre Attar". Que veut dire la propriété "titre" ? C’est à ce niveau que doivent intervenir les vocabulaires et syntaxes spécialisés (le Dublin Core propose de d’utiliser dc:title en lieu et place de titre dans l’exemple ci-dessus).
La syntaxe XML proposée peut prendre différentes formes et la seule chose finalement importante est le fait que l’ensemble des triplets forment un graphe orienté, fait de ressources (les nœuds) reliés par des propriétés (arcs orientés).
Ici, la force de RDF est de ne pas se prononcer sur le sujet et de laisser aux personnes définissant leurs métadonnées le choix du (des) vocabulaire(s) utilisé(s). Ainsi, il serait, par exemple, possible de définir plusieurs propriétés "créateur" : une qui soit compatible avec le Dublin Core, spécification de métadonnées extrêmement généraliste et, une qui soit compatible avec un modèle privé, recensant tous les créateurs dans une base de données ad hoc. Le fragment s’écrirait alors :
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/metadata/dublin_core#"
xmlns:mutu="http://www.mutu-xml.org/modèles/meta">
<rdf:description about="http://www.mutu-xml.org">
<dc:creator>projet MUTU-XML</dc:creator>
<mutu:créateur nom-en-base="MUTU-XML"/>
</rdf:description>
</rdf:RDF>
Pour aller plus loin, RDF définit un certain nombre d’autres constructeurs, permettant d’assembler des métadonnées entre elles :
Dave Beckett’s Resource Description Framework (RDF) Resource Guide Dave Beckett, de l’Institute for Learning and Research Technology (ILRT), Université de Bristol, Royaume-Uni Digital Libraries: Metadata Resources, Resource Description Framework International Federation of Library Associations and Institutions |
Frequently Asked Questions about RDF (W3C) W3C Technology and Society Domain |
What is RDF? (xml.com) Tim Bray, 24 janvier 2001 RDF Tutorial (ZVON) Miloslav Nic, 2000 |
|
An Introduction to the Resource
Description Framework, Eric Miller, 05/1998, édité par D-Lib Magazine An Idiot's Guide to the
Resource Description Framework, Renato Iannella, 25/01/1999, édité par DSTC Pty Ltd, University of Queensland,
Australie Guidance on expressing the Dublin Core within the Resource Description
Framework (RDF), Dan Brickley, Eric Miller, Paul Miller (DCMI), 01/07/1999, édité par UKOLN, University of Bath (Grande-Bretagne) Redland Notes, RDF and RDF Schema Concepts Reference, Dave Beckett, 24/04/2001, édité par Institute for Learning and Research Technology (ILRT), University
of Bristol, Grande-Bretagne RDF and Topic Maps. An Exercise in Convergence, Graham Moore, in XML Europe 2001 Berlin, 05/2001, édité par Empolis GmbH Markup Languages: Comparison
and Examples, Yolanda Gil, Varun Ratnakar, 07/09/2001, édité par Trellis Project,
USC/Information Sciences Institute, Etats-Unis |
RELAX NG Compact Schema for RDF/XML Syntax (W3C) Schéma non normatif, initialement proposé par James Clark puis mis à jour |