Démystification #4: RDF et OWL, l’avenir technologique du web

novembre 19th, 2007 · 5 Comments ·

Chose promise, chose due, voici l’article de démystification des deux technologies web qui seront les pierres angulaires du web 3.0, rien que ça! Les technologies web se compliquent d’année en année pour fournir au final de nouveaux outils et une meilleur expérience utilisateur. XHTML, CSS, RSS et AJAX en sont les meilleurs exemples. Je vais cependant essayer de rendre accessible cet article aux néophytes en expliquant simplement ce que sont RDF et OWL. Pour bien aborder cet article je vous recommande de relire mon introduction au web sémantique. Il est également conseillé de savoir ce qu’est l’HTML et l’XML serait un plus 😉

RDF et OWL sont deux technologies complémentaires ayant des objectifs différents. Nous allons commencer par RDF, qui signifie Resource Description Framework. Un fichier RDF est un fichier XML contenant des informations structurées. Voici un exemple de fichier RDF contenant toutes les informations me concernant. Ce fichier contient également la liste des personnes que je connais. Mes amis sont identifiés par leur e-mail, mais ils pourraient tout aussi bien être identifiés par un lien vers leur fichier RDF perso. Je vous propose de faire une première pause sur ce fichier pour comprendre les possibilités liées à ce format. Tout d’abord on s’aperçoit que les balises utilisent un schéma RDF spécifique définit par le préfix FOAF. Exemple: <foaf:nom_de_la_balise>. Le nom de la balise n’a au final aucune importance s’il n’est pas lié à un schéma qui en définit le sens.

C’est là qu’OWL intervient. OWL signifie Web Ontology Language. Pour bien commencer voici la définition d’une ontologie sur wikipedia:

En informatique et en science de l’information, une ontologie est un ensemble structuré de concepts permettant de donner un sens aux informations. Elle est aussi un modèle de données qui représente un ensemble de concepts dans un domaine et les rapports entre ces concepts. Elle est employée pour raisonner au sujet des objets dans ce domaine.

Le fichier RDF n’est donc au final que le lieu de stockage de l’information. Le sens de chaque balise étant défini de façon externe dans un fichier OWL séparé. Je vous invite à jeter un oeil au fichier OWL définissant nos balises préfixées FOAF (si vous tombez sur une page blanche, utilisez le clic-droit pour afficher la source). Ce fichier définit de façon technique cette page, vous préférerez nettement lire cette dernière (même si en anglais). Ce fichier OWL définit de façon très précise les relations entre chaque objet et chaque propriété. Voici quelques exemples:

  • Une personne peut-elle avoir deux pères ? NON.
  • Une personne doit-elle avoir un pays ? OUI.
  • Un homme peut-il avoir deux femmes ? OUI si il vit en Gambie, NON si il est français.
  • Etc.

La description des objets est une chose, les lier en est une autre. RDF comme OWL héritent des fondamentaux des technologies du W3C. L’utilisation de l’XML comme support et l’utilisation des URIs (Uniform/Unique Resource Identifier) comme identifiant. Chaque objet ayant un identifiant unique il devient très facile de les lier les uns aux autres. Revenons à l’exemple de tout à l’heure avec le fichier RDF me décrivant. Imaginons que je rentre dans mon fichier RDF une balise qui décrit ma voiture. Je pourrais très bien ajouter un lien pointant sur le fichier RDF décrivant le model de ma voiture. Ce fichier pourrait se trouver sur le site internet du constructeur. Une fois que toutes ces informations sont liées nous sommes capables d’exécuter la requête suivante: « Quel est la taille de la voiture de l’auteur du blog nicolas.cynober.fr/blog/ ? ».

Je sais, cette requête ne sert à rien, mais imaginez les possibilités qui s’offrent à nous. Le Web se transforme alors en une gigantesque base de données ouverte ou chacun est libre de créer des données (RDF) et des ontologies (OWL) interconnectées. Voici quelques exemples d’ontologies:

  • FOAF (Friend-of-a-friend): Décrit une personne et ses connaissances.
  • RSS (RDF Site Summary): Décrit un flux d’information (Et oui vous utilisez déjà RDF sans le savoir).
  • DC (Dublin Core): Ontologie très généraliste.
  • Mais vous pouvez aussi trouver des ontologies décrivant toutes les espèces d’oiseaux ou les caractéristiques d’un médicament. N’importe qui peut créer et publier une ontologie.

Ou en sommes nous à l’heure actuelle ? A la différence de SVG et SMIL, RDF et OWL ne sont pas dépendant d’une technologie tierce (comme un browser), tout est déjà là. Les technologies sont matures et les premières applications commencent à naitre. Pour l’instant RDF et OWL sont principalement utilisés dans les domaines de haute technologie et tout particulièrement dans le monde des sciences médicales (recherches, médicaments, etc.). Les ontologies sont extrêmement appréciées dans les systèmes d’information ayant une logique métier complexe. Pour ce qui est du Web, les choses avancent plus doucement. Le web utilise majoritairement l’XHTML pour diffuser du contenu, même si aujourd’hui une partie de cette information est échangée avec d’autres formats comme RSS ou SOAP. Il y a donc deux possibilités d’utilisation pour RDF. La première est la création de fichiers RDFs complémentaires aux pages webs ou alors d’embarquer directement RDF dans les pages XHTML, on parle alors d’RDFa (ambed RDF), standardisé il y a peu par le W3C. Dans tous les cas les fichiers OWL restent indépendants. Voici quelques sites utilisant RDF et qu’il faudra suivre de près: Freebase (sorte de wikipedia sémantisé), Powerset (moteur de recherche), TrueKnowledge (moteur de recherche) et bien sûre Twine (sémantisation de vos données personnelles).

Voila, je pense que ca suffit pour le moment et que vous entrevoyez l’objectif de ces technologies. Je ne suis pas vraiment rentré dans les détails et j’ai essayé de garder ça le plus simple possible, quitte à froisser les fanatiques du web sémantique. Le web 2.0 était principalement une révolution au niveau des usages, le web 3.0 reposera sur des avancées technologiques. Le web sémantique n’est certes qu’une des facettes du web 3.0, une facette cachée aux utilisateurs, mais qui au final sera ressentie de tous. La propagation du web sémantique se heurte à un environnement encore très systémique, la libération viendra-t-elle d’une première killer-application ? Qui a dit Twine ?

Tags: Démystification · FOAF · OWL · RDF · RDFa · Twine · W3C · Web 2.0 · Web 3.0 · Web Sémantique


5 responses so far ↓