Brevet FR2880714A1 — publié le 20060714

PROCÉDÉ ET SYSTÈME DE CODAGE SOUS FORME D'UN TREILLIS D'UNE HIÉRARCHIE DE CONCEPTS APPARTENANT À UNE ONTOLOGIE L'invention concerne un procédé et un système de codage, sous forme d'un treillis, d'une hiérarchie de concepts appartenant à une ontologie. Une ontologie est une entité formée par un ensemble de connaissances, de faits et de règles relatifs à un domaine donné, domaine scientifique, culturel, administratif, savoir faire industriel ou commercial ou autre. Les connaissances, faits et règles précités peuvent inclure une hiérarchie de concepts, lesquels représentent des concepts entre un concept vide, engendré par un prédicat qui n'a pas de sens dans l'ontologie considérée, et un concept universel, permettant de concevoir tous les concepts incorporant l'ontologie considérée. Outre la hiérarchie de concepts précitée, une ontologie peut communément comprendre des prédicats incluant des entités telles que concept, rôle ou prédicat ordinaire. Pour assurer la représentation, à partir d'un codage, d'une hiérarchie de concepts d'une ontologie donnée, la méthode la plus aboutie connue actuellement a été proposée par Monsieur Alain Bidault, confer Thèse n 6932 présentée pour obtenir le grade de docteur es Sciences de l'Université Paris XI Orsay spécialité Informatique par cet auteur, sujet: Affinement de Requêtes posées à un Médiateur au sein du système PICSEL, Paris juillet 2002. Selon la méthode précitée, les informations contenues dans une ontologie donnée sont traduites par des prédicats, lien, association sémantique ou logique entre atomes signifiants pouvant être associés à différentes instances, valeurs spécifiques signifiantes d'une variable ou d'un atome. Un processus de saturation de connaissances, règles, disjonctions, inclusions définitions de l'ontologie permet de calculer les informations implicites au moyen d'un raisonneur, défini pour un langage ou une logique de description précis. Selon la méthode précitée, un concept est un prédicat unaire (n'acceptant qu'un seul argument) avec lequel il est possible de construire des formules logiques de description. Une ontologie comportant un ensemble de concepts et une hiérarchie de concepts peut être représentée sous forme d'un treillis. Un treillis est alors défini comme une relation d'ordre partiel pour laquelle tout couple d'éléments ou concepts (el, e2) possède un élément eS supérieur à un élément eI inférieur commun selon les relations: et eIete2>eI. Dans ces relations, les symboles > et L'ordre est partiel, car il n'est pas défini pour tous les éléments. Certains éléments sont hiérarchiquement inférieurs à d'autres, mais certains éléments ne sont pas comparables à d'autres. Un élément peut avoir plusieurs éléments hiérarchiquement supérieurs et inférieurs. La structure de treillis est plus riche qu'une structure d'arbre. En effet, un arbre ne permet pas qu'un élément ait plusieurs pères. Or, si aucun élément ou concept ne peut avoir plusieurs pères, la seule possibilité d'avoir un élément inférieur commun est d'imposer qu'un concept n'ait pas plus d'un fils. On obtient dans ces conditions une hiérarchie en ligne verticale de peu d'intérêt. Un exemple de treillis de concepts décrit en logique de description est donné en relation avec la figure 1, exemple dans lequel la relation d'ordre du treillis est la relation d'inclusion c 1cAOEBOCcDcT; IcGOT; 1cFcEcC; AcE FcB. En outre, ainsi que représenté en figure 1, une flèche allant de Cl à C2 indique que Cl est inclus dans C2. En référence à la figure 1 a et aux relations précédentes, les relations d'ordre ou de hiérarchie s'énoncent relativement au concept A: (i) A est le fils de B et E; (ii) B est le père de A et F; (iii) B, E, A et F sont descendants de C; (iv) B, E, C et D sont les généralisants de A; (v) T est le concept universel: (vi) 1 est le concept vide. La relation d'ordre ou de hiérarchie contient implicitement toutes les relations obtenues par transitivité de la relation d'inclusion telles que pour le concept B: BcD; BcT. Dans la méthode décrite par le mémoire de thèse précité, un processus de codage est défini pour des noms de prédicats unaires (un seul argument) apparaissant dans des règles simples de la forme Predicatl (x) -' Predicat2(x). Les prédicats précités sont alors comparables à des concepts apparaissant en logique de description dans une hiérarchie de concepts sous la forme Predicat 1 cPredicat2. Les concepts vide 1 et universel T n'apparaissent toutefois pas explicitement dans la hiérarchie, mais sont supposés présents comme spécialisant des concepts les plus spécialisés respectivement comme généralisant des concepts les plus généraux. Du fait du format des règles à l'origine de la hiérarchie codée, le codage proposé dans le document de thèse précité ne prend en compte que les concepts primitifs, encore désignés concepts de base, à savoir ceux qui n'ont pas de définition sémantique et qui ont pour seule sémantique celle associée à leur position dans le treillis des concepts, soit en définitive au dessus et/ou en dessous d'autres concepts. L'originalité du codage proposé réside dans l'existence d'un identifiant pour chaque concept constitué d'un ou plusieurs labels, en labellisant une suite de caractères alphanumériques compris entre a et z et entre 0 et 9. Chaque label est unique sur le treillis de concepts et correspond à l'existence d'un chemin entre le concept considéré C et le concept universel T au sommet du treillis. Le concept universel T et le concept vide 1 n'ont toutefois pas d'identifiant. En référence à la figure 1 a, on constate que, relativement au concept A, il existe deux chemins permettant d'aller du concept A au concept universel T, ABCD et AECD. Ceci justifie la présence de deux labels dans l'identifiant du concept A, soit un label par chemin. Le mode de codage décrit dans le mémoire de thèse précité permet ainsi de situer les concepts primitifs au sein d'un treillis de concepts, sans toutefois qu'il soit nécessaire de parcourir le treillis constitué. La position d'un concept primitif dans le treillis précité est ainsi contenue dans l'identifiant de ce dernier, ce qui permet de raisonner à moindre coût sur un ensemble de concepts pour effectuer par exemple des tests de subsomption entre deux éléments ou un calcul de ppcg pour plus petit commun généralisant. On rappelle ici en outre qu'un test de subsomption consiste à tester l'inclusion d'un concept dans un autre concept. Les résultats obtenus sont conditionnés par l'absence de redondance dans le treillis de concepts et par le respect de la contrainte d'unicité du nom de désignation du concept. Toutefois la mise en oeuvre et l'application du mode de codage précité n'est pas envisageable directement pour une hiérarchie de concepts appartenant à une ontologie comportant des concepts définis. On rappelle que, contrairement aux concepts primitifs, encore désignés concepts de base, les concepts définis sont décrits par des expressions de logique de description, auxquelles ils sont équivalents. En effet, le treillis obtenu, lors de la prise en compte de concepts définis correspond à une relation d'ordre plus large que la relation d'ordre du treillis représentant les seuls concepts primitifs, soit la seule inclusion c. La présente invention a pour objet de remédier aux limitations de la méthode de codage précitée, en vue de généraliser cette dernière. En particulier, un objet de la présente invention, est la mise en oeuvre d'un procédé et d'un système de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie, comportant des concepts primitifs et des concepts définis satisfaisant à une relation d'ordre partiel obtenu par calcul de subsomption entre deux éléments ou noeuds du treillis représentatifs chacun d'un concept primitif ou défini. Un autre objet de la présente invention est en outre la mise en oeuvre d'un procédé et d'un système de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie permettant l'introduction de synonymes de concept primitif et/ou défini, tout en gardant l'unicité de nom de concept pour tous les traitements. Un autre objet de la présente invention est également la mise en oeuvre d'un procédé et d'un système de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie permettant de détecter et de neutraliser les redondances de codage révélées par les test de subsomption appliqués aux concepts primitifs et/ou définis constitutifs du treillis. Un autre objet de la présente invention est enfin la mise en oeuvre d'un procédé et d'un système de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie comportant des concepts primitifs et des concepts définis, le treillis obtenu permettant de positionner chaque concept primitif ou défini de l'ontologie en un noeud du treillis, l'ensemble des avantages liés au codage du treillis obtenu étant étendu à l'ensemble des concepts constitutifs de l'ontologie. Le procédé de codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie, constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine, cette hiérarchie de concepts comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique, objet de l'invention, est remarquable en ce qu'il consiste au moins à attribuer à chaque concept primitif et au noeud du treillis associé à ce dernier un identifiant formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribué pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis, chaque suite de nombres entiers définissant un chemin d'accès entre ledit concept primitif considéré et ledit concept universel par l'intermédiaire des concepts primitifs pères successifs, ledit identifiant incluant toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un desdits concepts primitifs pères audit concept universel, auxquelles est ajouté un nombre entier représentatif dudit concept primitif considéré. L'invention couvre en outre, une structure de données représentative, sous forme codée d'un treillis de concept, d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine, cette hiérarchie de concepts comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique. Elle est remarquable en ce que ce treillis comporte au moins une pluralité de noeuds, à chaque noeud du treillis étant associé un concept primitif et un identifiant associé à chaque noeud du treillis et du concept primitif correspondant. L'identifiant est formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribuée pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis. Chaque suite de nombres entiers définit un chemin d'accès entre le concept primitif considéré et le concept universel, par l'intermédiaire de concepts primitifs pères successifs. L'identifiant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un des concepts primitifs pères au concept universel, auxquelles est ajouté un nombre entier représentatif du concept primitif considéré. L'invention couvre également la structure de données précédente dans laquelle, pour une hiérarchie de concepts comportant en outre au moins un concept défini vérifiant une même relation d'ordre entre un concept universel et un concept vide, chaque concept défini possédant une définition sémantique, le treillis comporte en outre un noeud associé à chaque concept défini et un identifiant associé à chacun des noeuds associé à un des concepts définis. L'identifiant est formé par au moins une suite de nombres entiers, définissant chacune un chemin d'accès entre le concept défini considéré et le concept universel par l'intermédiaire de concepts primitifs et/ou définis père successifs. L'identifiant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès à l'un des concepts primitifs et/ou définis pères au concept universel, auxquelles est ajouté un nombre entier représentatif du concept défini considéré. Le dispositif de codage sous forme d'un treillis de concepts d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique, objet de l'invention, comprend une unité centrale de traitement et une mémoire de travail. Il est remarquable en ce qu'il comporte au moins un module d'acquisition et de lecture de la hiérarchie de concepts sous forme d'un fichier numérique accessible au moins en lecture, un module de calcul et d'attribution à chaque concept primitif et au noeud du treillis associé à ce dernier d'un identifiant formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribué pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis. Chaque suite de nombres entiers définit un chemin d'accès entre le concept primitif considéré et le concept universel par l'intermédiaire des concepts primitifs pères successifs. L'identifiant inclue toutes les suites de nombres entiers définissant chacune un chemin d'accès entre l'un des concepts primitifs pères et le concept universel, auxquelles est ajoutée un nombre entier représentatif du concept primitif considéré. Il comporte enfin des ressources de mémorisation du treillis de concepts et de chaque identifiant associé à un noeud de ce treillis de concepts. Le dispositif de codage, objet de l'invention, est en outre remarquable en ce que, pour une hiérarchie de concepts appartenant à une ontologie comportant en outre des concepts définis, il comporte en outre un module de calcul d'une saturation de la hiérarchie de concepts par exécution de test de subsomption des concepts définis. Ceci permet, d'une part, d'introduire les concepts définis dans le treillis de concepts primitifs, pour engendrer un corps de treillis de concepts, et, d'autre part, de coder le corps de treillis de concepts, incluant les concepts primitifs et les concepts définis sous forme d'un treillis de concepts, par attribution à chaque concept défini et au noeud du corps de treillis de concepts associé à ce dernier d'un identifiant compatible avec tout identifiant attribué à un ou plusieurs concepts primitifs. Le procédé et le système de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie, objets de l'invention, trouvent application à la mise en oeuvre de bases de connaissances offrant des services de consultation directs ou en ligne par traitement coopératif, en particulier à des bases de connaissances ou de données consultables sur INTERNET et fondées sur des architectures dites médiateur ou entrepôts, tels que sites comparatifs de produits ou services, agences de voyage offrant des services de recherche parmi plusieurs fournisseurs de prestations comparables, voyages, trajets, séjours ou autres. Ils seront mieux compris à la lecture de la description et à l'observation des dessins ci-après dans lesquels, outra la figure la relative à une hiérarchie de concepts primitifs appartenant à une ontologie représentée sous forme d'un treillis de concepts primitifs de l'art antérieur, la figure lb représente, à titre illustratif, les étapes essentielles du procédé de codage sous forme d'un treillis d'une hiérarchie de concepts primitifs appartenant à une ontologie dans un module de réalisation non limitatif, conforme à l'objet de la présente invention; la figure 2 représente, à titre illustratif, les étapes essentielles de mise en oeuvre du procédé, objet de l'invention, appliqué à une hiérarchie de concepts comportant des concepts primitifs et au moins un concept défini; - la figure 3 représente, à titre illustratif, les étapes essentielles d'un détail de mise en oeuvre d'une procédure de détection de synonymes entre un premier concept primitif ou défini et un deuxième concept défini du procédé objet de l'invention illustré en figure 2; la figure 4a représente, à titre illustratif, un exemple de mise en oeuvre d'un processus de détection et de suppression des redondances liées à la propriété de transitivité de la subsomption; la figure 4b représente, à titre illustratif, les étapes essentielles d'une procédure de détection et de suppression des redondances entre concepts liées à la propriété de la transitivité de la relation de subsomption; la figure 5 représente, à titre illustratif, une structure de données représentative, sous forme codée, d'un treillis de concepts d'une hiérarchie de concepts appartenant à une ontologie, conformément à l'objet de la présente invention; la figure 6a représente, à titre illustratif, un exemple d'utilisation d'une structure de données sous forme d'un treillis de concept conformément à l'objet de l'invention, pour l'exécution d'un test de subsomption de concepts; la figure 6b représente, à titre illustratif, un exemple d'utilisation d'une structure de données codées sous forme d'un treillis de concepts conformément à l'objet de l'invention, pour l'exécution d'un calcul de plus petit commun généralisant d'une pluralité de concepts de cette structure de données codées; la figure 7 représente, à titre illustratif, sous forme d'un schéma fonctionnel, un dispositif de codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie, conforme à l'objet de la présente invention. Une description plus détaillée du procédé et du système de codage sous forme d'un treillis, d'une hiérarchie de concepts appartenant à une ontologie, conforme à l'objet de la présente invention, sera maintenant donnée en liaison avec les figures la et lb et les figures suivantes. En référence à la figure la on rappelle que le procédé, objet de l'invention, est mis en oeuvre sur une ontologie quelconque, telle que représentée en figure 1 a par exemple, dans laquelle chaque concept désigné ABCDEF est constitué par un concept primitif vérifiant la relation d'ordre précitée d'inclusion entre un concept universel T et un concept vide 1. On rappelle en outre que chaque concept primitif ne dispose d'aucune définition sémantique et qu'à chacun des concepts primitifs précités est attribuée la seule signification intrinsèque de la définition littérale de ce dernier, ainsi qu'il sera décrit ultérieurement dans la description. Pour la mise en oeuvre du procédé objet de la présente invention en liaison avec la figure lb, tout concept primitif PCi où i désigne une adresse d'identification éventuelle d'un concept primitif donné considéré, prend la valeur A à G pour la hiérarchie des concepts primitifs représentée en figure 1 a et vérifie la relation: {1OPCiOT}. Dans la relation précédente on rappelle que le symbole ç désigne le symbole d'inclusion. Le procédé de codage, objet de l'invention, consiste, ainsi qu'il apparaît en figure lb, à attribuer à chaque concept primitif PCi prenant l'une des valeurs précédentes et, bien entendu, au noeud du treillis associé à ce dernier, un identifiant formé par au moins une suite de nombres entiers, chaque identifiant étant de ce fait représenté par au moins une suite de nombres entiers délimités par des crochets ainsi qu'il sera expliqué ci-après. En référence à la figure lb, on indique qu'à chaque concept primitif PCi est attribuée pour seule valeur sémantique la valeur de signification intrinsèque qui lui est associée par la valeur littérale de ce dernier dans la position correspondante au noeud du treillis auquel le concept est associé. Ainsi, chaque suite de nombres entiers définit un chemin d'accès entre le concept primitif considéré PCi et le concept universel T, par l'intermédiaire des concepts primitifs pères successifs. Enfin, ainsi que représenté en figure lb, l'identifiant associé à un concept primitif et au noeud du treillis correspondant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès entre les concepts primitifs pères et le concept primitif universel T, auquel est ajouté un nombre entier représentatif du concept primitif considéré. Un mode de mise en oeuvre de codage spécifique non limitatif sera décrit en liaison avec la figure lb, dans laquelle la structure hiérarchique de la figure la entre le concept universel T et le concept vide 1 sera préférentiellement, mais de manière non limitative, parcourue en "niveau d'abord" par exemple. La notion de "niveau d'abord" concerne, à partir du concept universel T, le parcours de la hiérarchie de concepts par exemple par niveau de filiation successif de façon non limitative. Ainsi, en référence à la figure lb on considère en premier lieu les concepts D et G pour le premier niveau de filiation vis-à-vis du concept universel T, niveau n=1. Pour les concepts primitifs PC;==D et respectivement PC;==G on attribue ainsi un identifiant, identifiant [1] pour le concept D, respectivement identifiant [2] pour le concept G. Ainsi, à l'étape Co de la figure lb on procède à l'attribution des identifiants pour les concepts suivants: PC; D[ 1] PC;=G[2]. Suite au niveau de filiation 1, par exemple, on procède alors au passage au niveau de filiation 2, c'est-à-dire à l'étude de tout concept PC; relié au concept universel T par un concept intermédiaire. Pour l'étape C1 de la figure lb, on procède alors à l'attribution au deuxième niveau de filiation n=2: PC;=C [ 11]. L'on procède alors ainsi de suite pour tout niveau de filiation successif et, en particulier, pour le niveau de filiation n=3, c'est-à- dire sur la figure la pour les concepts B et E à l'étape C2 selon la relation d'attribution: PC B[111] PC;=E[112]. Pour l'exécution du niveau de filiation suivant, le niveau n=4, l'on procède alors à l'attribution suivante: PC1=A[1111 1121] PC F[1112 1122]. On comprend que le codage et, en particulier, l'association d'identifiants est alors terminée lorsque l'attribution d'un identifiant à chacun des concepts primitifs - 12 - autres que le concept vide 1 a été effectué, cette opération ayant été représentée à la figure lb par une étape "fin niveau" par la relation: PC;=1. On obtient alors un treillis de concepts noté TPC; sur la figure lb. On comprend, en particulier, que l'identifiant associé à chacun des concepts PC; inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès entre l'un des concepts primitifs pères et le concept universel, auquel est ajouté un nombre entier représentatif du concept primitif considéré. On indique que le nombre entier précité ajouté est représentatif du concept primitif considéré vis-à-vis de chaque concept primitif père ce dernier. Ainsi, pour le concept primitif PC; F, le nombre entier ajouté vis- à-vis du concept primitif père B de ce dernier est le nombre 2 en raison de l'existence du concept fils A vis-à-vis du concept primitif père commun B. Tout concept primitif fils, tel que le concept primitif F, ne se voit attribuer qu'un seul nombre entier d'identification, tel que le nombre 2, vis-à-vis du seul et même concept primitif père B, indifféremment du nombre entier d'identification attribué vis-à-vis d'un autre concept primitif père, tel que E. Ainsi, en référence à la figure lb on indique que, de manière avantageuse, chaque nombre entier ajouté est un numéro d'ordre du concept primitif considéré représentatif du rang de filiation du concept primitif considéré précité pris comme concept primitif fils d'une pluralité de concept primitif pères communs, c'est-à- dire concepts primitifs B et E sur la figure 1 a, vis-à-vis du concept primitif fils F. Le procédé de codage sous forme d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie objet de la présente invention, tel que représenté et décrit en figure lb, n'est pas limitatif. En particulier, on comprend que le parcours de la hiérarchie de concepts représenté en figure 1 a peut être effectué de toute manière adaptée et en particulier selon un processus de parcours "profondeur d'abord" lequel peut consister à parcourir la hiérarchie des concepts non plus par niveau, comme décrit en liaison avec la figure - 13 - lb, mais par branche en privilégiant le parcours par noeud successif d'une même filiation successive. Ce mode de mise en oeuvre du procédé objet de la présente invention ne sera pas décrit en détail, car la notion de choix entre parcours par "niveau d'abord" ou par "profondeur d'abord", voire selon un processus de parcours mixte "niveau d'abord" "profondeur d'abord", correspond à des processus de parcours de structures arborescentes connues de l'état de la technique. On indique simplement que dans le cas d'une mise en oeuvre du procédé objet de l'invention par un processus de parcours "profondeur d'abord", la détection à un niveau de profondeur donné d'une filiation multiple, c'est-à-dire de l'existence d'une pluralité de concept fils pour le concept du niveau considéré implique la mémorisation d'une variable représentant le nombre de concept fils pour le concept père considéré, ceci afin de permettre un retour au concept père de niveau le moins élevé présentant une filiation multiple. Dans un tel cas, le mode de mise en oeuvre du procédé objet de l'invention, correspond sensiblement à une mise en oeuvre par parcours mixte "niveau d'abord" "profondeur d'abord". On comprend, en particulier que le procédé, objet de l'invention, tel que décrit en liaison avec la figure lb correspond à une numérotation d'une hiérarchie qui s'inspire du tri topologique défini sur un graphe orienté. Un graphe orienté est une relation binaire non symétrique où chaque élément de la relation est représenté par un noeud dans le graphe et où chaque occurrence de la relation fait apparaître sur le graphe un arc orienté, c'est-à-dire une flèche d'un noeud donné vers un autre noeud donné. L'algorithme du tri topologique permet d'appliquer un traitement à un noeud une fois que tous ses antécédents ont été traités. C'est le cas dans le mode de mise en oeuvre tel que représenté en figure lb du procédé objet de l'invention. Ainsi, un concept primitif de la hiérarchie de concepts primitifs est numéroté une fois que tous ses pères ont été numérotés. Pour garder les informations - 14 - relatives à la hiérarchie, un concept fils hérite de tous les chemins de l'identifiant de chacun de ses pères étendu à droite par un nouvel entier, l'entier ajouté étant le même pour tous les chemins d'un même père donné à un de ses fils. Ce mode opératoire permet de garantir qu'un chemin n'est associé qu'à un seul concept de la hiérarchie de concepts et que le caractère ajouté est différent pour chacun des concepts fils considérés. Ainsi, en référence à la figure lb, l'ensemble des chemins étendus obtenu à partir de tous les concepts pères d'un concept primitif, considéré comme un concept fils de tous les concepts pères précités, constitue l'identifiant du concept primitif fils considéré précité. Toutefois, certaines ontologies possèdent des redondances dans leur déclaration, dues à la propriété de transitivité de la relation d'inclusion entre concepts primitifs. Les redondances précitées sont relativement rares dans le cadre de concepts primitifs qui ont pour seule valeur celle associée à leur position dans le treillis de concept et, bien entendu, à leur définition littérale intrinsèque. La notion de position recouvre la notion de filiation et finalement de position de chaque noeud dans le treillis au-dessus et/ou au dessous d'un autre noeud et, en définitive, d'un concept associé à ce dernier. La sémantique simple précitée est en général contrôlée par un expert d'ontologie, lequel définit l'ontologie en tant que telle avec la hiérarchie des concepts associée au concept primitif considéré. Toutefois, une ontologie en tant que telle, et, en particulier une hiérarchie de concepts primitifs constitutifs de celle-ci, permet une meilleure exploitation automatique des propriétés de l'ontologie considérée, lorsqu'il n'existe pas de redondance dans la hiérarchie des concepts telle que définie. La détection des redondances précitée pour des concepts primitifs est simple car elle consiste à vérifier l'absence de redondance par étude des instances de relation d'inclusion. - 15 - A titre d'exemple non limitatif, sur la figure 1 a, l'existence d'un arc entre les concepts F et C ou F et D aurait constitué une relation d'ordre redondante. En outre, les ontologies prises en compte pour la mise en oeuvre du procédé objet de l'invention, vérifient la contrainte d'unicité du nom de concept donnant différents représentants des prédicats différents, mais un même nom représentant le même prédicat. L'absence d'une telle contraire a pour conséquence qu'un même concept est dupliqué dans le treillis et le codage par numérotation a pour effet d'attribuer à ce dernier deux identifiants différents mais équivalents pour tous les traitements. Le procédé de codage sous forme d'un treillis d'une hiérarchie de concepts appartenant à une ontologie, conforme à l'objet de la présente invention, tel que décrit en figure lb pour des concepts primitifs, peut de manière particulièrement avantageuse être mis en oeuvre, en outre, pour une hiérarchie de concepts appartenant à une ontologie comportant, non seulement, des concepts primitifs mais également au moins un concept défini, moyennant quelques précautions de mise en oeuvre, lesquelles seront explicitées ci-après. D'une manière générale, on indique que le processus de codage tel que décrit en figure lb nécessite, en présence de concepts définis dans la hiérarchie des concepts, la mise en oeuvre de certaines étapes supplémentaires, lesquelles seront décrites en liaison avec la figure 2. En effet, le treillis obtenu en prenant en compte des concepts définis correspond à une relation d'ordre plus large que la relation d'ordre d'inclusion d'un treillis relatif à des concepts primitifs. En particulier, la relation d'ordre associée à un treillis comportant des concepts primitifs et des concepts définis est une relation d'ordre partiel obtenue par calcul de subsomption entre deux éléments, c'est-à-dire entre concept primitif et/ou défini. On rappelle que les tests de subsomption, propres à un langage d'ontologie, permettent d'indiquer si un concept généralise un autre concept. Le calcul précité entre deux éléments de concept correspondants se réduit parfois à vérifier l'existence d'une instance de la relation d'inclusion, mais, en général, - 16 - fait intervenir des calculs complexes sur les expressions de logique de description de l'ontologie et, en particulier, de la hiérarchie de concept constitutive de cette dernière. De tels calculs complexes ne seront pas décrits dans la présente description, car le mode d'exécution de tels calculs est étranger à l'objet de l'invention, puisque précisément, l'objet de l'invention permet d'éviter la nécessité d'exécution des calculs précités. Compte tenu des considérations précédentes, la présente invention a également pour objet, un procédé de codage d'une hiérarchie de concepts comportant des concepts primitifs et, au moins, un concept, défini dans les conditions ci-après, tel que représenté en figure 2. Pour la mise en oeuvre du procédé de codage objet de l'invention, on considère une hiérarchie de concepts comportant des concepts primitifs PC; vérifiant la relation précédemment mentionnée dans la description: {1cPC;cT} et des concepts définis notés: {DCkX} chacun des concepts définis précités pouvant être le siège de redondances telles que définies précédemment. En référence à la figure 2, on indique que le procédé de codage, objet de l'invention, consiste au moins, en une étape notée SA, à engendrer une saturation de la hiérarchie de concepts par exécution de test d'inclusion sur les concepts primitifs. Cette opération est notée: SA{1OPC,cT} PC, PC;'. Le test de saturation permet ainsi d'établir toutes les relations d'inclusion implicites existant entre les concepts primitifs PC; de la hiérarchie de concepts. L'étape de saturation SA est accompagnée d'une étape de codage C, analogue à celle représentée en figure lb, pour l'ensemble des concepts primitifs précités, l'opération de codage C permettant alors de mettre en oeuvre une structure de données sous forme d'un treillis de concepts primitifs notée TPC;, c'est-à-dire une structure analogue, à celle obtenue grâce à la mise en oeuvre du procédé de codage objet de l'invention, sur les concepts primitifs représentés en figure lb. Cette opération à l'étape C est notée par la relation: {1çPC; çT} --> TPC;. L'étape C de codage est alors suivie d'une étape de saturation notée SU de la hiérarchie de concepts par exécution de tests de subsomption des concepts définis avec détection des synonymes. Sur la figure 2, l'étape de saturation par test de subsomption est notée: 3 PC; SU DCk, ? 3 Syn ?. Dans la relation précédente, on indique que la première identité concerne un test de subsomption de tout concept défini DCk, susceptible d'ailleurs de présenter encore des redondances vis-à-vis de tout concept primitif PC; qui a déjà fait l'objet d'un codage sous forme de treillis, le test de saturation précité permettant bien entendu de vérifier l'intégration possible de tout concept défini DCk,, dans la hiérarchie de concepts primitifs vérifiant la relation d'ordre total d'inclusion. La deuxième identité d'existence des synonymes permet de traiter toute existence d'un synonyme afin, bien entendu, de ne pas perdre la relation d'unicité de désignation, le processus de traitement correspondant faisant l'objet d'une description plus détaillée ultérieurement dans la description. L'étape de saturation pas subsomption SU peut alors être suivie d'une étape de détection/suppression des redondances, notée RDC sur la figure 2, dans les concepts définis DCkx, ces redondances pouvant apparaître du fait du caractère de la transitivité de la relation de subsomption vérifiée. L'opération de détection des redondances est notée par la relation: {DCk)(}--*{DCk}. Dans la relation précédente on comprend, en particulier, que les redondances étant supprimées, chaque concept DCk de l'ensemble des concepts définis {DCk}, dans lesquels les redondances ont été supprimées, peut alors être assimilé globalement à un concept primitif du point de vue du codage par numérotation vis-à- vis des concepts primitifs existant dans le treillis de concept primitif PCP;. En conséquence, l'étape de détection/suppression des redondances RDC de la figure 2 est suivie par une étape I d'introduction des concepts définis DCk dans lesquels les redondances ont été supprimées dans le treillis de concepts primitifs TPCi. L'opération à l'étape I précitée est notée: {TPCi + DCk}--> CTDP={1çPCi,DCkOT}. On conçoit, en effet, que l'opération d'introduction précitée consiste en fait à introduire par exemple dans un fichier numérique l'intitulé des concepts définis DCk dans lesquelles les redondances ont été supprimées avec les intitulés des concepts primitifs PC, pour engendrer finalement un ensemble de concepts primitifs et définis, lequel, en raison des traitements de suppression des redondances des concepts définis, peut alors être soumis à un codage semblable à celui exécuté et décrit en liaison avec la figure lb vis-à-vis de tous les concepts présents formant la hiérarchie de concepts représentative de l'ontologie considérée. En conséquence, l'étape I d'introduction précitée est suivie, à nouveau, d'une étape de codage C, laquelle est cette fois appliquée sur l'ensemble des concepts primitifs et définis constitutifs de la hiérarchie de concepts représentative de l'ontologie considérée. Ainsi l'opération de codage C de la figure 2 porte cette fois sur l'ensemble des concepts primitifs PCi et des concepts définis DCk selon la relation: {1ÇPCi,DCkÇT}-*TDPC. La relation symbolique précédente indique que par le codage du corps de treillis de concepts incluant les concepts primitifs et les concepts définis sous forme de treillis de concepts on attribue en fait à chaque concept défini DCk et au noeud du corps de treillis associé à ce dernier, un identifiant compatible avec tout identifiant attribué à un ou plusieurs concepts primitifs et/ou défini pour former en fait un treillis de concept TDPC incluant à la fois les concepts primitifs et les concepts définis précités. Différentes indications relatives à la mise en oeuvre des étapes A, C, SU, RDC et I de la figure 2 seront maintenant données ci-après. Étape SA de saturation En ce qui concerne l'étape SA de saturation de l'ontologie, on indique que cette phase permet de décrire toutes les relations d'inclusion implicites entre les concepts primitifs de la hiérarchie de concepts constitutives de l'ontologie. Ces relations ne sont pas explicitées au sein de la hiérarchie de concepts primitifs mais peuvent être déduites de son contenu grâce aux règles du langage utilisées pour exprimer la hiérarchie de concepts précitée et l'ontologie correspondante, les règles de langage précitées pouvant être l'inclusion par exemple. La phase de saturation SA permet de remplacer, par exemple, la partie gauche d'une règle d'une inclusion par la partie droite de cette dernière. Étape C de codage L'organisation des concepts primitifs par codage selon le procédé, objet de la présente invention, tel que représenté en figure lb permet de détecter les redondances au sein des inclusions entre concepts primitifs. Étape SU de saturation par subsomption Cette saturation permet d'expliciter les relations de subsomption c'est-à-dire de généralisation au sein des concepts définis. L'étape précitée permet de déterminer également si un concept primitif subsume, c'est-à-dire généralise ou non, un concept défini. Cette opération est essentielle car elle permet par la suite d'intégrer à l'étape I tout concept défini DCk dans lequel les redondances ont été supprimées dans les treillis de concept primitif TPC; obtenu à l'étape de codage C précédente. L'opération SU de saturation permet en outre de vérifier s'il y a équivalence entre deux concepts et utilise alors la notion de synonyme par le test de synonymie 3 Syn ? en regroupant les deux concepts équivalents sous un même concept pouvant alors avoir plusieurs noms, ainsi qu'il sera décrit ultérieurement dans la description. En effet, les hiérarchies de concepts appartenant à une ontologie qui peuvent être codés et donc numérotés conformément au procédé objet de l'invention, doivent - 20 - être représentées sous forme de treillis. Elles doivent donc être acycliques et il ne peut exister de boucle. Toutefois, la définition de concept par équivalence peut poser quelques problèmes de synonymie puisque dire par exemple qu'un premier concept a pour définition un deuxième concept, est complètement équivalent à une définition du deuxième concept par le premier concept. Avec l'une ou l'autre de ces définitions, il y a synonymie si le premier concept est inclus dans le deuxième concept et si le deuxième concept est inclus dans le premier concept. Il existe donc une boucle qui doit être supprimée. Le procédé objet de l'invention permet de lever et donc de supprimer l'existence de boucles de la façon ci-après. Lorsque le cas I=H se présente, I et H ne forment alors qu'un seul concept qui porte plusieurs noms en fonction de son contexte d'écriture. Une adaptation supplémentaire permet ainsi de prendre en compte les définitions de concept. Un module raisonneur permet de choisir un nom officiel associé à un module de raisonnement sur l'ontologie alors que des modules logiciels de visualisation permettent quant à eux d'utiliser soit le même nom soit un des synonymes en fonction de l'utilisateur de l'outil. Un processus de détection de synonymes sera maintenant décrit en liaison avec la figure 3a de manière non limitative. Le processus de détection de synonymes précité peut alors avantageusement être mis en oeuvre par le module raisonneur précédemment mentionné. En effet, avec une logique de description comme langage d'ontologie, il existe une phase obligatoire de dépliage des concepts définis. Cette phase est nécessaire au module raisonneur et consiste alors à remplacer chacun des concepts définis apparaissant dans les définitions de concept par leur propre définition. En procédant itérativement, chaque concept défini est associé à une définition ne contenant plus que des concepts primitifs ou des opérateurs sur des concepts primitifs. Les définitions restreintes à un seul concept sont alors supprimées au profit -21 - d'une création de synonymes. De manière plus générale, deux concepts possédant une définition équivalente sont considérés comme synonymes. Ainsi, en référence à la figure 3a un processus de détection de synonymes entre un premier concept primitif PC; ou un concept défini DCk et un deuxième concept défini DCk' consiste au moins à vérifier en un test Syno l'équivalence entre le premier concept primitif ou défini PC;; DCk et le deuxième concept défini DCk,. Ce test est représenté par la relation telle que représentée sur la figure 3a: (PC,;DCk)zDCk' ? Sur réponse négative au test Syno, le processus consiste alors en une étape Syni à retenir pour le premier et le deuxième concepts, une désignation littérale générique notée "CGen". On comprend, en particulier, que la désignation littérale générique précitée "CGen" peut être choisie par le module raisonneur ou par toute entité pertinente correspondante. Cette opération est représentée par la relation: {"CGen" {PC;;DCk, DCk'} }. Par la relation précédente on comprend que au concept primitif PC1 ou défini DCk et au deuxième concept primitif DCk, est finalement associée la désignation générique "CGen". L'étape Syni est suivie d'une étape Syn2 laquelle consiste alors à conserver la désignation littérale du premier concept primitif PC, ou défini DCk et du deuxième concept défini DCk' comme synonyme en référence à la désignation littérale générique "CGen". L'opération de l'étape Syn2 est notée: Syn{PC;;DCk,DCk.} 1 "CGen". Au contraire, sur réponse négative au test d'équivalence précitée Syno, un retour à la fin du processus de synchronisation est prévu pour fin de procédure. - 22 - Étape de détection et suppression des redondances RDC Les redondances précitées ne peuvent pas être détectées pendant les tests de subsomptions. L'étape RDC de la figure 2 permet par exemple de supprimer une branche d'héritage direct obtenue par transitivité via un héritage direct. En référence à la figure 4a, on a représenté différents concepts définis tels que: C3, C4 et C5 sont des concepts primitifs, C1=C3 et C1=C4, C2=C3 et C2=C5. Cl et C2 sont des concepts définis et les relations au concept primitif C3, C4 et C5 sont, en conséquence, représentés par des flèches en pointillés. Les relations entre concepts primitifs sont représentées par des flèches en trait plein. En outre, C4çC5 définit une relation entre concepts primitifs. Les tests de subsomption vérifient successivement: C5 subsume Cl, C2 et C4, C3 subsume C2 et Cl, C4 subsume Cl, C2 subsume Cl. Les liens de subsomption suivants sont redondants: C1OC3, C1çC5. Les liens de subsomptions sont représentés par le même symbole que les liens d'inclusion afin de ne pas surcharger la notation. Seul le test de subsomption permet de déterminer, dans le cas présent, si un concept défini est inclus ou non dans un autre concept défini ou dans un concept primitif et, en conséquence, de savoir si le concept défini considéré doit être situé au-dessus, au-dessous ou à côté d'un autre concept dans le treillis considéré. En revanche, le test de subsomption ne permet pas d'indiquer si cette propriété calculée peut également être déduite via la propriété de transitivité de la - 23 - subsomption. Par exemple, l'inclusion nouvellement détectée est implicite et donc redondante. La mise en oeuvre des tests de subsomption est propre à un langage et permet d'indiquer si un concept généralise un autre concept. Le mode d'exécution des tests de subsomption ne seront pas décrits car il correspondent à des méthodes précises entre des expressions de logique de description. A titre d'exemple non limitatif, pour C5 définissant un concept "séjour", C4 comme un concept "séjour en Europe" et Cl "séjour en France" est défini comme un séjour dont la destination est située en France et séjour en Europe comme un séjour dont la destination est située en Europe. En conséquence, C4 "séjour en Europe" subsume, c'est-à-dire généralise "séjour en France" alors que le concept C5 "séjour" subsume "séjour en Europe" et "séjour en France", c'est-à-dire C4 et Cl. La relation C 1 çC5, relation de subsomption est toutefois redondante. Un processus de détection et de suppression des redondances sera représenté maintenant et décrit en liaison avec la figure 4b. En référence à la figure précitée, le processus consiste, pour tout concept défini DCk à un niveau de filiation ou de profondeur n quelconque dans la hiérarchie des concepts, à effectuer en une sous-étape RDC1 une détection de l'ensemble des concepts définis ou primitifs pères du concept défini courant. Cette opération est effectuée au niveau de profondeur n-1 par exemple, l'ensemble des concepts définis ou primitifs pères étant notés: {PPC;, PDCk}. La sous-étape RDC1 est alors suivie d'une sous-étape RDC2 consistant à détecter l'ensemble des concepts définis ou primitifs généralisants de chacun des concepts définis ou primitifs pères du concept défini courant. Cette sous-étape est effectuée à tout niveau n-x supérieur au niveau n-1, l'ensemble des généralisants étant noté : {GPPC,, GPDCk}. On rappelle que la détection d'un généralisant peut être effectuée par un test de subsomption par exemple. La sous-étape RDC2 est suivie d'une sous-étape RDC3 laquelle consiste à vérifier qu'aucun des concepts définis ou primitifs généralisants de chacun des concepts définis ou primitifs pères du concept défini courant n'apparaît dans l'ensemble des concepts définis ou primitifs pères du concept défini courant précité. Cette vérification est effectuée à l'étape de test RDC3 et symbolisée par la relation: {GPPC;, GPDCk} {PPC;, PDCk}. Sur réponse positive au test RDC3 précité, il n'existe pas de redondance et la procédure ou étape de calcul des redondances est terminée et notée: Fin RDC DCk. Au contraire, sur réponse négative au test RDC3, alors une étape RDC4 est appelée pour supprimer tous les liens redondants entre le concept défini DCk et le concept généralisant considéré. Ainsi, le processus de détection et de suppression de redondance permet de ne pas prendre en compte le lien transitif de subsomption entre Cl "séjour en France" et C5 "séjour". Ainsi, en référence à la figure 1 a l'adjonction des concepts définis I et H=Cf1G avec H subsume I, implique que C et G subsument également le concept I. L'étape et le processus de calcul et de suppression de redondance permet alors de ne pas tenir explicitement compte des relations de subsomption IçC ou IçG. Une description plus détaillée d'une structure de données représentative, sous forme codée, d'un treillis de concepts d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances de faits et de règles relatifs à un domaine, cette hiérarchie de concept comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, sera maintenant donnée en liaison avec la figure 5. L'exemple non limitatif représenté en figure 5 concerne l'exemple précédemment décrit en liaison avec le procédé de codage objet de la présente invention, représenté aux figures 4a et 4b, lorsqu'à la hiérarchie de concepts primitifs représentée en figure la sont ajoutés les concepts définis I et H avec H=Cf1G, ainsi que mentionné précédemment dans la description et que, H subsume I. - 25 - Le treillis obtenu conforme au procédé, objet de la présente invention, comporte au moins une pluralité de noeuds à chaque noeud du treillis étant associé un concept primitif et un identifiant associé à chaque noeud du treillis et au concept primitif correspondant. Sur la figure 5, les concepts primitifs sont les concepts A, B, C, D, E, F, et G entre le concept universel T et le concept vide 1. En outre, à chaque concept primitif est attribuée, pour seule valeur sémantique, celle qui est associée à la position du noeud correspondant dans les treillis et chaque suite de nombres entiers définit un chemin d'accès entre le concept primitif considéré et le concept universel, par l'intermédiaire des concepts primitifs pères successifs. L'identifiant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un des concepts primitifs père au concept universel, auquel est ajouté un nombre entier représentatif du concept primitif considéré. Ainsi, pour les concepts primitifs précités, on a en outre les identifiants ci-après: A[1111,1121] F[1112,1122] B[111] E[112] H[113,21] C[11] D[1] G[2] En outre, pour les concepts définis introduits H et I, on a alors les identifiants suite à la mise en oeuvre du procédé objet de la présente invention tel que représentée en figures 2 à 4b: I[211,1131] H[113,21] Selon la convention précédente, les arcs entre concept défini et concept défini ou concept primitif sont représentés par des pointillés. On observe en particulier, en référence à la figure 5, que, pour chaque concept défini précité, celui-ci se voit associer à chacun des noeuds associés à ce même concept défini, un identifiant formé par au moins une suite de nombres entiers. Chaque suite de nombres entiers d'un identifiant définit un chemin d'accès entre le concept défini considéré et le concept universel T par l'intermédiaire des - 26 - concepts primitifs et/ou définis pères successifs. Chaque identifiant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un des concept primitif et/ou défini pères au concept universel T, auquel est ajouté un nombre entier représentatif du concept défini considéré. On comprend, en particulier, que le procédé de codage, objet de l'invention, et la structure de données obtenue par la mise en oeuvre du procédé de codage précité permettent d'étendre au concept défini toutes les utilisations déjà répertoriées sur un treillis de concepts primitifs et/ou défini, ainsi qu'il sera maintenant décrit ci-après. Le codage et en particulier la numérotation, c'est-à-dire l'attribution d'un identifiant à chacun des concepts primitifs et/ou définis précités, permet ainsi d'effectuer facilement un test de subsomption entre deux concepts. On rappelle qu'un test de subsomption est un calcul complexe dans une ontologie décrite en logique de description, ce test permettant de déterminer si les instances d'un concept sont incluses ou non dans celles d'un autre concept et se basent sur la définition des concepts. Facilitée dans une ontologie ou dans une hiérarchie de concepts saturée, la mise en oeuvre d'un test de subsomption devient alors très simple compte tenu du codage, c'est-à-dire de l'attribution des identifiants tels que mentionnés précédemment dans la description à tout concept primitif et/ou défini d'une hiérarchie de concept, conformément à l'objet de l'invention. Ainsi, pour l'exécution d'un test de subsomption entre un premier concept primitif ou défini et entre un deuxième concept primitif ou défini du treillis de concepts, le test précité consiste à comparer les chemins d'accès des noeuds du treillis associés au premier respectivement au deuxième concept. La subsomption du deuxième concept B par le premier concept A est alors vérifiée lorsque le chemin d'accès du noeud A associé au premier concept vis-à-vis du concept universel T préfixe le chemin d'accès du noeud associé au deuxième concept B. Un tel mode opératoire est illustré en figure 6a pour un premier concept A et un deuxième concept B soumis à un test de subsomption de B par le concept A. - 27 -Le processus de test de subsomption consiste à effectuer une comparaison en une étape So du chemin d'accès au noeud A depuis le concept universel T, chemin CHA, vis-à-vis du chemin d'accès au concept B et au noeud associé à ce dernier chemin, CHB. Si le chemin d'accès CHA préfixe le chemin d'accès CHB, alors, en réponse positive au test So une étape S i permet de conclure au fait que le concept A subsume le concept B. Au contraire, sur réponse négative au test So une étape S2 permet de conclure au fait que le concept A ne subsume pas le concept B. Le test correspondant peut être vérifié sur l'exemple donné en liaison avec la figure 5 pour les noeuds C dont le chemin d'accès "11" subsume le noeud du concept A dont les chemins d'accès sont donnés par "1111" "1121" car le premier chemin de l'identifiant du concept C préfixe au moins un des chemins de l'identifiant du concept A. Le procédé de codage et la structure de données en treillis obtenue par la mise en oeuvre du procédé objet de l'invention, permettent en outre de déterminer et d'exécuter un test de discrimination de l'ensemble des concepts généralisants d'un sous- ensemble de concepts d'une hiérarchie de concepts. Cette opération est grandement facilitée car elle consiste, grâce à la mise en oeuvre d'une structure de donnée codée, objet de la présente invention, à discriminer tous les concepts qui subsument à la fois tous les concepts du sous- ensemble de concepts par application d'un test de subsomption tel qu'exécuté et représenté en liaison avec la figure 6a, vérifié à la valeur vraie tel qu'aucun concept de l'ensemble des généralisants ne subsume un autre concept de cet ensemble de concepts généralisants. A titre d'exemple non limitatif, on considère à nouveau le calcul du plus petit commun généralisant désigné ppcg, des concepts A[1111 1121] et F[1112 1122]. Dans ces conditions, le ppcg de A et de F est l'ensemble des concepts associés au chemin "111" et "112", c'est-à-dire les concepts B et E représentés en figure 5. - 28 - De même le ppcg des concepts A, F et H se restreint alors au préfixe commun des chemins "111", "112" et "21", "113". Le préfixe commun de ces derniers n'est autre que le préfixe "11" c'est-à-dire l'adresse du noeud associée au concept C sur la figure 5. C est donc le ppcg des concepts A, F et H. En revanche, D et G n'ont pas de ppcg dans la hiérarchie de concepts représentée. Le procédé de codage et la structure de données, obtenus à partir de la mise en oeuvre de ce dernier, conformes à l'objet de l'invention, permettent en outre de trouver de nouvelles utilisations à ce processus de codage, lequel permet de couvrir maintenant la totalité de l'ensemble des concepts primitifs et/ou définis d'une hiérarchie de concepts appartenant à une ontologie. En effet, le test de subsomption entre deux concepts quelconques d'une ontologie ne présente pratiquement plus de coût de calcul car il suffit, pour effectuer ce dernier, de calculer un préfixe commun. Le calcul du préfixe pouvant bien entendu être ramené à un calcul de partie commune d'une chaîne de caractères dans le chemin d'accès considéré. Différents exemples pratiques de mise en oeuvre d'une utilisation concrète du procédé de codage et d'une structure de données correspondante obtenue par la mise en oeuvre de ce dernier seront donnés ci-après. Exemple 1 Un utilisateur veut connaître tous les hôtels de petite commune Sarthoise en France. La requête peut être généralisée à tous les hôtels de la Sarthe. On peut spécialiser un concept qui apporte trop de réponses à une requête pour se restreindre à un sous-ensemble de réponses de la requête initiale. Exemple 2 L'utilisateur précédent veut faire une croisière sur un cours d'eau et cherche pour se loger, tous les hôtels de la Sarthe. La requête peut être spécialisée à tous les hôtels de la Sarthe le long d'une rivière. - 29 - Tous les concepts sont alors comparés à d'autres concepts et le calcul d'une distance entre le concept de la hiérarchie est alors peu coûteux, car il est facile de remplacer un concept qui ne retourne pas beaucoup de réponses avec un autre qui correspond à des thématiques proches mais pour lequel il existe peu de réponses. En référence à la figure 6b, un calcul de plus petit commun généralisant ppcg entre trois concepts A, B et C de chemin d'accès CHA, CHB, CHc, vis-à-vis du concept universel T peut alors être le suivant: En une étape Po on calcule le préfixe commun des chemins CHA, CHB et 10 CHc. Cette opération est notée par la relation: Préfixe (CHA, CHB, CHc) * CHR. L'étape Po est suivie d'une étape P1 consistant à vérifier que le chemin résultant CHR est différent d'un chemin vide et, en particulier, d'une chaîne de caractères vide ou d'une chaîne de caractères de valeur arbitraire 0 ou autre par exemple. Sur réponse positive au test P1 la chaîne de caractères représentative du chemin résultant étant différente de la chaîne vide, alors à l'étape P2, le plus petit commun généralisant des trois concepts A, B et C est alors le concept R dont le chemin d'accès par rapport au concept universel est la chaîne de caractères résultante CHR. Au contraire, sur réponse négative au test P1 alors il n'existe pas de plus petit commun généralisant aux trois concepts A, B et C précités. Une description plus détaillée d'un dispositif de codage sous forme d'un treillis de concepts d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances de faits et de règles relatifs à un domaine comportant au moins des concepts primitifs et vérifiant une relation d'ordre entre un concept universel et un concept vide, conforme à l'objet de la présente invention, sera maintenant donnée en liaison avec la figure 7. En référence à la figure précitée, on indique que, outre une unité centrale de 30 traitement CPU et un organe d'entrée/sortie 1/0, ainsi qu'une mémoire de travail RAM, le dispositif objet de l'invention, comporte avantageusement un module Mo d'acquisition et de lecture de la hiérarchie de concepts sous forme d'un fichier numérique accessible au moins en lecture. Le module Mo d'acquisition et de lecture de la hiérarchie de concepts peut être constitué par un module de programme permettant d'accéder directement à l'ontologie et en particulier à la hiérarchie de concepts primitifs constitutives de celles-ci, cette ontologie et cette hiérarchie de concepts étant fournie par un fournisseur d'ontologie accessible sur un site par exemple, par l'intermédiaire d'une liaison Internet ou autre. On rappelle que l'ontologie et la hiérarchie de concepts primitifs correspondante de celle-ci sont définis sur un domaine particulier présentant un intérêt pour l'utilisateur. A titre d'exemple non limitatif, l'ontologie et la hiérarchie de concepts peut être décrite dans un fichier de données en langage OWL pour Ontology Web Language en anglais ou dans tout format adapté et peut comporter des connaissances explicites et des connaissances implicites. Le dispositif, objet de l'invention, comporte en outre un module M1 formé par un programme d'ordinateur de calcul et d'attribution à chaque concept primitif et au noeud du treillis associé à ce dernier d'un identifiant formé par au moins une suite de nombres entiers, ainsi que décrit précédemment dans la description. A chaque concept primitif est attribuée pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis. En outre, chaque suite de nombres entiers définit un chemin d'accès entre le concept primitif considéré et le concept universel T par l'intermédiaire des concepts primitifs pères successifs. En conséquence, l'identifiant associé à tout concept primitif et au noeud du treillis correspondant inclut toutes les suites de nombres entiers définissant chacune un chemin d'accès entre l'un des concepts primitifs pères et le concept universel, auquel est ajouté un nombre entier représentatif du concept primitif considéré. En outre, ainsi que représenté en figure 7, le dispositif objet de l'invention comporte un module, noté PM, de mémorisation du treillis de concepts et de chaque identifiant associé à un noeud du treillis de concept. On comprend, en particulier, que le module de mémorisation PM peut être constitué par une mémoire programmable par exemple, du type mémoire non volatile, afin de permettre toute mise à jour de la structure de données obtenue grâce à la mise en oeuvre du dispositif objet de la présente invention et, bien entendu du procédé de codage tel que décrit précédemment dans la description. La mémorisation du treillis de concept et de chaque identifiant associé à un noeud du treillis de concept correspond à la mémorisation d'identités telles que représenté en figure 5. Ainsi qu'on l'a en outre représenté en figure 7, le dispositif, objet de l'invention, comporte avantageusement un module M2 constitué par un programme d'ordinateur permettant d'exécuter le calcul d'une saturation de la hiérarchie de concepts, par exécution de tests d'inclusion sur les concepts primitifs précités, pour établir toutes les relations d'inclusion implicites existant entre les concepts primitifs de l'ontologie et de la hiérarchie de concepts, afin de coder les concepts primitifs sous forme d'un treillis de concept primitifs exempts de redondance. Le module M2 peut avantageusement être constitué par un module raisonneur incluant un sous-programme de calcul des relations d'inclusion sur les concepts primitifs précités. Enfin, et selon un aspect remarquable du dispositif objet de l'invention, pour une hiérarchie de concepts appartenant à une ontologie comportant en outre des concepts définis, le dispositif, objet de l'invention, comprend un module de calcul d'une saturation de la hiérarchie de concepts pour exécution de tests de subsomption des concepts définis avec détection des synonymes dans le but de permettre, d'une part, d'introduire des concepts définis dans le treillis de concepts primitifs pour engendrer un corps de treillis de concepts et, d'autre part, de coder ensuite le corps de treillis de concepts incluant les concepts primitifs et les concepts définis sous forme d'un treillis de concept par attribution à chaque concept défini et au noeud du corps de treillis de concept associé à ce dernier d'un identifiant compatible avec tout identifiant attribué à un ou plusieurs concepts primitifs. - 32 - On comprend en particulier que le module de calcul du test de subsomption peut être constitué par un sous-programme informatique directement intégré au module raisonneur M2 précédemment décrit. En outre, le sous-programme de calcul de saturation par test de subsomption avec détection de synonymes correspond à la mise en oeuvre du procédé objet de la présente invention et, en particulier, de l'étape SU représenté en figure 2 et du processus de détection de synonymes représenté en figure 3. Enfin, le module raisonneur M2 permet d'exécuter les test de subsomption conformément au procédé objet de la présente invention, tel que représenté en figure 6a, respectivement de calcul de plus petit commun généralisant désigné ppcg entre plusieurs concepts ainsi que décrit précédemment dans la description en relation avec la figure 6b. Le dispositif objet de l'invention comporte enfin un module M3 de programme informatique permettant d'effectuer la détection et la suppression des redondances qui sont susceptibles d'être introduites en raison de la transitivité des test de subsomption précités. Le module de programme M3 correspond alors à un traitement tel que décrit précédemment dans la description en liaison avec la figure 4b. Enfin, l'invention couvre également un produit de programme d'ordinateur enregistré sur un support de mémorisation M1, pour exécution par l'unité centrale de traitement d'un ordinateur ou d'un dispositif dédié, tel que représenté en figure 7, ce produit de programme d'ordinateur, lors de son exécution, exécutant un codage sous forme de treillis de concepts d'une hiérarchie de concepts comportant au moins des concepts primitifs, ainsi que décrit précédemment dans la description en liaison avec les figures lb et 6b notamment. En outre, l'invention couvre également un produit de programme d'ordinateur enregistré sur un support de mémorisation M1, pour exécution par l'unité centrale de traitement d'un ordinateur ou d'un dispositif dédié, ce produit de programme d'ordinateur, lors de son exécution, permettant d'exécuter un codage sous forme d'un treillis de concepts, d'une hiérarchie de concepts comportant des concepts - 33 - primitifs et au moins un concept défini ainsi que décrit précédemment dans la description, en liaison avec les figures lb, 2, 3, 4b afin d'obtenir une structure de données codées conforme à l'objet de la présente invention telle que représentée en figure 5. Bien entendu, l'invention couvre également un produit de programme d'ordinateur enregistré sur un support de mémorisation M2 permettant d'exécuter, sur une structure de données telle que représentée en figure 5, tout calcul de subsomption selon le processus décrit en figure 6a et tout calcul du plus petit commun généralisant ainsi que représenté en figure 6b par calcul de préfixes de chemins d'accès au noeud du treillis auquel est associé chacun des concepts sur lequel portent les calculs précités. - 34 - REVENDICATIONS 1. Procédé de codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine, ladite hiérarchie de concepts comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique, caractérisé en ce qu'il consiste au moins à attribuer à chaque concept primitif et au noeud du treillis associé à ce dernier un identifiant formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribué pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis, chaque suite de nombres entiers définissant un chemin d'accès entre ledit concept primitif considéré et ledit concept universel par l'intermédiaire des concepts primitifs pères successifs, ledit identifiant incluant toutes les suites de nombres entiers définissant chacune un chemin d'accès entre l'un desdits concepts primitifs pères et ledit concept universel, auxquelles est ajouté un nombre entier représentatif dudit concept primitif considéré. 2. Procédé selon la revendication 1, caractérisé en ce que ledit nombre entier ajouté est représentatif dudit concept primitif considéré, vis-à-vis de chaque concept primitif père de ce dernier. 3. Procédé selon la revendication 2, caractérisé en ce que ledit nombre entier ajouté est un numéro d'ordre dudit concept primitif considéré représentatif du rang de filiation dudit concept primitif considéré pris comme concept primitif fils d'une pluralité de concepts primitifs pères communs. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que, pour une hiérarchie de concepts comportant des concepts primitifs et au moins un concept défini, ledit procédé consiste au moins à : engendrer une saturation de ladite hiérarchie de concepts par exécution de tests d'inclusion sur lesdits concepts primitifs, pour établir toutes les relations d'inclusion implicites existant entre lesdits concepts primitifs de ladite - 35 - hiérarchie de concepts et coder lesdits concepts primitifs sous forme d'un treillis de concepts primitifs; engendrer une saturation de ladite hiérarchie de concepts par exécution de tests de subsomption desdits concepts définis, avec détection des synonymes; détecter et supprimer les redondances liées à la propriété de transitivité de la subsomption; introduire lesdits concepts définis dans ledit treillis de concepts primitifs, pour engendrer un corps de treillis de concepts; coder le corps de treillis de concepts, incluant lesdits concepts primitifs et lesdits concepts définis sous forme d'un treillis de concepts, par attribution à chaque concept défini et au noeud du corps de treillis associé à ce dernier d'un identifiant compatible avec tout identifiant attribué à un ou plusieurs concepts primitifs et/ou définis. 5. Procédé selon la revendication 4, caractérisé en ce que l'opération de détection de synonymes entre un premier concept primitif ou défini et un deuxième concept défini consiste au moins à : vérifier l'équivalence entre le premier et le deuxième concept défini; et sur vérification de ladite équivalence à la valeur vraie, retenir, pour le premier et le deuxième concepts, une désignation littérale générique; et, conserver la désignation littérale du premier et du deuxième concept défini comme synonyme, en référence à ladite désignation littérale générique. 6. Procédé selon la revendication 4 ou 5, caractérisé en ce que l'opération consistant à détecter et supprimer les redondances liées à la propriété de transitivité de la subsomption comprend au moins, pour tout concept défini courant de ladite hiérarchie de concepts: la détection de l'ensemble des concepts définis ou primitifs pères du concept défini courant; la détection de l'ensemble des concepts définis ou primitifs généralisants de chacun desdits concepts définis ou primitifs pères dudit concept défini courant; - la vérification qu'aucun des concepts définis ou primitifs généralisants de chacun desdits concepts définis ou primitifs pères dudit concept défini courant n'apparaît dans l'ensemble des concepts définis ou primitifs pères dudit concept défini courant. 7. Structure de données représentative, sous forme codée d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine, ladite hiérarchie de concepts comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique, caractérisée en ce que ledit treillis comporte au moins: une pluralité de noeuds, à chaque noeud du treillis étant associé un concept primitif; et un identifiant associé à chaque noeud du treillis et au concept primitif correspondant, ledit identifiant étant formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribuée pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis, chaque suite de nombres entiers définissant un chemin d'accès entre ledit concept primitif considéré et ledit concept universel par l'intermédiaire des concepts primitifs pères successifs, ledit identifiant incluant toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un desdits concepts primitifs pères audit concept universel, auxquelles est ajouté un nombre entier représentatif dudit concept primitif considéré. 8. Structure de données selon la revendication 7, caractérisée en ce que, pour une hiérarchie de concepts comportant en outre au moins un concept défini vérifiant une même relation d'ordre entre un concept universel et un concept vide, chaque concept défini possédant une définition sémantique, ledit treillis comporte en outre: un noeud, associé à chaque concept défini; et un identifiant associé à chacun des noeuds associé à un concept défini considéré, ledit identifiant étant formé par au moins une suite de nombres entiers, définissant chacune un chemin d'accès entre ledit concept défini considéré et ledit concept universel par l'intermédiaire des concepts primitifs et/ou définis pères successifs, ledit identifiant incluant toutes les suites de nombres entiers définissant chacune un chemin d'accès de l'un desdits concepts primitifs et/ou définis pères audit concept universel, auxquelles est ajouté un nombre entier représentatif dudit concept défini considéré. 9. Utilisation d'une structure de données selon la revendication 7 ou 8, caractérisée en ce que pour l'exécution d'un test de subsomption entre un premier et un deuxième concept primitif ou défini et entre un concept primitif ou défini du treillis de concepts, ledit test consiste à comparer les chemins d'accès des noeuds du treillis associés au premier respectivement au deuxième concept, la subsomption du deuxième concept (B) par le premier concept (A) étant vérifiée lorsque le chemin d'accès du noeud (A) associé au premier concept audit concept universel préfixe le chemin d'accès du noeud associé au deuxième concept (B). 10. Utilisation d'une structure de données selon la revendication 7 ou 8, caractérisée en ce que pour l'exécution d'un test de discrimination de l'ensemble des concepts généralisants d'un sous- ensemble de concepts de la hiérarchie de concepts ledit test consiste à discriminer tous les concepts qui subsument à la fois tous les concepts dudit sous-ensemble de concepts par application auxdits concepts d'un test de subsomption vérifié à la valeur vraie tel qu'aucun concept de l'ensemble des généralisants ne subsume un autre concept de cet ensemble des concepts généralisants. 11. Dispositif de codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts appartenant à une ontologie constituée par un ensemble de connaissances, de faits et de règles relatifs à un domaine comportant au moins des concepts primitifs vérifiant une relation d'ordre entre un concept universel et un concept vide, chaque concept primitif n'ayant aucune définition sémantique, caractérisé en ce que, outre une unité centrale de traitement et une mémoire de travail, ledit dispositif de codage comporte au moins: des moyens d'acquisition et de lecture de ladite hiérarchie de concepts sous forme d'un fichier numérique accessible au moins en lecture; des moyens de calcul et d'attribution à chaque concept primitif et au noeud du treillis associé à ce dernier d'un identifiant formé par au moins une suite de nombres entiers, à chaque concept primitif étant attribué pour seule valeur sémantique celle qui est associée à la position du noeud correspondant dans le treillis, chaque suite de nombres entiers définissant un chemin d'accès entre ledit concept primitif considéré et ledit concept universel par l'intermédiaire des concepts primitifs pères successifs, ledit identifiant incluant toutes les suites de nombres entiers définissant chacune un chemin d'accès entre l'un desdits concepts primitifs pères et ledit concept universel, auxquelles est ajouté un nombre entier représentatif dudit concept primitif considéré ; des moyens de mémorisation dudit treillis de concepts et de chaque identifiant associé à un noeud dudit treillis de concepts. 12. Dispositif selon la revendication 11, caractérisé en ce que celui-ci comporte en outre des moyens de calcul d'une saturation de ladite hiérarchie de concepts par exécution de tests d'inclusion sur lesdits concepts primitifs, pour établir toutes les relations d'inclusion implicites existant entre lesdits concepts primitifs de ladite ontologie et coder lesdits concepts primitifs sous forme d'un treillis de concepts primitifs. 13. Dispositif selon la revendication 12, caractérisé en ce que pour une hiérarchie de concepts appartenant à une ontologie comportant en outre des concepts définis, celui-ci comporte en outre des moyens de calcul d'une saturation de ladite hiérarchie de concepts pour exécution de tests de subsomption desdits concepts définis, avec détection des synonymes, ce qui permet, d'une part, d'introduire lesdits concepts définis dans ledit treillis de concepts primitifs, pour engendrer un corps de treillis de concepts, et, d'autre part, de coder le corps de treillis de concepts, incluant lesdits concepts primitifs et lesdits concepts définis sous forme d'un treillis de concepts, par attribution à chaque concept défini et au noeud du corps de treillis de concepts associé à ce dernier d'un identifiant compatible avec tout identifiant attribué à un ou plusieurs concepts primitifs 14. Produit de programme d'ordinateur enregistré sur un support de mémorisation, pour exécution par l'unité centrale de traitement d'un ordinateur ou par un dispositif dédié comportant une unité centrale de traitement d'ordinateur, caractérisé en ce que, lors de son exécution, ledit produit de programme exécute un codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts comportant au moins des concepts primitifs, selon l'une des revendications 1 à 3. 15. Produit de programme d'ordinateur enregistré sur un support de mémorisation, pour exécution par l'unité centrale de traitement d'un ordinateur ou par un dispositif dédié comportant une unité centrale de traitement d'ordinateur, caractérisé en ce que, lors de son exécution, ledit produit de programme exécute un codage, sous forme d'un treillis de concepts, d'une hiérarchie de concepts comportant des concepts primitifs et au moins un concept défini selon l'une des revendications 4à6. 16. Produit de programme d'ordinateur enregistré sur un support de mémorisation, pour exécution par l'unité centrale de traitement d'un ordinateur ou par un dispositif dédié comportant une unité centrale de traitement d'ordinateur, caractérisé en ce que celui-ci, lors de son exécution sur une structure de données selon la revendication 7, permet l'exécution d'un calcul de subsomption respectivement de plus petit commun généralisant entre le concept primitif ou défini par le calcul d'au moins un préfixe commun entre chemin d'accès entre le concept universel et chacun desdits concepts.