Institut numerique

2.1 Les ontologies

2.1.1 Définition

Une ontologie en informatique est un ensemble structuré de concepts permettant de donner un sens aux informations [22]. Son objectif premier est de modéliser un ensemble de connaissances dans un domaine donné ; de plus, les ontologies informatiques sont des outils qui permettent précisément de représenter un corpus de connaissances sous une forme utilisable par un ordinateur.

Les ontologies sont employées dans l’intelligence artificielle, le Web sémantique, le génie logiciel, l’informatique biomédicale et l’architecture de l’information comme une forme de représentation de la connaissance au sujet d’un monde ou d’une certaine partie de ce monde. Les ontologies décrivent généralement :

– Individus : les objets de base,
– Classes : ensembles, collections, ou types d’objets,
– Attributs : propriétés, fonctionnalités, caractéristiques ou paramètres que les objets peuvent posséder et partager,
– Relations : les liens que les objets peuvent avoir entre eux,
– Évènements : changements subis par des attributs ou des relations.

D’après Gruber, cinq critères permettent de mettre en évidence des aspects importants d’une ontologie [22] :

1. La clarté : La définition d’un concept doit faire passer le sens voulu du terme, de manière aussi objective que possible (indépendante du contexte). Une définition doit de plus être complète (c’est-à-dire dé nie par des conditions à la fois nécessaires et suffisantes) et documentée en langage naturel.

2. La cohérence : Rien qui ne puisse être inféré de l’ontologie ne doit entrer en contradiction avec les définitions des concepts (y compris celles qui sont exprimées en langage naturel).

3. L’extensibilité : Les extensions qui pourront être ajoutées à l’ontologie doivent être anticipées. Il doit être possible d’ajouter de nouveaux concepts sans avoir à toucher aux fondations de l’ontologie.

4. Une déformation d’encodage minimale : Une déformation d’encodage a lieu lorsque la spécification influe la conceptualisation (un concept donné peut être plus simple à définir d’une certaine façon pour un langage d’ontologie donné, bien que cette définition ne corresponde pas exactement au sens initial). Ces déformations doivent être évitées autant que possible.

5. Un engagement ontologique minimal : Le but d’une ontologie est de définir un vocabulaire pour décrire un domaine, si possible de manière complète ; ni plus, ni moins. Contrairement aux bases de connaissances par exemple, on n’attend pas d’une ontologie qu’elle soit en mesure de fournir systématiquement une réponse à une question arbitraire sur le domaine. Une ontologie est la théorie la plus faible couvrant un domaine ; elle ne dé nit que les termes nécessaires pour partager la connaissance liée à ce domaine.

Il existe des outils informatiques permettant de construire une ontologie à partir d’un corpus de textes. Ces outils parcourent le texte à la recherche de termes récurrents ou définis par l’utilisateur, puis analysent la manière dont ces termes sont mis en relation dans le texte (par la grammaire, et par les concepts qu’ils recouvrent et dont une définition peut être trouvée dans un lexique fourni par l’utilisateur). Le résultat est une ontologie qui représente la connaissance globale que contient le corpus de texte sur le domaine d’application qu’il couvre.

2.1.2 Ontologie et représentation des connaissances

Le problème posé par la représentation des connaissances est de formaliser dans un langage formel de représentation les connaissances permettant de traiter le problème à résoudre.

Traditionnellement, un langage formel se dé nit à partir d’un alphabet comprenant des symboles de variables, des symboles de fonction et des symboles de prédicat et des symboles d’opérateurs logiques (connecteurs), des quantificateurs, etc.

Ces symboles sont des primitives à partir desquelles toutes les formules bien formées du langage sont construites selon des règles de construction syntaxique dé nies par le langage lui-même. Mais il ne suffit pas de préciser comment construire les formules du langage, il faut en outre préciser quelle signification ou sémantique elles peuvent recevoir, pour leur associer des connaissances du domaine.

C’est pourquoi un langage formel se voit pourvu d’une sémantique formelle précisant quelles significations associer aux formules en fonction des significations des symboles qu’elles contiennent et de la manière dont ils sont assemblés.

Il faut distinguer les primitives logiques des primitives non logiques. Les primitives logiques ont leur sémantique spécifiée par le langage formel lui-même, et possèdent une signification indépendante du domaine. C’est en quelque sorte une sémantique intégrée dans le langage. Les primitives non logiques possèdent une signification dépendante du domaine : non spécifiée par le langage, elle doit être explicitement déterminée en fonction du domaine. Ainsi, la sémantique des connecteurs logiques et de la composition des symboles de fonction avec les symboles de variables est propre au langage et ne dépend pas de ce que les symboles représentent et donc du domaine concerné. Par exemple, la sémantique formelle associée au langage spécifie les tables de vérité des connecteurs une fois pour toutes. En revanche, les symboles de fonction et de prédicat n’ont pas de sémantique dé nie par le langage. Quelle fonction représente un symbole de fonction, quel prédicat représente un symbole de prédicat n’est pas spécifié par la définition du langage formel.

2.1.3 Quelques langages d’ontologie

Le RDF

RDF (Resources Description Framework) est un langage servant à décrire des ressources. Son élément constitutif de base est la formulation d’un triplet se composant d’une entité (appelée ressource en terminologie web), d’une propriété et d’une valeur (qui peut être une autre ressource). La formulation est essentiellement la définition d’un fait P (a,b) où P est une propriété binaire, et (a,b) sont des ressources. Dans la perspective du web sémantique, RDF dé nit une couche située au-dessus de XML. De ce fait, RDF a été doté d’une syntaxe XML.

RDF est indépendant du domaine, en d’autres mots, il ne pose aucun présupposé quant à un domaine spécifique. C’est donc à l’utilisateur que revient le rôle de définir sa propre terminologie dans un langage schéma appelé RDF Schéma (RDFS). Constitutivement, RDFS est un langage d’ontologies primitif (ou naturel) proposant les caractéristiques suivantes :

– Organisation des objets en classes (professeur, membre du personnel, étudiant, cours, cours pour étudiants) et propriétés binaires (enseigne, étudie, travaille) ;

– Sous-classes (tous les professeurs sont des membres du personnel) et relations des sous-propriétés (tout chef de département fait partie de ce département) ;

– Restrictions de domaine (seul le personnel académique peut enseigner) et d’étendue (une personne ne peut qu’enseigner) au niveau des propriétés. RDF et RDFS fournissent les langages de base pour le web sémantique.

OWL

La puissance d’expression de RDF et de RDFS est volontairement très limitée : RDF est (en gros) limité à des attributs binaires et RDFS est (toujours en gros) limité aux hiérarchies de sous-classes et de sous-propriétés, avec restrictions de domaine et d’entendue des propriétés.

Il existe cependant plusieurs cas particuliers d’utilisation du web sémantique qui nécessitent une plus grande expressivité. Ce type d’extensions comprend :

– La disjonction (par exemple : une personne ne peut être à la fois professeur et membre du personnel administratif) ;
– Les combinaisons booléennes des classes (par exemple : le personnel est l’ensemble du corps académique, du personnel administratif et du personnel d’assistance technique);
– Les restrictions de cardinalité (par exemple : un service ne peut avoir qu’un seul chef) ;
– Les caractéristiques spéciales des propriétés (par exemple : “supérieur de” est transitif, “enseigne” et ” reçoit des cours de ” sont des propriétés inverses).

OWL a été élaboré comme nouveau langage d’ontologies standard pour le web. Il repose sur RDFS et tente de trouver un équilibre entre puissance d’expression et support logique efficace. La logique (le raisonnement) est un facteur important parce qu’elle permet de :

– Vérifier la cohérence d’une ontologie et des connaissances ;
– Vérifier la présence de relations non voulues entre classes ;
– Classer automatiquement les instances en classes.

Dans notre cas, nous allons utiliser la méthode traditionnelle manuelle qui consiste à lire le corpus de textes et d’en ressortir les termes maîtres couramment utilisés pour définir l’ontologie nous permettant de pouvoir définir les services nécessaires pour la mise en œuvre de notre environnement numérique de travail.

Page suivante : 2.2 Les environnements numériques de travail

Retour au menu : WEB SERVICES : ETUDE ET CONCEPTION D’UNE PLATEFORME DE SERVICES POUR UN ENVIRONNEMENT NUMÉRIQUE DE TRAVAIL D’UNIVERSITÉ