Une ontologie en informatique est un ensemble structuré de concepts permettant de donner un sens aux informations.
Les concepts sont organisés dans un graphe dont les relations peuvent être :
L'objectif premier d'une ontologie est de modéliser un ensemble de connaissances dans un domaine donné.
À l'origine, l'ontologie est une notion philosophique, et on considérait que l'étude de l'ontologie était une partie de la métaphysique (métaphysique générale).
L’étymologie renvoie à la " théorie de l’existence ", c’est-à-dire la théorie qui tente d’expliquer les concepts qui existent dans le monde et comment ces concepts s’imbriquent et s’organisent pour donner du sens.
Contrairement à l'être humain, la connaissance pour un système informatique se limite à la connaissance qu'il peut représenter.
Chez l'être humain, les connaissances représentables (c'est-à-dire l'univers du discours) sont complétées par des connaissances non exprimables (sensations, perceptions, sentiments non verbalisables, connaissances inconscientes, etc.). Ces éléments non représentables participent pourtant aux processus de raisonnement et de décision, qui sont des processus cognitifs en gestion des connaissances. Les performances cognitives d'un agent informatique vont donc en partie reposer sur le champ des représentations auquel il aura accès, c'est-à-dire concrètement au champ des représentations qui aura été formalisé.
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.
Une des définitions de l'ontologie qui fait autorité est celle de Gruber (cf. références) :
Cette définition s'appuie sur deux dimensions :
C'est une base de formalisation des connaissances. Elle se situe à un certain niveau d'abstraction et dans un contexte particulier.
C'est aussi une représentation d'une conceptualisation partagée et consensuelle, dans un domaine particulier et vers un objectif commun. Elle classifie en catégories les relations entre les concepts.
D'après Gruber, cinq critères permettent de mettre en évidence des aspects importants d'une ontologie :
Parallèlement à cette définition assez théorique de ce que représente une ontologie, une autre définition, plus opérationnelle, peut être formulée ainsi :
Cette définition rend possible l'écriture de langages destinés à implémenter des ontologies.
Pour construire une ontologie, on dispose d'au moins trois de ces notions :
Pour modéliser une ontologie, on utilisera ces outils :
Par exemple, pour décrire les concepts entrant en jeu dans la conception de cartes électroniques, on pourrait définir l'ontologie (simplifiée ici) suivante :
Le langage de spécification est l'élément central sur lequel repose l'ontologie.
La plupart de ces langages se basent sur la logique du premier ordre, et représentent donc les connaissances sous forme d'assertion (sujet, prédicat, objet). Parmi les formalismes les plus employés se basant sur la logique des prédicats, on retrouve des langages comme N3 ou N-Triple.
On peut aussi évoquer le langage DEF-*.
Par ailleurs, dans le cadre de ses travaux sur le Web sémantique, le W3C a mis en place en 2002 un groupe de travail dédié au développement de langages standards pour modéliser des ontologies utilisables et échangeables sur le Web. S'inspirant de langages précédents comme DAML+OIL et des fondements théoriques des logiques de description, ce groupe a publié en 2004 une recommandation définissant le langage OWL (Web Ontology Language), fondé sur le standard RDF et en spécifiant une syntaxe XML. Plus expressif que son prédecesseur RDFS, OWL a rapidement pris une place prépondérante dans le paysage des ontologies et est désormais, de facto, le standard le plus utilisé.
Les éditeurs d'ontologie suivants sont gratuits et téléchargeables
Avec l'émergence du marché des technologies du Web sémantique, on peut noter l'apparition depuis 2005 d'outils logiciels proposés par des éditeurs commerciaux. On peut citer:
Il existe d'autre part 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. Le projet WordNet (voir les liens) en est l'exemple le plus important.
En Europe, la norme qui fait actuellement l'objet d'une attention particulière est une norme qui permet notamment de décrire les ontologies sur le patrimoine culturel immatériel (bibliothèques, musées et archives,...). Ses références exactes sont :
ISO 21127 : ontologies nécessaires à la description des données concernant le patrimoine culturel