• Aucun résultat trouvé

2   Cadre théorique : ontologies, Web sémantique et conception centrée sur l’utilisateur 6

2.3   Présentation de l’objet central : l’ontologie 19

2.3.4   Présentation des standards relatifs aux ontologies 29

2.3.4.2   Présentation de RDF 33

De cette capacité élémentaire de l’URI à constituer une sorte d’« unité signifiante » des ressources numériques sur le web on peut commencer à échafauder des structures de signifiance plus complexes qui seront en mesure d’exprimer des faits élémentaires à propos des ressources. La grammaire descriptive que constitue le standard RDF, qui définit des

règles de composition pour construire des phrases simples de type Sujet-Prédicat-Objet, représente un premier pas en ce sens. On dira d’une telle phrase RDF de type S-P-O qu’elle forme un triplet RDF. Le triplet RDF constitue dès lors la représentation la plus élémentaire d’une connaissance. Comme l’ont très bien posé les pères de la philosophie analytique : est une connaissance (une proposition) tout ce qui est susceptible d’être vrai ou faux. Soumettre un mot seul à une telle épreuve de vérification ne fait pas de sens. Par exemple, on ne peut dire d’un mot comme « chapeau » qu’il est vrai ou faux. Pour ce faire, il faut prédiquer le mot avec un attribut (propriété) et fixer cette dernière avec une valeur

d’attribut. Ainsi, « le chapeau est de couleur rouge » est une affirmation digne de ce nom. De plus, une propriété intéressante de ce genre de structure conceptuelle triadique est la possibilité de les agréger et les représenter sous forme d’un réseau : les sujets et objets étant représentables par des nœuds que les prédicats peuvent relier en tant qu’arcs. C’est pourquoi dans la terminologie RDF, il y a souvent lieu de parler de graphe RDF.

Il est à remarquer, avant de poursuivre, que dans un graphe RDF il est tout à fait possible pour un sujet d’être l’objet d’un autre triplet et/ou d’un objet de devenir le sujet d’un autre triplet (voir Figure 15).

Figure 15 - Vue abstraite d'un graphe RDF

Une manière plus standard de penser le triplet RDF est sous la forme de table : la ligne représente un sujet, la colonne représente une propriété et la cellule la valeur (objet) de la propriété. (Tim Berners-Lee ; voir Figure 16). L’extraction de triplets RDF d’à partir d’une

table, ou à l’inverse la visualisation d’une banque de triplets RDF sous forme de table, fonctionne selon ce principe de conversion.

Figure 16 Représentation d’un triplet RDF sous forme de table

Une des principales forces de cette structure par triplets de RDF, par rapport à une base de données classique de type relationnelle, est que la fusion de deux ou plusieurs bases de connaissances RDF peut se faire par la simple agrégation de leurs triplets (pour autant qu’il n’y ait pas deux ou plusieurs nœuds vides ayant un même identificateur).

Pour exemplifier le tout, prenons maintenant un morceau quelconque de connaissance : « le document page.html a pour auteur Michel et a pour thème les ontologies ». En RDF, on pourrait exprimer cette description par les deux triplets suivants :

(page.html, aPourAuteur, Michel) et (page.html, aPourTheme, Ontologie)

Ce qui correspondrait au graphe élémentaire suivant :

Tel que susmentionné, comme RDF a été conçu originalement pour décrire des ressources web, sa syntaxe formelle utilise généralement XML (on appelle alors cette forme

RDF/XML). Mais cette dernière devient vite fastidieuse à lire pour les agents humains. Pour rendre un document RDF plus accessible, le W3C propose des notations plus abstraites que sont N3 et N-Triples (N-Triples étant un sous-ensemble de N3). Grosso modo, N-Triples permet de faire un listage simple de triplets RDF. En se rappelant que la composante signifiante élémentaire est l’URI, et en introduisant que RDF/XML accepte des littéraux13 pour objets. Voici ce qu’aurait l’air notre exemple en N-Triples :

<http://mon_domaine.ca/page.html> <http://mon_domaine.ca/Vocabulaire#aPourAuteur> "Michel".

<http://mon_domaine.ca/page.html> <http://mon_domaine.ca/Vocabulaire#aPourTheme> "Ontologie".

Alors qu’en notation RDF/XML14 il s’écrirait plutôt :

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:local="http://mon_domaine.ca/Vocabulaire#">

<rdf:Description rdf:about="http://mon_domaine.ca/page.html"> <local:aPourAuteur>Michel</local:aPourAuteur>

<local:aPourTheme>Ontologie</local:aPourTheme> </rdf:Description>

</rdf:RDF>

13 Un littéral correspond à une entité exprimée directement par une chaine de caractères. Au niveau du RDF,

les URI peuvent être mises en relation avec des littéraux – ce qui permet d’établir des correspondances entre l’identification formelle d’entités sous forme d’URI et l’identification en langage naturel de ces mêmes entités. Dans notre exemple, les littéraux sont employés dans leurs formes de littéral simple (nommée aussi

forme lexicale), mais auraient pu être typifier avec un datatype XML (voir annexe 4). Concrètement, le typage

d’un littéral consiste en l’association d’une chaine de caractères et d’un URI représentant le type de la chaine. Les datatypes XML sont des contraintes définissant une extension d’XML, le standard XML Schema, et permettent d’orienter le décodage des chaines de caractères. Un exemple de littéral typé aurait été d’ajouter à notre graphe une information quant à la date de création de page.html. Pour ce faire on ajouterait une relation spécifiant dateCreation dont la valeur serait le littéral typé "2009-02-04"^^xml:date.

14 Des balises XML viennent encadrer la formulation des phrases RDF pour les rendre compréhensible à la

Avant de poursuivre plus loin, il est important de noter que RDF, ainsi que les couches de modélisation qui lui sont supérieures, fonctionnent sur l’hypothèse d’un monde ouvert. Contrairement à une base de données de type relationnelle, l’absence d’une assertion n’est donc pas signifiante. Autrement dit, la déclaration que Michel est l’auteur de page.html n’implique pas que page.html n’a qu’un seul auteur, mais bien plutôt que page.html a au moins un auteur. À l’inverse, si on déclarait que David est aussi auteur de page.html, sans préciser que David et Michel sont deux personnes différentes, la base de connaissances consignant ces assertions ne pourrait pas déduire que page.html a deux auteurs puisque Michel et David pourraient être deux noms d’une même personne.

Dans cette forme, RDF n’impose que très peu de contraintes à la description des ressources. En ce sens, bien que très flexibles (possibilité d’agréger n’importe quoi, n’importe comment à la description d’une ressource), les descriptions dans ce format sont relativement platoniques et sans grande profondeur sémantique (faible degré de hiérarchisation des descriptions). Pour pallier cette lacune (qui en devient une que dans l’optique du besoin d’une plus grande expressivité), un vocabulaire élémentaire fut développé : RDFS (RDF Vocabulary Language). Néanmoins, le modèle RDF offre quelques ressources terminologiques élémentaires pour donner un peu de relief sémantique à la description des ressources. Une des plus importantes est la relation de typification, rdf :type (http://www.w3.org/1999/02/22-rdf-syntax-ns#type), qui permet l’identification du type d’une ressource. Par exemple on pourra exprimer que :

Aussi, RDF permet de définir des conteneurs et des collections pour lister de différentes manières des items et de réifier des triplets pour pouvoir faire des assertions à leurs propos (voir Annexe 1).