Lisez-moi S.V.P. 
W3C

Cas d'utilisation GRDDL : Scénarios pour l'extraction de données RDF de documents XML

Note de groupe de travail du W3C du 6 avril 2007

Cette version :
http://www.w3.org/TR/2007/NOTE-grddl-scenarios-20070406/
Dernière version :
http://www.w3.org/TR/grddl-scenarios/
Version précédente :
http://www.w3.org/TR/2006/WD-grddl-scenarios-20061002/
Rédacteur :
Fabien Gandon, INRIA
Auteurs et contributeurs :
Cf. les « Remerciements »

Résumé

GRDDL est un mécanisme pour glaner des descriptions de ressources dans les dialectes de langages (N.d.T. Gleaning Resource Descriptions from Dialects of Languages). La spécification GRDDL introduit un balisage pour déclarer qu'un document XML contient des données à glaner et associer des algorithmes, typiquement dans une représentation XSLT, pour en glaner les données RDF.

Le balisage inclut un attribut qualifié par un espace de noms, à utiliser avec les documents XML d'utilisation générale, et une relation de lien qualifiée par un profil, à utiliser dans les documents XHTML valides. Le mécanisme GRDDL permet également à un document d'espace de noms XML (ou à un document de profil XHTML) de déclarer que chaque document associé à cet espace de noms (ou à ce profil) contient des données à glaner et des liaisons vers les algorithmes pour les glaner.

La spécification GRDDL fournit tous les détails techniques. Une introduction à GRDDL démontre le mécanisme sur des documents XHTML contenant des dialectes largement répandus, appelés récemment des microformats.

Statut de ce document

Cette section décrit le statut du document au moment de sa publication. D'autres documents peuvent le remplacer. On peut trouver une liste des publications courantes du W3C et la dernière révision de ce rapport technique dans l'index des rapports techniques du W3C à http://www.w3.org/TR/.

Ce document est une note de groupe de travail, développée par le groupe de travail GRDDL.

À la publication de cette note de groupe de travail, le travail du groupe de travail GRDDL sur ce document était achevé. Les modifications depuis la version de travail précédente sont répertoriées dans le journal des changements. Les commentaires à propos du document peuvent être envoyés sur la liste de diffusion public-grddl-comments@w3.org (avec des archives publiques). Les autres discussions dans cette matière peuvent être envoyées sur la liste de diffusion du groupe d'intérêt Semantic Web à semantic-web@w3.org (aussi avec des archives publiques).

La publication du document au titre de note de groupe de travail n'implique pas l'approbation de tous les membres du W3C. C'est un document de travail qui peut-être mis à jour, remplacé et rendu obsolète par d'autres documents à tout instant. Il n'est pas approprié de le citer comme autre chose qu'un travail en cours.

Ce document a été produit par un groupe agissant sous couvert de la politique de brevets du W3C du 5 février 2004. Le W3C tient une liste publique des divulgations de brevets faites en rapport avec les produits livrables du groupe ; cette page contient aussi des instructions pour la divulgation d'un brevet. Toute personne ayant connaissance réelle d'un brevet qu'elle estime contenir des revendications essentielles doit divulguer cette information conformément à la section 6 de la politique de brevets du W3C.


Table des matières

Introduction : Données et documents

Les documents sur le Web font appel à beaucoup de dialectes de XML. Il existe des dialectes de XHTML, de XML et de RDF qui sont utilisés pour tout représenter, de la poésie à la prose, des bons de commande aux factures, des feuilles de calcul aux bases de données, des schémas aux scripts, et des listes liées aux ontologies. Les uns sont définis formellement, les autres laissent plus de place à l'interprétation. Récemment, deux techniques de codage progressives ont fait leur apparition, RDFa et les microformats, en vue de placer une sémantique supplémentaire sur les documents XHTML valides. Ces techniques offrent des formats de données ouverts simples bâtis sur des standards existants largement adoptés.

Bien que cette largesse d'expressions soit très libératrice, en inspirant de nouveaux dialectes pour codifier des significations communes comme personnalisées, elle peut constituer une barrière à la compréhension entre des domaines ou des champs différents. Comment, par exemple, un programme peut-il découvrir l'auteur d'un poème, celui d'une feuille de calcul ou celui d'une ontologie ? Et comment le programme peut-il déterminer si deux des auteurs ne font en réalité qu'un ?

Beaucoup de documents XML sur le Web peuvent contenir des données qui seraient considérablement valorisées si elles étaient accessibles aux systèmes sans gestion directe, hormis RDF, de tant de dialectes.

Le cadre de description de ressources [RDFC04] constitue un standard pour faire des déclarations à propos de ressources sous forme d'expressions sujet-prédicat-objet. Une façon de représenter en RDF ce fait que « l'auteur de 'The Stand' est Stephen King » serait un triplet dont le sujet serait « The Stand », le prédicat « a pour auteur » et l'objet « Stephen King ». Le prédicat « a pour auteur » exprime une relation entre le sujet (The Stand) et l'objet (Stephen King). L'utilisation d'adresses URI pour identifier singulièrement le livre, l'auteur et même la relation, faciliterait la conception des programmes, car on ne sait pas toujours qui est Stephen King ni même comment écrire son nom de façon régulière (cf. RDF primer).

RDF inclut une syntaxe abstraite et une syntaxe concrète XML (RDF/XML). Les outils utilisant RDFS peuvent généralement lire les données codées en RDF/XML.

GRDDL est un mécanisme pour glaner les descriptions de ressoures des dialectes de langages (N.d.T. Gleaning Resource Descriptions from Dialects of Languages), c'est-à-dire extraire des données RDF de documents XML au moyen d'algorithmes de transformations, typiquement dans une représentation XSLT. Les résultats des transformations sont habituellement des documents RDF/XML quoique d'autres syntaxes RDF soit utilisables.

Par exemple, on peut écrire des métadonnées Dublin Core dans un dialecte HTML [RFC2731] en correspondance claire avec un codage en RDF/XML [DCRDF]. Les extraits HTML et RDF suivants illustre la correspondance.

HTML :

<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
     <title>Some Document</title>
     <meta name="DC.Subject"
        content="ADAM; Simple Search; Index+; prototype" />
     ...
   </head>
   ...
</html>

RDF/XML :

<rdf:RDF
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
   <rdf:Description rdf:about="">
     <dc:subject>ADAM; Simple Search; Index+; prototype</dc:subject>
   </rdf:Description>
</rdf:RDF>

L'algorithme de transformation pour convertir entre les différents formats peut être défini en utilisant XSLT, ici dc-extract.xsl.

Ce document réunit plusieurs cas d'utilisation motivants, avec leurs objectifs et leurs préalables, pour extraire des données RDF de documents XML. Ces cas d'utilisation montrent également comment les documents XML et XHTML peuvent être assortis de microformats, Embedded RDF ou de déclarations RDFa pour assister les transformations GRDDL chargées d'extraire les données de valeurs utilisables pour automatiser des tâches diverses.

La version de travail GRDDL est une spécification technique concise du mécanisme GRDDL et sa syntaxe XML. Elle définit la syntaxe GRDDL à utiliser dans les documents XHTML valides et XML bien formés, ainsi que la façon de coder GRDDL dans les espaces de noms et les profils HTML.

Le document d'accompagnement d'introduction à GRDDL en version de travail est un mode d'emploi progressif du mécanisme GRDDL avec des exemples illustrés tirés de la version de travail des cas d'utilisation GRDDL.

Les neuf cas d'utilisation détaillés ci-dessous peuvent se résumer ainsi :

Cet ensemble de cas d'utilisation tient seulement compte des cas où les sources initiales sont des documents XML bien formés. Les autres types de sources ne sont pas de la compétence du groupe de travail GRDDL.

Cas d'utilisation n° 1 - Planification : Jane essaye de coordonner une rencontre

Jane essaye de coordonner une rencontre avec ses amis Robin, David et Kate. Ils vivent chacun dans des villes différentes mais tombent souvent les uns sur les autres dans l'année lors de conférences diverses. Jane veut trouver une date où tous ses amis seront dans la même ville.

Malgré leurs formats différents, les agendas des quatre amis peuvent être utilisés comme documents sources GRDDL et convertis en RDF. Une fois exprimées en RDF, les données peuvent être fusionnées et interrogées avec des outils tel que le langage d'interrogation SPARQL.

Utiliser GRDDL pour extraire des données d'agendas

Jane utilise un agent connaissant GRDDL pour extraire automatiquement les données de chaque page, les charger dans un magasin RDF et les combiner en un seul modèle. Elle écrit alors une requête pour filtrer les événements aux seules dates où tous les quatre amis sont dans la même ville.

Jane est ravie d'apprendre que tous les quatre assisteront à des conférences à Los Angeles début septembre et elle commence immédiatement à chercher des restaurants où réserver pour leurs soirées.

En parcourant les agendas de ses amis, Jane remarque divers conférences, débats et autres rassemblements de groupes sociaux dans sa région. Ces groupes publient leurs calendriers dans des formats variés fondés sur HTML : microformats, eRDF, RDFa, ou des recettes maison pour exprimer des informations d'agenda.

Ces calendriers sont des documents sources et donc Jane pourraient facilement ajouter toutes ces manifestations à son propre agenda. Toutefois Jane ne veut pas toutes les inscrire. Elle veut trier et choisir les manifestations auxquelles assister. Elle souhaite parcourir cette liste de manifestations et, lorsqu'une manifestation l'intéresse, pouvoir la sélectionner et faire un copier-coller dans son agenda.

Pour ce copier-coller, le navigateur de Jane inclut un agent connaissant GRDDL qui gère, par défaut, un schéma d'incorporation RDF-dans-HTML appelé RDFa. La transformation GRDDL définie dans la page indique comment transformer ce XHTML en XHTML+RDFa, tout en conservant le style et la disposition de la page.

Utiliser GRDDL pour sélectionner un élément

Ainsi, le navigateur connaissant RDFa de Jane peut effectuer la transformation avant même le rendu du XHTML. Le code XHTML+RDFa rendu permet une fonction de copier-coller directement en faisant un clic-droit sur le nom de la manifestation dans la page.

Cf. également : microformat, Embedded RDF, RDFa, RSS 1.0.

Cas d'utilisation n° 2 - Soins de santé : Kayode veut interroger des données cliniques.

Utiliser GRDDL pour extraire des données cliniques Kayode, développeur d'un système de gestion de données de recherche clinique, utilise XML comme format de représentation principal des dossiers patients informatisés. Pour l'instant, il édite le XML à distance via des formulaires et soumet le document XML vers une adresse URI unique pour chaque enregistrement par HTTP. Par ailleurs, Kayode a noté l'utilité des requêtes RDF pour l'interrogation d'investigation.

Il souhaite utiliser un système de gestion de contenu incluant un mécanisme pour copier le document XML vers des graphes RDF nommés pour une persistance synchrone avec les changements du document.

Le coût d'une double représentation comme vocabulaire XML personnalisé et RDF comprend des problèmes d'espace et de synchronisation, mais la valeur principale tient au fait de pouvoir interroger à la fois dans XML et dans RDF. Les documents XML correspondants peuvent être transfomés en d'autres formats non-RDF, évalués par des expressions XPath et XPointer, réticulés par XLink ou XInclude, et validés en structure par RELAX NG (ou XML Schema). Avec l'outil d'interrogation RDF, Kayode peut faire des spéculations en utilisant des ontologies de soins de santé standards pour dossiers patients telle que l'ontologie HL7 OWL.

Kayode comprend qu'une approche GRDDL peut alléger les coûts d'entretien d'une représentation double en permettant d'interroger sémantiquement un dossier patient informatisé ou un ensemble de données de recherche clinique fondé sur XML en associant un profil GRDDL au vocabulaire XML spécifique.

L'utilisation de RDF aide à gérer les projets de recherche assignés aux résidents. Kayode trouve RDF spécialement pratique pour essayer de déterminer un critère de recherche initial d'une population de patients relativement à une étude particulière. Chaque étude a un ensemble de classifications propres exprimées dans une ontologie ou à l'aide de règles.

Kayode crée une interface d'utilisateur Web fonctionnant avec un agent connaissant GRDDL qui sélectionne les dossiers patients informatisés dans un serveur distant. Chaque dossier est un document source associé à des transformations qui extraient les données cliniques en tant que RDF exprimé dans un vocabulaire universel pour dossiers patients informatisés.

Le médecin résident fait alors des spéculations sur le graphe RDF résultant, ou applique à celui-ci les règles spécifiques de l'étude pour classer les données selon son domaine d'intérêt, tels que des diagnoses et des observations pathologiques spécifiques.

Pour Kayode, disposer d'une représentation RDF des données cliniques offre des avantages par rapport à la simple utilisation d'un vocabulaire XML spécialisé, en particulier un niveau d'interprétation supplémentaire et la possibilité d'intégrer des données de sources diverses. Les difficultés inhérentes de l'utilisation de multiples vocabulaires XML dans des domaines telles que les données cliniques rendent la correspondance avec une ontologie unifiée encore plus précieuse.

Cf. également : GALEN / Open GALEN, 4Suite, Ontologie HL7 OWL HCLSIG

Cas d'utilisation n° 3 - Agrégation Web : Stephan veut une synthèse critique avant d'acheter une guitare.

Utiliser GRDDL pour une extraction hReview Stephan souhaite acheter une guitare et décide donc de lire des critiques. Il existe plusieurs publications spécialisées en ligne qui proposent des essais d'instruments de musique. Il y a aussi des blogues qui contiennent des comptes-rendus faits par des particuliers. Dans les critiques, il peut y avoir des amis de Stephan, des personnes dont l'opinion compte pour Stephan (par exemple, des musiciens connus et des personnes dont les critiques lui ont été utiles dans le passé). Il peut aussi y avoir des critiques semées volontairement par les fabricants d'instruments et qui sont fortement biaisées.

Stephan visite un site offrant un service de critiques et saisit ses préférences pour les essais de guitares qui donnent une note élevée à l'instrument. Cette requête initiale ramène une liste de tous les titres/résumés d'essais pertinents en même temps que des renseignements à propos des auteurs des critiques.

Depuis cette liste, Stephan choisit seulement les personnnes qui lui inspirent confiance, et la soumission de ces paramètres ramène finalement un ensemble de critiques complètes correspondant à ses critères.

Les critiques publiées à l'aide du microformat hReview peuvent être découvertes en utilisant les services de recherche existants. Ces documents sources peuvent être consommés par un agent connaissant GRDDL pour extraire le RDF lequel est ensuite agrégé dans un magasin. Les renseignements concernant les auteurs des critiques peuvent également être agrégés depuis des sources variées incluant les microformats hCard et XFN, et les profils FOAF autodécouverts peuvent être recueillis au travers des liens dans le propre profil de Stephan. Le filtrage peut être réalisé en effectuant des interrogations SPARQL sur les données agrégées, présentées à l'utilisateur au travers de formulaires HTML ordinaires.

Cf. également : hReview, hCard, XFN.

Cas d'utilisation n° 4 - Interrogation de sites et de bibliothèques numériques : DC4Plus Corp. veut automatiser la publication de ses documents électroniques.

La société DC4Plus se sert de son site Web pour publier son catalogue de produits et services ainsi que des documents numériques, tant sur leur site Web public (documents techniques, modes d'emploi et manuels techniques des produits, et brochures) que sur leur intranet (rapports internes et documents administratifs). Au fur et à mesure de l'apparition des produits, DC4Plus bâtit une bibliothèque numérique comme partie de son site Web.

Adeline est directrice de l'informatique chez DC4Plus. Elle est sensible à la tension entre, d'une part, l'hétérogénéité et la répartition naturelles de tous ces documents électroniques et, d'autre part, la nécessité d'avoir une vue intégrée et unifiée de toutes ces productions. Elle pense qu'il y a besoin d'automatiser la détection, l'indexation et les capacités d'exploration de ces documents. En outre, plusieurs documents d'entreprise suivent une procédure standard avant d'être publiés, et il y a une demande croissante de la part des utilisateurs et des gestionnaires afin de pouvoir automatiser cette procédure et suivre le statut de chaque document.

Utiliser GRDDL pour des bibliothèques numériques Adeline se concentre d'abord sur les rapports techniques publiés par les différents services de DC4Plus. Ces rapports sont publiés selon un processus bien défini. Elle propose un système fondé sur les technologies du Web sémantique, qui permette à sa société de rationaliser le suivi de la publication des rapports techniques, de tenir un index formalisé sur RDF de ces spécifications et de créer plusieurs outils pour ces nouvelles données disponibles.

On peut décrire la mise en place de cette vision d'Adeline en cinq étapes :

  1. Des modèles XHTML incluant des annotations RDFa sont proposés pour chaque type de document ; les utilisateurs éditent ces modèles pour créer de nouveaux documents, sans même remarquer que certaines parties sont annotées en RDFa, et produisent ainsi des documents sources ;
  2. Une ou plusieurs transformations GRDDL sont générées pour ces modèles ; les annotations incorporées servent à identifier les éléments à extraire (titre, auteur, rédacteur, statut, produits apparentés, service) et rendent l'extraction résistante aux changements de structure dans le document ;
  3. Le site Web de DC4Plus est régulièrement exploré et un agent connaissant GRDDL utilise des transformations GRDDL pour alimenter un magasin RDF contenant toutes les annotations des documents ;
  4. Plusieurs pages nouvelles sont ajoutées au site pour générer des index automatiques à partir du magasin RDF montrant des vues différentes des documents (un catalogue dans l'ordre alphabétique, une liste des documents par statut, une liste des publications d'un service donné) ;
  5. Des outils plus complexes sont développés en assistance tant des processus internes (des outils de contrôle du flux de documents, des outils de rapport d'activité, un système de gestion d'audits de documents) que des processus externes (un service Web SPARQL permettant aux clients d'interroger le catalogue, un fil RSS pour avertir des nouvelles publications).

Ce système repose sur des modèles communs de publication des documents comprenant des annotations RDFa pour marquer les données importantes. Un agent connaissant GRDDL extrait ces métadonnées en tant que RDF. En explorant les rapports publiés et en appliquant les transformations GRDDL qui leur sont associées, un index RDF complet et à jour est construit à partir de ressources réparties dans le site Web de l'organisation. Cet index RDF est uitilisé ensuite pour créer un référentiel autoritaire centralisé et pourtant flexible.

Adeline estime que ce scénario peut être généralisé à toute organisation intéressée par la tenue d'un portail vers une bibliothèque numérique avec des index personnalisés, des formulaires de recherche dédiés, des accessoires de navigation. Elle apprécie en particulier le simple fait que, dans cette architecture, les documents XHTML mis en ligne en suivant des modèles officiels permettent aux agents connaissant GRDDL d'extraire les annotations RDF correspondantes qu'on peut alors utiliser pour générer des portails, alimenter des moteurs de production et lancer des interrogations directement dans le site.

Cf. également : « Automatiser la publication des rapports techniques »

Cas d'utilisation n° 5 - Wikis et enseignement à distance : L'Université technique de Marcilly décide d'employer des wikis pour encourager l'échange des connaissances entre les maîtres de conférences et les étudiants.

L'Université technique de Marcilly a décidé d'utiliser des wikis pour encourager l'échange des connaissances entre les maîtres de conférences et les étudiants. Elle a testé plusieurs wikis au fil des ans et souhaite expérimenter de nouvelles méthodes de structuration du wiki pour améliorer la navigation et la consultation, et elle souhaite également faciliter la réutilisation des objets d'apprentissage dans des contextes différents. Dans l'idéal, l'Université souhaite que les informations structurant le wiki soient :

  1. Faciles à ajouter, éditer et enrichir. Tout cela devrait avoir lieu en même temps que l'utilisateur édite une page pour éviter la multiplication des interfaces et des manipulations ;
  2. Explicites et compréhensibles pour les machines, de sorte que le moteur de wiki puisse les utiliser pour proposer des pages en relation, pour effectuer des recherches précises, pour générer des interfaces de navigation, pour construire des index dynamiques fondés sur des interrogations personnalisées et pour en fournir un tri et un filtrage personnalisés ;
  3. Accessibles à d'autres applications pour l'intégration avec d'autres systèmes d'information, pour des liens ou la migration vers d'autres moteurs de wiki, pour l'extension de ses fonctionnalités ;

Dans ce contexte, l'Université utilise les métadonnées incorporées aux pages du wiki pour :

Prenons le cas de Michel, un maître de conférence en mécanique et thermodynamique. Il utilisait le wiki pour publier ses notes de cours. Au départ, il étiquetait chaque note avec les concepts principaux qu'elle introduisait (par exemple, « ÉnergiesRenouvelables », « Éthanol », « Diesel »). En outre, Michel tapait automatiquement chaque section du document en utilisant des styles prédéfinis (par exemple, définitions, formule, exemple). La prochaine session de travaux pratiques impliquera une connaissance des moteurs Diesel classiques et des moteurs à éthanol. Afin de générer une carte mnémotechnique de cette session, Michel lance une interrogation pour extraire les définitions et formules des cours étiquetés avec « Diesel » et « Éthanol ». Il utilise aussi ces étiquettes pour générer des sections « voir aussi » dynamiques, à la fin de ses sections, en suggestion d'autres sections à lire.

Les étudiants éditent les notes en ligne, pour y ajouter des pointeurs, pour insérer des commentaires sur les parties qu'ils trouvent difficiles à comprendre et pour se souvenir de bouts de cours précédents utiles pour la compréhension du nouveau cours. Les étudiants étiquettent aussi les pages de leurs propres étiquettes pour organiser leur lecture et marquent les parties qui leur semblent importantes ; ils utilisent des étiquettes pour créer des pistes thématiques transversales (par exemple, « ÉcoulementLiquide »), pour donner un retour sur le contenu (par exemple, « Difficile »), pour prioriser la lecture (par exemple, « BonÀConnaître », « Vital »). Ces étiquettes leur permettent d'avoir une navigation transversale et de réorganiser le contenu en fonction de la tâche à exécuter (par exemple, préparer un examen, écrire un rapport, faire une expérience). Ces étiquettes servent également à Michel pour évaluer la compréhension et les défauts de ses cours.

Enfin la masse des documents et des étiquettes de cours est telle qu'il est nécessaire de les réorganiser. À l'aide de l'éditeur d'étiquettes, Michel regroupe « Éthanol » et « Méthanol » comme sous-étiquettes d'une nouvelle étiquette qu'il nomme « Alcool ». Ce faisant, les pages étiquetées « Éthanol » ou « Méthanol » sont groupées et accessibles au travers d'« Alcool ». Il renouvelle cette opération avec d'autres étiquettes (par exemple, « Alcool » et « Hydrogène » deviennent sous-étiquettes de « CarburantNouveau »). Tout cela réorganise le wiki sans effort, par exemple, une suggestion de navigation dans les pages propose automatiquement des étiquettes inférieures, supérieures et sœurs, de sorte qu'en consultant une page étiquetée avec « Éthanol », le système suggère d'autres pages étiquetées avec « Méthanol ». Plus tard, lorqu'un étudiant poste son rapport sur un moteur à « HuileDeCoprah », on peut ranger sa nouvelle étiquette sous « CarburantNouveau » ; lui ou un autre peuvent le faire et le résultat profitera immédiatement à toute la communauté des utilisateurs. Utilisant ces étiquettes et leur hiérarchie, des index thématiques des documents de cours sont générés dynamiquement et réactualisés automatiquement.

D'un point de vue technique, l'Université a conçu un wiki qui stocke ses pages directement en XHTML, et des annotations RDF servent à représenter la structure du wiki et à annoter les pages du wiki et les objets qu'il contient (images, fichiers chargés). La structure RDF permet de réusiner la structure du wiki en éditant les annotations RDF et les schémas RDFS sur lesquels elles se fondent. Les annotations RDF sont incorporées dans les pages mêmes du wiki en utilisant RDFa et des microformats. Certains objets d'apprentissage peuvent être sauvegardés dans des formats XML et une feuille de style XSLT exploite les styles utilisés dans la session pour étiqueter les différentes parties (par exemple, définition, exercice, exemple), et ces annotations peuvent être utilisées pour générer de nouvelles vues de ces ressources (par exemple, une liste de définitions, une gestion hypertexte des sessions de travaux pratiques).

Utiliser RDFa et GRDDL dans les wikis

Le RDF incorporé est extrait par un agent connaissant GRDDL en utilisant des transformations GRDDL disponibles en ligne comme feuilles de style XSLT pour fournir des annotations sémantiques directement à l'application qui a besoin d'extraire les métadonnées incorporées :

Cf. également : Sweet Wiki, Semantic Wikis

Cas d'utilisation n° 6 - Syndication Web : Extraire des descriptions de formulaires pour alimenter en articles le blogue de Voltaire.

Le blogue de Voltaire est très populaire et englobe beaucoup de domaines d'intérêts majeurs, dont l'observation des oiseaux. Voltaire a tellement de domaines d'intérêts et passe tellement de temps à observer les oiseaux qu'il ne souhaite pas surfer sur le Web pour rechercher tous les sites auxquels il pourraient participer. Plutôt que de s'abonner « manuellement » aux blogues de tiers appropriés aux thèmes qu'il couvre, il veut à l'inverse que le modèle d'abonnement soit celui du pousser, c'est-à-dire que les personnes souhaitant inclure leurs blogues peuvent pousser les articles appropriés vers son blogue ; celui-ci devient en quelque sorte un aimant pour les articles d'intérêts similaires.

Voltaire a installé un moteur de blogue qui utilise XForms pour éditer les articles à distance à l'aide du protocole de publication Atom. Pour des raisons diverses, Voltaire a trouvé très pratique d'utiliser XForms pour créer des fragments Atom. Notamment, le protocole Atom utilise HTTP et un vocabulaire XML spécialisé comme mécanisme de messagerie à distance principal, ce qui lui permet de créer des documents XForm variés avec des éléments XForm submission pour distribuer les opérations sur des ressources Web.

En conséquence, les codes XForm pour distribuer ces opérations contiennent chacun un ensemble d'information plutôt riche concernant les services de niveau transport, sous forme d'adresses URI de services, de types de médias et de méthodes HTTP. Tout cela est entièrement encapsulé dans l'élément submission. Il se trouve qu'il existe un vocabulaire RDF pour exprimer les métadonnées de transport appelé RDF Forms.

Quelque part sur la planète, l'ornithologue professionnel Johan Bos, qui a repéré récemment un milan royal (Milvus milvus) loin de ses aires de reproduction, au milieu du Pays de Galles, se prépare à poster des articles relatant ses observations. Pour en accroître la visibilité, il veut que ses articles soient inclus dans le blog de Voltaire.

Utiliser GRDDL pour l'extraction XForm et les clients Atom

Le site de Voltaire fournit une transformation GRDDL générale qui extrait un graphe de formulaire RDF des éléments XForm submission employés dans les divers formulaires Web pour l'édition, la suppression et la mise à jour des articles Atom dans son blogue. Une telle transformation peut extraire uniformément une description RDF des mécanismes de transport à interpréter par un programme. Le client de Johan peut automatiquement récupérer un document d'introspection (via le protocole de publication Atom), mettre à jour les articles existants en utilisant les adresses URI de services identifiés et effectuer d'autres services de ce type.

Le client de Johan s'appuie donc sur un agent connaissant GRDDL pour extraire périodiquement les adresses URI de services, transformer le contenu trouvé à ces adresses URI en Atom/OWL et interroger le RDF résultant pour déterminer si les thèmes correspondent. Ce faisant, il copiera ses articles chez les adresses URI qui correspondent, en les y « POSTant ».

Voltaire n'a pas besoin de gérer les abonnements, tout ce qu'il pourrait peut-être faire serait de concéder un compte à Johan pour une authentification de niveau HTTP (en défense contre les spams ; comme vous pouvez l'imaginer, inverser le modèle d'abonnement ainsi expose le système de Voltaire à beaucoup de spams).

Cf. également : « La spécification XForms 1.1 », « Format et protocole de publication Atom (atompub) ».

Cas d'utilisation n° 7 - Documents validés : L'initiative OAI voudrait pouvoir définir les licences des documents dans leur schéma partagé.

L'association Open Archives Initiative (OAI) publie un schéma XML que les universités peuvent employer pour leurs documents archivés. Elles incluent des directives pour exprimer les droits associés à ces documents, y compris la possibilité de citer une licence telle qu'une licence Creative Commons.

Plus de 800 universités utilisent ce schéma. Les personnes chez Creative Commons voudraient déployer des outils, comme l'extension de navigateur MozCC qui permet d'examiner et d'interpréter commodément les licences incorporées dans les pages Web.

Il n'est pas raisonnable d'espérer interpréter le schéma XML favori de chacun, pourtant des communautés comme l'initiative OAI aimeraient pouvoir inclure des informations sur les licences dans leur schéma XML.

D'autre part, chez Creative Commons, on voudrait pouvoir faire une recommandation générique à tous ceux avec des documents d'instance XML, en leur permettant de faire ce qu'ils veulent avec leurs schémas XML, à condition d'inclure une transformation des documents d'instance vers RDF.

Utiliser GRDDL avec un schéma XML pour indiquer le profil et les transformations

Puisque les documents d'instance XML sont souvent répartis, comme dans le cas de l'OAI, le schéma XML même pourrait embarquer des descriptions RDF identifiant une transformation à appliquer à tous ses documents d'instance. De cette façon, la transformation est référencée indirectement par le schéma XML auquel chaque document source est assujetti.

Le schéma XML, qui est servi depuis l'emplacement de l'espace de noms, est un document source qui inclut des descriptions associant une transformation GRDDL à ses instances. Il a donc une double vocation pour ses instances : (1) validation et (2) identification des transformations pour glaner une signification.

Cf. également : Open Archives Initiative, Creative Commons, MozCC.

Cas d'utilisation n° 8 - Drainer des données du Web : Steffen veut construire un répertoire des personnes qui travaillent avec lui.

Steffen tient un répertoire des personnes avec lesquelles il travaille. Pour chaque personne rencontrée, il lance un script simple qui cherche à rassembler autant de métadonnées que possible à propos de cette personne. Le script appelle d'abord un moteur de recherche avec les mots-clés qu'il a choisis, par exemple « Jean-Paul Haton LORIA ». Le script reçoit une liste d'adresses URL de pages Web pertinentes pour le moteur de recherche.

Comme ces pages Web pour la plupart sont du HTML non-XHTML et, la plupart du temps, ne sont même pas du HTML valide, le script vérifie en premier si chaque page est un document XML bien formé. Si c'est le cas, le script appelle alors un agent connaissant GRDDL sur la page afin d'extraire les métadonnées qu'elle peut contenir.

Si la page n'est pas un document XML bien formé, le script continue en appelant un outil de nettoyage du HTML lequel récupère la page, la nettoie du mieux qu'il peut et en produit une version XHTML. Le script conserve ces versions XHTML localement, en s'assurant que l'adresse URI de base de chaque copie locale soit indiquée et, si ce n'est pas le cas, en leur attribuant comme adresse de base l'adresse URI de la page HTML initiale. Finalement, il appelle un agent GRDDL sur chaque copie locale afin d'en extraire les éventuelles métadonnées.

Utiliser GRDDL avec du HTML nettoyé

En utilisant son script, Steffen a découvert plusieurs cas de figures :

Bien qu'il soit possible d'utiliser GRDDL pour extraire du RDF de documents sources HTML non-XHTML, sauf bonne raison de le faire autrement, les auteurs de contenus devraient déployer GRDDL avec du XML valide tel que du XHTML. Dit simplement, il est plus facile aux auteurs de concéder une transformation depuis des documents XML où il n'y a aucune dépendance vis-à-vis d'un autre algorithme (tel qu'un algorithme de nettoyage). Quoique le nettoyage des documents sources puisse faire partie d'une approche pragmatique pour rassembler des données, le consommateur du RDF ne peut se fier aux transformations GRDDL que si elles ont été explicitement autorisées par l'auteur des documents.

Cf. également : JTidy, TagSoup.

Cas d'utilisation n° 9 - Pousser une transformation : Oceanic Consortium veut fournir des transformations de ses fichiers sans les altérer ou altérer leur schéma.

Ce cas d'utilisation utilise une caractéristique qui n'est pas incluse, et ne le sera pas, dans la version de travail GRDDL. Elle sera praticable dans le futur en utilisant les mécanismes décrits dans le projet de liaison d'en-tête HTTP lorsqu'il sera entériné par l'IETF en tant que document RFC.

La société Oceanic fait partie d'un consortium de compagnies aériennes qui ont un arrangement de groupe pour la fourniture et l'utilisation communes de pièces de rechange d'avions. La disponibilité et la nature des pièces à chaque implantation sont décrites par AirPartML, un dialecte XML internationalement reconnu et contraint par une série de schémas XML. Chaque membre du consortium publie la disponibilité de ses pièces de rechange sur le Web à l'aide de AirPartML. Ces descriptions peuvent ensuite être explorées et récupérées par les autres membres du consortium à la recherche de pièces de rechange pour la maintenance. Le protocole d'utilisation des descriptions impose le rejet des documents invalides. Oceanic souhaite également publier des descriptions RDF de leurs pièces et préférerait réutiliser les documents AirPartML produits par des systèmes ayant subis des tests de validation exhaustifs. Il n'existe aucune disposition dans les schémas existants pour des éléments d'extension et la modification des schémas pour tenir compte de RDF nécessiterait un effort de normalisation international prolongé, demandant vraisemblablement plusieurs années. C'est-à-dire que la société ne peut pas altérer ses documents XML pour utiliser GRDDL.

Utiliser GRDDL avec des profils et des transformations reliés depuis l'en-tête HTTP.

En utilisant la possibilité dans le projet de liaison d'en-tête HTTP de définir des champs Link et Profile pour une transformation GRDDL dans les en-têtes HTTP, le consortium Oceanic peut servir du RDF via GRDDL sans altérer ses documents XML.

Cf. également : Liaison d'en-tête HTTP


Glossaire

Embedded RDF
Un sous-ensemble de RDF incorporable dans XHTML ou HTML en utilisant des idiomes et attributs communs.
Agent connaissant GRDDL
Un agent connaissant GRDDL est un programme capable d'identifier les transformations GRDDL définies dans un document source et de les exécuter pour extraire le RDF.
Document source
Un document XML qui référence au moins une transformation GRDDL à utiliser par un agent connaissant GRDDL pour en extraire le RDF.
Transformation GRDDL
Une transformation GRDDL est un algorithme qui, appliqué à un document source conforme, permet à un agent connaissant GRDDL d'extraire le RDF de ce document.
Microformats
Un ensemble de formats de données ouverts simples bâti sur des standards existants largement adoptés.
RDFa
Une syntaxe pour exprimer des métadonnées RDF dans XHTML.
Document résultat
Un document obtenu en appliquant une transformation GRDDL à un document source.
SPARQL
Le protocole SPARQL (N.d.T. SPARQL Protocol And RDF Query Language) pour accéder aux magasins RDF.

Remerciements

Le rédacteur exprime sa gratitude aux membres suivants du groupe de travail pour leurs contributions :


Références

[Automating TR]
« Automatisation de la publication des rapports techniques », Dominique Hazaël-Massieux, 2006/01/05 20:34:13, http://www.w3.org/2002/01/tr-automation/.
[DCRDF]
« Expression des métadonnées Simple Dublin Core en RDF/XML », Eric Miller, Dan Brickley, 2002-07-31, http://dublincore.org/documents/dcmes-xml/.
[Embedded RDF]
« Embedded RDF », 2006-08-27 03:19 PM, http://research.talis.com/2005/erdf/.
[GRDDL Draft]
« Glaner les descriptions de ressources dans les dialectes de langages (GRDDL) », Dan Connolly, version de travail du W3C du 24 octobre 2006. Dernière version disponible à http://www.w3.org/TR/grddl/.
[GRDDL Primer Draft]
« Introduction à GRDDL », Ian Davis, version de travail du W3C du 2 octobre 2006. Dernière version disponible à http://www.w3.org/TR/grddl-primer/.
[Microformats]
« Microformat », 2006/08/30 11:05:31, http://microformats.org/ .
[OWL Overview]
« Vue d'ensemble du langage d'ontologies Web OWL », Deborah L. McGuinness et Frank van Harmelen, rédacteurs, recommandation du W3C, 10 février 2004, http://www.w3.org/TR/2004/REC-owl-features-20040210/. Dernière version disponible à http://www.w3.org/TR/owl-features/.
[RDF04]
« Introduction à RDF », Frank Manola, Eric Miller, rédacteurs, recommandation du W3C, 10 février 2004, http://www.w3.org/TR/2004/REC-rdf-primer-20040210/. Dernière version disponible à http://www.w3.org/TR/rdf-primer/ .
[RDFC04]
« Le cadre de description de ressources (RDF) : Concepts et syntaxe abstraite », G. Klyne, J. J. Carroll, rédacteurs, recommandation du W3C, 10 février 2004, http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/ . Latest version available at http://www.w3.org/TR/rdf-concepts/ .
[RDFa]
« Introduction à RDFa 1.0 », Ben Adida, Mark Birbeck, 16 mai 2006. Dernière version disponible à http://www.w3.org/TR/xhtml-rdfa-primer/
[RDFS]
« Le langage de description de vocabulaire RDF 1.0 : RDF Schema », Dan Brickley et R.V. Guha, rédacteurs, recommandation du W3C, 10 février 2004, http://www.w3.org/TR/2004/REC-rdf-schema-20040210/ . Dernière version disponible à http://www.w3.org/TR/rdf-schema/.
[RFC2731]
« RFC2731 : Codage des métadonnées Dublin Core dans HTML », J. Kunze, décembre 1999, http://www.ietf.org/rfc/rfc2731.txt.
[SPARQL]
« Le langage d'interrogation pour RDF SPARQL », Eric Prud'hommeaux et Andy Seaborne, rédacteurs, recommandation candidate du W3C du 6 avril 2006, http://www.w3.org/TR/2006/CR-rdf-sparql-query-20060406/ . Dernière version disponible à http://www.w3.org/TR/rdf-sparql-query/.

Journal des changements

Les changements depuis la version de travail du 2 octobre 2006 comprennent :


Ce document est un produit du groupe de travail GRDDL.


Valid XHTML 1.0 Transitional Valid CSS!