Brevet FR2872940A1 — publié le 20060113

"Système d'interrogation de bases de données hétérogènes et procédé d'interrogation" La présente invention concerne un système et un procédé d'interrogation de bases de données hétérogènes. Dans l'état de la technique, on connaît des systèmes de gestion de bases de données hétérogènes particulièrement dans le domaine des dossiers médicaux. On se reportera notamment au brevet WO-A1-03/065251 qui permet l'échange d'informations entre des bases de données hétérogènes au moyen de la io manipulation d'un opérateur d'équivalence sémantique. Dans cet état de la technique, on recherche les équivalences sémantiques sur des concepts décrits dans les données de deux bases distinctes. Le but de cette opération de mise en équivalence permet de travailler sur des requêtes à différents niveaux de granularités de sorte qu'une requête parmi plusieurs bases de données puisse reconstruire une cohérence entre des enregistrements de données de types différents. Par ailleurs, la gestion de très grandes bases de données, et de très grandes bases de données hétérogènes est un thème de développement important depuis plusieurs années et plusieurs publications font le point sur ces développements. Dans le document US-A-2002/0156756, au nom de Stanley, il est décrit un procédé et une structure de données d'objets moléculaires qui permettent de gérer des environnements de données hétérogènes. Dans ce document, l'application logicielle décrite permet d'unifier la présentation de l'utilisateur de diverses données. Il est décrit un ensemble de procédures qui permettent de réaliser: - une gestion de l'état de l'activité et du contenu en données persistantes; - une intégration fonctionnelle est un échange de données entre les bases de données, et des applications et les différentes composant est interfaces. Une telle solution nécessite que l'ensemble des données soit recomposé, alors que l'invention vise justement à traiter des données existantes et en conservant des systèmes de gestion de base de données préexistantes qui ne sont pas directement modifiés par l'invention. Dans le document US-A-2003/176929, au nom de Gardner, il est décrit une interface utilisateur qui comporte un ensemble source de données et une section de traitement qui permet à un utilisateur de sélectionner un traitement qui dépend de résultats io de recherche parmi les données de façon à produire un résultat de traitement. Dans cet état de la technique, l'hétérogénéité des données est un facteur qui réduit sa capacité et l'efficacité de traitement de recherche. Dans le document US-A-6.009.422, au nom de Cicarelli, il est décrit un procédé et un système pour exécuter une traduction sémantique ou une traduction de recherche qui utilise un langage de recherche généralisée dans une pluralité de bases de données hétérogènes. Dans le document, l'efficacité dépend de la grammaire généralisée qui permettrait de traduire en phrases contenues dans un langage de recherche généralisée, ce dont l'invention s'affranchit. Dans le document US-A-5.652.403, au nom de Lin, il est décrit un procédé et un système pour réécrire des bases de données sans réduire la capacité à exploiter la base de données lors de sa réécriture. Cependant, ce document conduit à une modification des bases de données hétérogènes pour permettre leur interrogation unifiée. L'avantage de la présente invention est de permettre de conserver les bases de données originales dans l'état où elles se trouvent et de permettre en même temps leur modification sans troubler les capacités d'interrogation des utilisateurs. Un tel état de la technique ne répond que très partiellement au problème de l'exploitation des bases de données hétérogènes. En effet, les bases de données de grande taille conduisent à la formulation d'un nombre considérable de requêtes ou même de classes de requêtes différentes. Le système d'interrogation des bases de données hétérogènes, présenté dans le document US-A-5.652.403, ne permet pas une interrogation souple par des personnes ne connaissant pas la structure des bases de données utilisées. La présente invention apporte aussi une solution efficace à ce problème de l'état de la technique. Un avantage de l'invention est de permettre de réduire le io coût total d'acquisition d'un système d'interrogation de bases de données hétérogènes en réutilisant le maximum d'infrastructures informatiques existantes, aussi bien matérielles que logicielles. Un autre avantage de l'invention est de permettre d'offrir de nouvelles possibilités d'utilisation aux utilisateurs d'un système d'interrogation de bases de données hétérogènes tout en réduisant le coût de développement et de maintenance du système d'interrogation de bases de données hétérogènes. Un tel gain est possible en termes de temps de gestion du système d'interrogation et en ressources humaines par rapport à un système d'information qui est en perpétuelle évolution au sein d'une institution ou entreprise. Un autre avantage de l'invention est de permettre l'emploi de technologies communes au monde Unix et au monde Windows ce qui assure une migration facile d'un monde à l'autre. II en résulte aussi qu'il est possible de réaliser des évolutions basées sur les composants logiciels caractéristiques de ces deux mondes, et lorsque ces composants évoluent, d'en faire bénéficier le système d'interrogation de bases de données hétérogènes de l'invention. Un autre avantage de la présente invention est de permettre une génération automatisée de l'interface informatique entre un utilisateur du système d'interrogation de l'invention et la masse des données interrogeables sans que l'utilisateur ait besoin de connaître la structure des données hétérogènes ni un langage de gestion de bases de données particulier. Un autre avantage de l'invention est de permettre de profiter d'une interface informatique, notamment de type web , ouverte vers l'extérieur, qui s'interface avec d'autres outils de l'intranet, et qui présente la simplicité d'utilisation caractéristiques des interfaces web. Un autre avantage de l'invention est de permettre d'exécuter rapidement des interrogations sur des masses io importantes de documents hétérogènes et d'effectuer des croisements sur ces données en un temps de calcul linéaire par rapport à la masse des données. Grâce à cette rapidité d'exécution, les utilisateurs peuvent reformuler et/ou affiner leurs questions autant de fois que nécessaire avant de sauvegarder les requêtes et leurs résultats. Un autre avantage de l'invention est de permettre aux utilisateurs de partager des connaissances de type pluridisciplinaire interrogeables dans le système d'interrogation de bases de données hétérogènes, ce qui facilite la recherche de solutions informatiques d'une part et la recherche de solutions à des problèmes caractéristiques du métier pratiqué dans l'entreprise dans laquelle le système d'interrogation de bases de données hétérogènes de l'invention est installé. Pour résoudre les problèmes précités et apporter les avantages annoncés, l'invention concerne un système d'interrogation de bases de données hétérogènes du genre comportant: - un jeu de bases de données, dont toutes ou certaines peuvent être dotées de leur propre système d'interrogation, un moyen pour générer une interaction entre un utilisateur et une pluralité de données du jeu de bases de données. Selon l'invention, le moyen pour générer une interaction entre un utilisateur et une pluralité de données du jeu de bases de données comporte: É Un module organisateur de données pour les associer par référence à une pluralité d'entités d'organisation; É Un module d'interrogation et de production de données de réponse qui comporte un moyen pour générer des formulaires de requête et produire des données de réponse. Selon un aspect de l'invention, le système d'interrogation io comporte un module de dépôt de données et un moyen de connexion au dit ensemble de données au moins à des dates de recopie et en ce que le module de dépôt de données comporte: - une partie de base de données relationnelles; - une partie de données arborescentes. Enfin l'invention concerne aussi un procédé d'interrogation de bases de données hétérogènes qui se caractérise par deux phases principales: - une première phase d'organisation des données par un administrateur et exécutée sur la base d'au moins un modèle de 20 structure des données à interroger; - une seconde phase d'interrogation des données par un utilisateur et exécutée sur la base de formulaires générés en fonction de l'organisation des données déterminée lors de ladite première phase d'organisation des données. D'autres avantages et caractéristique de la présente invention seront mieux compris à l'aide de la description et des figures annexées parmi lesquelles: - la figure 1 représente un schéma bloc dans un mode particulier de réalisation du système d'interrogation de l'invention; - la figure 2 représente un schéma de l'unité de dépôt de données du mode de réalisation du système d'interrogation de la figure 1; - la figure 3 représente un schéma de l'unité de structuration de données du mode de réalisation du système d'interrogation de la figure 1; - la figure 4 représente un métamodèle de données 5 adaptées à un système d'information hospitalier dans un exemple d'application du système d'interrogation de la figure 1; - la figure 5 représente un schéma bloc de l'unité d'interrogation du mode de réalisation du système d'interrogation de la figure 1; io - la figure 6 représente une partie d'un moyen mis en oeuvre dans le module d'organisation des données; - la figure 7 représente un mode de réalisation du système d'interrogation représenté lors de l'exécution d'une requête d'interrogation par un utilisateur. À la figure 1, on a représenté un schéma bloc d'un système d'interrogation de bases de données hétérogènes selon l'invention. À la figure 1, les bases de données 1 préexistent à l'établissement du système d'interrogation de l'invention. Elles peuvent être aussi créées ou augmentées, mises à jour et subir toute autre opération de maintenance directement à l'aide du système d'interrogation de l'invention. Le système d'interrogation de bases de données de l'invention comporte trois modules principaux: - un module 2 de dépôt de données issues de l'ensemble 1 25 de bases de données; - un module 3 d'organisation des données de façon à exécuter une structuration selon des entités d'organisation ainsi qu'il sera expliqué plus loin; - un module 4 d'interrogation qui permet à des utilisateurs 5, d'utiliser le système d'interrogation en produisant au moins une interrogation et en recevant en réponse un jeu de résultats d'interrogation. Selon un aspect essentiel de l'invention, les bases de données 1 peuvent être exploitées séparément du système d'interrogation de l'invention par les systèmes de gestion de bases de données qui existent déjà dans l'état de la technique ou d'autres encore. En particulier, l'avantage de l'invention est de fournir un moyen fédérateur de bases de données hétérogènes dont la coopération est difficile à cause des différences entre les diverses structures de données différentes, et entre les divers langages d'interrogation. Cependant, l'invention n'exigera pas la disparition des systèmes de gestion de bases de données, notamment de bases de données relationnelles, qui permettent to localement dans l'une des bases de données 1, de maintenir, selon des contraintes locales, le contenu et la structure des données. Afin de permettre une exploitation qui ne trouble pas le fonctionnement de tels systèmes de gestion indépendants de l'invention, le système d'interrogation de l'invention comporte le module 2 de dépôt de données qui permet de rapatrier les données sous forme de copies locales, ou encore sous forme de références comme des liens hypertextes. Les données ainsi déposées se trouvent à la disposition du reste du système d'interrogation. Le rapatriement des données peut se faire lors de périodes de non utilisation de l'ensemble des données 1, par exemple en dehors des heures de travail dans une organisation de bureau classique. II en résulte aussi que l'accès d'un utilisateur du système d'interrogation de l'invention à des données déposées dans le module 2 d'organisation ne trouble pas une modification d'une base de données de l'ensemble des données 1 par un producteur. Dans un mode de réalisation, le rapatriement des données est, au moins partiellement, effectué sous la forme d'une référence pour chaque unité de données accessible, comme une référence à l'adresse d'un document sur un serveur Web. Quand les données sont déposées dans le module 2 de recopie ou de dépôt de données, un module d'organisation 3 exécute une structuration 7 des données en entités d'organisation. Dans un mode de réalisation de l'invention, les entités d'organisation sont des métadomaines et des domaines qui reproduisent un schéma caractéristique d'arbres acycliques, schéma qui sera décrit plus loin. Une telle organisation est conduite par un Administrateur d'organisation, comme l'administrateur Ad, qui dispose d'une connexion RL1 au module d'organisation 3. Un tel Administrateur d'organisation peut accéder aux données, et particulièrement aux données recopiées dans le module 2, de sorte qu'il est en mesure de réaliser au io moins une phase initiale de structuration des données. A cette fin, il dispose d'une interface IG2 d'accès au module de dépôt de données 2 et une interface IG1 d'accès au module d'organisation 3 de sorte que des entités d'organisation des données recopiées soient produites ainsi qu'il sera décrit plus loin. L'Administrateur Ad est connecté aux deux ressources IG1 et IG2 par un réseau de liaison informatique RL1 qui peut être autonome du réseau d'information de l'entreprise particulièrement si la fonction d'administration du module d'organisation 3 est sous-traitée à un spécialiste extérieur à l'entité ou entreprise dans laquelle l'invention est mise en oeuvre. Selon un aspect de l'invention, le module de dépôt de données 2 et/ou le module d'organisation des données 3 comporte aussi une entité de type serveur client, notamment de type web, pour accéder à des données stockées dans des arborescences de répertoire. Dans un autre mode de réalisation, l'Administrateur Ad d'organisation des données peut accéder à une ressource de gestion des requêtes établies par les utilisateurs 5 à l'aide d'une autre liaison RL2 de façon à être en contact avec les utilisateurs 5 de l'entité ou entreprise dans laquelle le système d'interrogation de l'invention est mis en oeuvre. Un tel administrateur d'organisation Ad dispose alors d'une ressource permettant de coopérer avec les utilisateurs lors de l'organisation des données pour la fabrication des entités d'organisation implémentées dans le module d'organisation 3 et/ou une ressource pour exploiter des statistiques d'interrogation de façon à modifier les entités d'organisation en vue d'optimiser l'interrogation du module de dépôt de données 2 en termes de temps d'établissement de la s requête et/ou d'utilisation des caches ainsi qu'il sera décrit plus loin. Un Administrateur d'organisation constitue donc une entité technique qui peut gérer un ou plusieurs systèmes d'interrogation selon l'invention, indépendants ou interconnectés par exemple par le biais d'une connexion Web. io Une fois les données déposées, l'accès par un utilisateur 5 aux données de dépôt dans le module 2 se fait par l'intermédiaire du module 4 d'interrogation qui exploite un générateur de formulaires et un métamoteur de recherche en utilisant des éléments structurels qui correspondent aux entités d'organisation du module d'organisation 3. Le métamoteur de recherche, ainsi qu'il sera décrit plus loin, exploite plusieurs moteurs de recherche pour exécuter au moins une requête d'interrogation des données du dépôt de données 2. Quand les entités d'organisation sont des métadomaines et des domaines, les éléments structurels des formulaires de requêtes sont des métaclés et des clés primaires qui correspondent, lors de leur construction 9, à la structuration selon l'arbre acyclique décrit ci-dessus. Dans un mode de réalisation, l'ensemble des utilisateurs 5 est interconnecté par l'intermédiaire d'un réseau local et/ou d'un réseau télé informatique, comme le réseau Internet, ou encore d'un réseau intranet qui leur permet un accès 8 au système d'interrogation proprement dit. Particulièrement, au moins l'une (non représentée) des 30 machines utilisateurs 5 est dédiée à l'administration du système d'interrogation de bases de données hétérogènes de l'invention, et son rôle sera exposé dans la suite du texte. A la Figure 2, on a représenté un mode de réalisation particulier du système d'interrogation de la figure 1. À la Figure 2, les mêmes éléments que ceux de la figure 1 portent les mêmes numéros de référence. Le module de dépôt des données 2 exécute, lors de l'opération 6 (figure 1) un dépôt des données de l'ensemble des données 1. Des bases de données et autres données, comme des références à des données référençables de l'ensemble de données 1, et disposées dans l'ensemble de jeux de données 1, sont déposés dans le module 2 de dépôt et d'organisation de données. Dans un mode particulier de réalisation, le module 2 de io dépôt de données est composé en deux parties qui sont respectivement: - une partie de bases de données relationnelles 80; - une partie de données arborescentes Dans un mode particulier de réalisation, la partie de base de données relationnelles 80 du module de dépôt 2, dialogue avec un système d'interrogation de base de données relationnelles de type SQL implémenté dans un module 84 appartenant à l'unité 3 d'organisation des données. La partie de données arborescentes 81 dialogue avec un système serveur d'arborescences de fichiers utilisant une technologie de serveur Web comme Apache , IIS , etc. et implémenté dans un module 85 appartenant à l'unité 3 d'organisation des données. Dans le cadre de l'invention, les données arborescentes sont des données ou des unités de données structurées en arbre ainsi qu'il est connu dans l'état de la technique. Selon l'invention, le dépôt de données est exécuté tel quel dans une boîte à donnée constituée par un espace de mémorisation à base de disques durs qui peuvent être répartis sur un réseau informatique, de type Internet ou de type intranet. Les données ne sont donc pas modifiées ni même restructurées lors du dépôt. En poursuivant la description de la figure 2, on voit que l'ensemble de données originales 1 comporte quatre types différents de bases de données qui sont notamment: - des bases de données documentaires 70 parmi lesquels 5 on pourra trouver notamment des bases de données créées par l'application Lotus Notes (MARQUE DÉPOSÉE) ; - des bases de données relationnelle 72 parmi lesquels on pourra trouver notamment les bases de données créées par les applications Oracle (MARQUE DÉPOSÉE), Microsoft SQL Server io (Marque déposée), Sybase, MySQL, etc. ; - des bases de données constituée par les sites web se trouvant sur des réseaux intranet et ou sur un réseau Internet 74; et - des données 79 enregistrées dans des arborescences de fichiers comme des documents bureautiques et qui se trouvent par exemple sur des volumes de stockage partagés ou mis en relation par un réseau téléinformatique sur lequel sont connectées différentes machines des utilisateurs du système d'interrogation de l'invention. Pour réaliser le dépôt ou l'alimentation de la boîte de données 80 et/ou 81 de l'unité de dépôt de données 2, le système d'interrogation de l'invention dispose d'une pluralité de ressources informatiques capables de transférer les données. Particulièrement, en trouve successivement dans l'exemple d'application de la figure 2: - une application de type middleware comme Notrix (MARQUE DÉPOSÉE), qui permet de connecter les bases de données documentaires 70 à la partie 80 relationnelle de la boîte à données 2; - une application middleware comme Datastage (MARQUE DÉPOSÉE), qui permet de connecter les bases de données relationnelles 72 à la partie 84 relationnelle de la boîte à données 2. - une méthode développée selon une plate-forme de type C++ d'importation de sites web 75 qui permet de transférer les sites web a 74 dans la partie relationnelle 80 de la boîte à données 2; - une méthode développée selon une plate-forme de type C++ d'importation de sites web en arborescence dans la partie arborescente 81 de la boîte à données 2; - une méthode d'importation développée selon une plate-forme C++ d'importation de données arborescente dans la partie io arborescente 81 de la boîte à données 2; - une méthode d'importation de données arborescente de type web de la partie arborescente 81 de la boîte à données 2 vers la partie relationnelle 80 de la même boîte à données 2; - une méthode d'importation 83 de données arborescentes de type textuel de la partie arborescente 81 de la boîte à données 2 vers la partie relationnelle 80 de la boîte à données 2. Chacune de ces applications ou méthodes d'importation permet de recopier les données contenues dans le système de données 1 vers l'unité de dépôt de données 2. La reproduction de la structure des données initiales dans l'ensemble de données 1 assure, à l'aide du système d'interrogation de bases de données relationnelles 84, une exploitation utile et efficace des données ainsi structurées. Il n'y a donc pas de perte d'information dans la boîte à données, ni de données qui n'arrivent pas à trouver leur place dans un modèle unifié de données. De plus, l'identité de structure entre le système de production et le système d'interrogations qui sera étudiée plus loin, facilite la compréhension et donc la formulation des requêtes. Du fait de la recopie dans l'unité de dépôt de données 2, l'alimentation en données est découplée de l'organisation de l'ensemble des données dans un modèle conceptuel. Or un modèle unifié, inventé après la production des données d'un système de production déterminé, ne fonctionne correctement qu'en théorie. En pratique, il est nécessaire d'effectuer des réajustements qui mobilisent au moins un administrateur de chaque base de données de l'ensemble de bases de données 1. Par ailleurs, la répartition entre dépôt de données, d'une part, et organisation des données, d'autre part, conduit à renvoyer la tâche d'interrogation à un outil indépendant, qui n'intervient pas pendant la phase d'alimentation en données. Il est ainsi possible, ce qui est essentiel dans le cas d'une io entreprise ou d'un groupe d'entreprises disposant de nombreux systèmes de gestion de données hétérogènes, de modifier l'un ou l'autre des modèles de données pendant leur propre exploitation, sans que la fonction d'interrogation de l'ensemble des données 1 soit perturbé par une telle modification. Dans un autre mode de réalisation, il est possible de ne pas disposer d'un module de dépôt de données 2, mais au contraire de travailler directement sur l'ensemble de données 1. On va maintenant décrire le procédé utilisé pour faire fonctionner le système d'interrogation de l'invention. II comporte au moins deux phases qui peuvent être répétées. Le procédé comporte: - une première phase d'organisation des données par un administrateur et exécutée sur la base d'au moins un modèle de structure des données à interroger; - une seconde phase d'interrogation des données par un utilisateur et exécutée sur la base de formulaires générés en fonction de l'organisation des données déterminée lors de ladite première phase d'organisation des données. Dans la première phase d'organisation, une première étape d'organisation des données est déterminée sur la base d'au moins un modèle de structure des données à interroger de façon à associer de manière bijective au moins un jeu de données réelles à un élément de requête. Puis, une seconde étape est exécutée au cours de laquelle au moins un formulaire est généré avec des éléments de formulaire associés à des éléments de requête. Dans la seconde phase, lorsqu'il désire conduire une interrogation, un utilisateur sélectionne un formulaire et produit sur sa base au moins une requête, notamment en sélectionnant et en paramétrant de manière arbitraire chaque élément de formulaire. Puis, dans une seconde étape, la requête de l'utilisateur est transmise à un module d'analyse de la requête en fonction des éléments d'organisation de sorte que la requête io d'interrogation de l'utilisateur est décomposée en fonction des éléments de requête. Dans une troisième étape, l'organisation des données déterminée lors de la première phase est parcourue selon un schéma directionnel qui en est déduit et les références des réponses localisées dans le jeu de données interrogées sont alors enregistrées. Une fois les réponses enregistrées, dans une quatrième étape, les réponses sont alors collationnées de façon à être produites à l'utilisateur dans un formulaire de réponse qui génère ensuite un résultat final. En se reportant maintenant à la figure 3, on va décrire le fonctionnement d'un mode particulier de réalisation du module 3 d'organisation des données. La partie du système d'interrogation de l'invention qui se trouve en relation avec l'utilisateur comporte essentiellement une interface utilisateur 10 connecté par un canal bidirectionnel 20, 21 à un module de formulation de requêtes 11 connecté par un lien bidirectionnel 22 au module d'organisation 3. Le module d'organisation des données 3 travaille selon plusieurs niveaux d'organisation. Le niveau supérieur d'organisation est le métamodèle de données. Chaque métamodèle est constitué de métadomaines, puis de domaines de requête qui sont établies sur la base du générateur de formulaires 11. Des métadomaines et les domaines sont reliés entre eux grâce à un modèle de données. Les domaines de requête sont les entités de base en relation directe avec les sources de données qui se trouvent dans l'unité de dépôt de données 2. Le métamodèle est une structure de données fondée sur un graphe ou arbre dirigé acyclique, composé d'arêtes, de noeuds et de feuilles qui apparaissent notamment aux figures 3 et 4. Dans le métamodèle, une arête correspond à un modèle, un noeud correspond à un métadomaine et une feuille correspond à un domaine. Chaque métamodèle implémenté dans le système d'interrogation de l'invention, et à chaque fois qu'il est implémenté dans une application particulière de l'invention, est une classe particulière de arbre dirigé acyclique de type DAG io qui contient au moins un sommet. Un noeud est un point de départ pour naviguer sur l'ensemble de l'arbre, mais est lui-même inaccessible à partir des autres noeuds d'un niveau plus profond. En se reportant maintenant à la figure 4, on va décrire une implémentation d'un métamodèle simplifié appliqué à un système d'information médicale hospitalier. Le métadomaine de départ est constitué par le métadomaine patient 40 qui sera détaillé par ailleurs. À la figure 4, et métadomaines sont représentés par un ovale tandis que les domaines sont représentés par des rectangles. Le métamodèle du système d'information est composé par ungraphe à quatre niveaux. Après le niveau de départ, le second niveau comporte trois métadomaines 42 des hospitalisations, 43 des prélèvements de pathologie, 45 des prélèvements de biochimie. Dans le second niveau, le système d'information comporte deux domaines qui sont le domaine 41 des comptes-rendus de consultation 44, des compte-rendu de radiologie. Le troisième niveau comporte un seul métadomaine et sept domaines qui sont respectivement: - le métadomaine 46 des passages du patient en unité 30 médicale; - les domaines 47 des comptes-rendus d'hospitalisation, des fiches microscopiques 48, de tumorothèque 49, de diagnostic 55 et des comptes- rendus de cytométrie en flux 51, des compte-rendu de pathologie 52 et de l'hémathèque 53. Les arêtes du graphe permettent d'associer le métadomaine des hospitalisations 42 au métadomaine 46 et au domaine 47, le métadomaine 43 des prélèvements de pathologie aux quatre domaines 49, 51 et 52, le métadomaine des prélèvements de biochimie 45 aux domaines 50 et 53. Le quatrième niveau du métamodèle du système d'information hospitalier est composé des trois domaines reliés au métadomaine 46 et qui sont respectivement: - le domaine 54 des passages; io - le domaine 55 des diagnostics; - le domaine 56 des actes. Lorsque l'administrateur, lors de la première phase, première étape du procédé de l'invention, détermine l'organisation des données interrogeables, il détermine les métadomaines parmi: - les entités les plus importantes que l'entreprise qui exploiterait le système d'interrogation de l'invention manipule lors de son activité. Par exemple dans une banque des entités essentielles sont le client, le compte bancaire, les agences, etc. dans une usine de manufacture, des entités importantes sont les produits fabriqués, les fournisseurs, les clients, etc.. Dans un centre anticancéreux, des entités importantes sont le patient, l'hospitalisation, la tumeur à guérir, etc. L'administrateur du système d'interrogation de l'invention utilise un moyen de gestion des métadomaines qui lui permet de générer les métadomaines qui conviennent à son institution; - les entités auxquelles les utilisateurs du système d'interrogation souhaiteraient rapporter systématiquement tout résultat de requête si le temps de calcul le permet. On peut distinguer entre deux types d'entités d'organisation selon qu'elle dépend ou non d'une autre entité essentielle. Les métadomaines ne dépendant d'aucune autre entité se trouvent au sommet du graphe acyclique dirigé représentatif d'un métamodèle tandis que les autres métadomaines en constituent les noeuds du métamodèle défini à partir de la première entité. De la même manière, l'administrateur du système d'interrogation de l'invention dispose dans le système d'interrogation de l'invention d'un moyen de création de métamodèles doté d'un moyen pour hiérarchiser les métadomaines selon qu'ils sont indépendants ou dépendants d'autres métadomaines. Dans la plupart des applications du système d'interrogation de l'invention, on a constaté que le nombre de métadomaines indépendants est généralement io inférieur à cinq tandis que de la plupart des activités d'une même entreprise se trouvent limitées à quinze métadomaines dépendants. Dans le système d'interrogation de l'invention, le domaine est l'entité de base qui permet d'interroger directement des données dans l'ensemble 1 ou indirectement un ensemble de données déposées dans l'unité 2 de dépôt de données. Chaque domaine est enregistré dans le module 3. Le domaine en tant qu'entité de base est constitué par un ensemble d'objets informatiques et est entièrement autonome de sorte qu'il contient toutes les ressources et informations nécessaires pour interroger une source de données. Il comporte: - une ressource de connectivité vers la source de données comme un système d'interrogation de bases de données relationnelles; - toutes les métadonnées concernant la source de données, les caractéristiques des données, etc. - une interface visuelle permettant à un utilisateur de formuler des questions sur les données. A la figure 6, on a détaillé dans un schéma l'articulation entre un domaine et un métadomaine ainsi que l'architecture des moyens disposés notamment dans le module d'organisation des données 3 pour organiser les données sous l'action d'un administrateur d'organisation Ad, puis pour interroger les données organisées sous l'action d'une requête d'un utilisateur 5. Selon l'invention, l'analyse préalable des données de l'ensemble 1 a été effectué pour former un métamodèle de l'ensemble des données 1 vu par le système d'interrogation, de sorte que une pluralité de métadomaines soit définie avec des relations de dépendance disposées selon un arbre dirigé acyclique enregistré dans une mémoire convenable du module d'organisation de données 3. Chaque noeud de l'arbre dirigé acyclique 90 pour lequel une relation de dépendance est descendante constitue un métadomaine, tandis qu'un domaine est constitué par un noeud io terminal de l'arbre dirigé acyclique 90. II en résulte que chaque noeud de l'arbre enregistré dans la mémoire 90 du module d'organisation 3 des données est représentable par: - un métadomaine 91 défini par un nom ::Nom et une 15 métaclé ::Métacle notée par une relation dans l'arbre référé par mk; - un domaine 92 défini par un nom ::Nom et une clé primaire ::Cle_primaire noté par une relation dans l'arbre référé par Pk. Chaque domaine 92 est ainsi qu'on l'a indiqué plus haut couplé à une ressource de connectivité ::Connectivité 93, une ressource de visualisation des connexions ::Visualisation 94 et une ressource de pointage sur le modèle de données ::Modèle 95. Un métadomaine analysé par la ressource 91 du module d'organisation de données 3 permet donc de pointer chaque unité de données du jeu de données réelles 1 ou de sa recopie dans le module de dépôt 2 comme un point d'un noeud intermédiaire 96 de l'arbre dirigé acyclique 90. Le point est référé par la métaclé mk. De même, un noeud terminal 97 de l'arbre dirigé acyclique 90 réfère à une unité de données du jeu de données réelles 1 ou de sa recopie dans le module de dépôt 2 comme un point pointé par la clé primaire Pk. Chaque point du noeud représentatif d'un méta domaine 96 est connecté par la ressource de connectivité 93 par: - une première application bijective 99 d'analyse qui est parcourue lorsqu'un élément de requête est retourné du module de requêtes 4 de façon à parvenir à l'adresse d'un document ou de toute unité de données référencé par le système d'interrogation grâce au domaine 97 et à la ressource de gestion de domaines 92; - une seconde application bijective 98 de réponse qui io permet de remonter la référence de l'unité de données répondant à la partie de requête lors de la construction de la réponse. Dans un mode pratique de réalisation, un domaine correspond à une table relationnelle ou encore à une table relationnelle principale et à plusieurs tables relationnelles secondaires par exemple ayant des relations de 1 à N ou de N à 1 (dans le cas d'un thesaurus) avec la table principale. Le système d'interrogation de l'invention comporte un moyen pour générer des domaines c'est-à-dire des objets informatiques comportant: - une ressource de connectivité vers la source de données - un ensemble de métadonnées; - une interface visuelle de questions sur les données associées au domaine. Dans le système d'interrogation de l'invention, le modèle est une entité qui fait le lien entre les données concrètes des domaines et les différentes implications de métadomaines. Un modèle comportant essentiellement quatre composantes qui varient selon le type de modèle, mais dont le principe reste similaire. Les quatre composantes sont: - pk: l'ensemble des clés primaires du domaine; - mk: l'ensemble des métaclés correspondante; pk_mk: l'ensemble des liens allant des clés primaires vers les métaclés correspondante; - mk_pk: l'ensemble des liens allant des métaclés associées vers les clés primaires. Dans un mode pratique de réalisation du système d'interrogation de l'invention, un moyen de gestion dès modèle permet de créer, de mettre à jour, de gérer les composantes précitées d'un modèle de façon à configurer une relation bijective qui permet de pointer d'un métadomaine vers un domaine. Par la suite, dans un ordre d'organisation supérieur, on intègre un modèle particulier de données avec ses paires de relations lo bijectives. Le même schéma est appliqué pour configurer l'arête du graphe acyclique dirigé allant d'un métadomaine père vers un métadomaine fils. À cette fin, dans un mode pratique de réalisation du système d'interrogation de l'invention, un moyen de gestion des modèles permet de créer, de mettre à jour, de gérer les composantes précitées d'un modèle de façon à configurer une relation bijective qui permet de pointer d'un métadomaine vers un autre métadomaine dans un modèle c'est-à-dire, de configurer une arête particulière du graphe acyclique dirigé allant d'un métadomaine (représenté par un ovale à la figure 4) vers un autre métadomaine (représenté par un ovale à la figure 4). Le système d'interrogation de données hétérogènes de l'invention associe plusieurs outils qui donnent à son utilisateur les moyens pour centraliser, organiser et/ou interroger les données disposées dans le module de dépôt de données 2 ou directement dans le jeu de données 1. À cet effet, le système d'interrogation de bases de données de l'invention comporte un ou plusieurs outils parmi lesquels: - une unité de traitement conformée en interface homme machine 4 comportant une interface visuelle de type web, avec des formulaires d'interrogation et des tableaux de présentation des résultats, ainsi qu'un module de formulation des requêtes (GEN_FORM; Figure 5), qui permet de traduire les requêtes des utilisateurs en différents langages informatiques d'une part pour faire circuler les requêtes parmi les moteurs de recherche capables d'interroger les ressources des modules 1 ou 2 de données ou de dépôt de données, d'une part, et en langage humain d'autre part notamment pour produire les réponses à destination de l'utilisateur; - un métamoteur de requêtes (MM; Figure 5) capable d'appeler plusieurs types de moteurs de recherche, notamment de recherche relationnelle et de recherche textuelle, et d'effectuer des opérations ensemblistes sur les résultats provenant de ces lo différents moteurs; - une mémoire de cache (CR; Figure 5) qui réunit les questions déjà posées au système ainsi que leurs réponses respectives, de sorte que les questions déjà formulées peuvent être répondues plus rapidement lorsqu'elles se présentent dans un nouveau formulaire, produit notamment par le moteur de requêtes précité ; - un outil de posttraitement des résultats (GEN_REP; Figure 5) ; - une architecture proposant des outils de connexion d'applications externes, notamment des interfaces visuelles, des outils servant à produire et à maintenir les données du système d'information 1. Il en résulte que, doté de ces outils, le système d'interrogation de bases de données hétérogènes de l'invention est destiné à s'interfacer dans un intranet permettant à une entreprise, ou à un groupe d'entreprises, de réaliser toutes les opérations de gestion nécessaires sur l'ensemble des dossiers de données hétérogènes contenues dans la boîte de dépôt de données De la même manière, le système d'interrogation de 3o données hétérogènes de l'invention est destiné à être interfacé avec le monde extérieur par le biais de l'Internet au moyen de la gestion d'un ou plusieurs sites web. Le module 2 de dépôt de données apporte plusieurs avantages au système de l'invention. - Chaque groupe de données recopiées conserve sa structure définie par son modèle conceptuel de données initial qui lui est propre sans qu'il soit nécessaire de le contraindre sur un modèle unique comme c'est le cas dans d'autres systèmes de gestion de données hétérogènes. - Toutes les données se trouvent dans la boîte à données 2 sans perte d'information. - L'identité de structure entre le système de production qui a établi le jeu de données 1 et le système d'interrogation 4 io constitué par le système d'interrogation de l'invention facilite la compréhension de la structure. La maintenance des données est facilitée puisque les spécialistes des différents systèmes de production reconnaissent le modèle conceptuel de leurs propres données dans la boîte à données 2 permettant ainsi une maintenance ou une mise à jour par exemple au moyen du système d'alimentation. Dans un mode de réalisation, le module de dépôt de données 2 constitue par ailleurs un portail d'accès aux données dans la mesure où le regroupement des données peut être réelle ou virtuelle. Selon les besoins, on peut, ou bien recopier les données, ou bien les maintenir dans le système de production pour les consulter et les extraire au moment de l'interrogation. Dans un autre mode de réalisation, le module d'organisation des données 3 constitue par ailleurs un portail d'accès aux données dans la mesure où il contient associés aux domaines (92; Figure 6) les ressources de connectivité (93; Figure 6) qui permettent d'accéder de manière organisée aux données interrogeables par le système de l'invention. Un client Web est alors disposé pour activer les ressources de connectivité 3o de sorte que les données associées à chaque domaine interrogée directement, par exemple à l'aide d'une interface IG1 (Figure 1) par l'administrateur Ad ou un autre utilisateur équivalent, puissent être présentées sur une console de visualisation. Ainsi qu'il a déjà été explosé, le dépôt des données dans le module de dépôt de données 2 (Figure 1) n'est pas une mesure obligatoire. Cependant, le choix de recopier les données présentes dans le système de production ou de faire un dépôt de données, présente diverses avantages ou inconvénients qui sont les suivants. - Lorsque les données sont recopiées physiquement dans une partie de recopie physique (REC_PHY; Figure 5), on peut gagner en performances et éviter la surcharge du système de production. On évite ainsi de gêner les utilisateurs de l'ensemble de données 1 dans leur travail quotidien. Les surcharges du réseau téléinformatique des systèmes de production de données 1 sont réduites du fait que les interrogations passent par le système de l'invention et que donc cette tâche ne leur est plus majoritairement affectée. On peut aussi interroger les systèmes de gestion de bases de données qui ne sont pas bien adaptées aux requêtes complexes, comme par exemple les systèmes de gestion de données documentaires. Enfin les systèmes de production étant naturellement en permanente modification, on peut réaliser des transformations de données lors de l'alimentation ou au sein de l'ensemble de données 1. - Lorsque les données des systèmes de production sont directement accédées sans aucune recopie, grâce à la recopie de pointeurs comme des liens hypertexte dans un espace de recopie virtuelle de l'unité de dépôts de données 2 (REC_VIR; Figure 5), elles sont accessibles en temps réel ce qui permet une économie de l'espace de stockage dans l'unité de dépôt de données 2, une économie dans la durée de l'alimentation de la base de données 2 et une limitation des charges de planification de temps de travail et de bande passante sur le réseau téléinformatique qui permet de relier l'ensemble de données 1 au système de l'invention. Le système d'interrogation de bases de données hétérogènes de l'invention comporte dans un mode particulier de réalisation des moyens permettant à l'utilisateur de choisir entre: - optimiser la performance dans les requêtes; et - favoriser l'accès à l'information en temps réel; selon des objectifs que l'utilisateur assigne lors de la formulation d'une requête et ou configuration d'une session d'interrogation. On remarque que, dans cette solution, les données sont regroupées ou bien physiquement (REC_PHY; Figure 5) ou bien virtuellement (REC_VIR), mais en conservant toujours leur schéma de conception ou modèle initial. Le système d'interrogation de bases de données hétérogènes de l'invention comporte ensuite un moyen d'alimentation (M_RECOPIE; Figure 5) de l'unité ou module 2 de dépôt de données qui peut s'effectuer au moyen d'un planificateur (PLAN_REC; Figure 5) à intervalles réguliers, par exemple chaque jour ou chaque semaine, de la manière suivante. - Les données codées, maintenues dans l'ensemble de données 1 et provenant d'applications logicielles (non représentées) qui produisent des bases de données codées, notamment comme une application Lotus Notes, sont recopiées à l'aide d'un outil de migration de données codées vers différents systèmes de gestion de bases de données relationnelles, que ce soit sous forme physique (dans REC_PHY) ou virtuelle (dans REC_VIR). - Les données statiques de texte sont recopiées à partir d'un serveur web grâce à un robot web intégré au moyen de recopie M_RECOPIE (Figure 5) du module de dépôt de données 2 - Les données fortement structurées et qui sont destinés à se répéter dans plusieurs types de bases de données, comme par exemple les données génériques sur les patients (sexe, adresse, date de naissance, date de décès éventuel, ... ) sont regroupées sur un serveur de données génériques (serveur d'identité et de mouvements) qui constitue son propre système d'interrogation de bases de données relationnelles, qui ne sont pas recopiés physiquement dans REC_PHY (Figure 5), mais sont accessibles directement, par inscription dans la partie de recopie virtuelle REC_VIR (Figure 5) pour bénéficier du temps réel, notamment au niveau des mises à jour; - Des ressources documentaires sont recopiées à partir de sites web, en utilisant une ressource intranet ou une ressource Internet (parties de M_RECOPIE) en faisant utilisation du robot web précité. Le module de dépôt de données 2 est basé sur un système d'interrogation de bases de données relationnelles comme un io système mySQL qui présente l'avantage d'être largement répandu tout en conservant un degré élevé de performance et de fiabilité. À la figure 5, on a représenté des éléments permettant de décrire le fonctionnement du système d'interrogation de l'invention lors de deux modes différents de fonctionnement: - un premier mode d'alimentation du module de dépôt de données 2 en données fraîches; - un second mode d'exploitation des données déposées dans le module 2 de dépôt de données en utilisant l'unité de traitement 4. Périodiquement, selon une périodicité déterminée préférentiellement par un planificateur de recopie PLAN_REC associé au module de dépôt 2, l'unité de dépôt de données 2 est connectée à l'ensemble de données 1 par un réseau téléinformatique non représenté à la figure 1. Un tel réseau comporte un réseau de type intranet d'une part et, le cas échéant un réseau d'accès à des ressources web distantes sur un réseau Internet, d'autre part. Les données de base, ou originales sont enregistrées dans des bases de données constituées dans l'ensemble de données 1. Dans le premier mode ou mode d'alimentation, les données originales sont recopiées à l'aide d'un moyen de recopie de données M_RECOPIE. Selon le statut des données enregistrées 1, statut déterminé par un moyen de configuration non représenté, le moyen de recopie M_RECOPIE recopie les données ou bien physiquement sous forme de recopie physique dans une mémoire de recopie physique REC_PHY, ou bien sous forme de pointeurs où de liens hypertexte dans une zone de recopie virtuelle REC_VIR. L'opération de recopie, ou d'alimentation, ou de dépôt, de données exploite une pluralité de ressources informatiques qui sont décrites par ailleurs. Dans le second mode ou mode d'exploitation, un utilisateur non représenté active un générateur de formulaires GEN_FORM qui active un métamoteur MM décrit par ailleurs qui active alors le module de dépôt de données 2. Par ailleurs, selon le type des données interrogées, le générateur de formulaires GEN_FORM interroge l'espace de recopie virtuelle REC_VIR et/ou l'espace de recopie physique REC_PHY du module de dépôt de données 2 ainsi qu'une mémoire cache de requêtes CR qui contient les recherches précédentes mémorisées. Un formulaire de requête est transmis par l'intermédiaire de l'unité de structuration 3 qui sera décrite par ailleurs de sorte que, si les données physiques sont requise, elles sont retransmises directement à un générateur de réponses GEN_REP de l'unité de traitement 4. Si les données demandées sont dans la zone de recopie virtuelle REC_VIR, le module de dépôt de données 2 produit une connexion à l'ensemble de données 1 ou encore à un site web déterminé par le pointeur adressé dans la mémoire de recopie virtuelle REC_VIR et les données retrouvées sont alors acheminées, via le module d'organisation de données 3, directement de l'ensemble de données 1 vers le générateur de réponses GEN_REP de l'unité de traitement 4. La réponse à la requête produite par le générateur de formulaires GEN_FORM est alors compilée avec les réponses antérieures obtenues et enregistrée dans la mémoire cache de requêtes CR, et la réponse finale est rendue accessible à l'utilisateur au moyen du générateur de réponses GEN_REP sous la forme d'un écran de visualisation, d'une page web, ou encore d'une représentation imprimée ainsi qu'il est connu dans l'état de la technique. On va maintenant décrire succinctement un mode de réalisation du module d'organisation des données 3. Le but d'une telle unité est de permettre de retrouver aisément l'information et, à cette fin, le module d'organisation 3 permet de réaliser les opérations suivantes. - Le module d'organisation 3 comporte un moyen pour organiser et un moyen pour ranger les données contenues dans le module de dépôt de données 2 ou directement dans l'ensemble de données 1. io - Le module d'organisation 3 comporte un moteur de recherche pour exécuter des requêtes sur toutes les données quelles que soient leur type, qu'il s'agisse de textes, de données structurées ou non. - Le module d'organisation 3 comporte aussi un moyen pour générer des interfaces visuelles destinées à permettre à l'utilisateur de formuler des requêtes et d'exploiter leur réponse. - Enfin, le module d'organisation 3 comporte un outil de création de liens entre les données et des applications extérieures, notamment des outils statistiques ou d'autres systèmes de navigation ou de post- traitement de données. Le moyen d'organisation des données ou unité de structuration 3 comporte un moyen pour générer, par-dessus la structure préexistante des données, une couche supérieure d'organisation. Une telle couche d'organisation est de type objet, et elle est structurellement séparée de la couche relationnelle sous-jacente. Pour générer une telle couche objet, le moyen de création de la couche d'organisation comporte un moyen pour exécuter le regroupement de une ou plusieurs tables de requêtes en domaines de requête ainsi qu'un moyen de création de liens multiples entre les domaines de requête et leur regroupement en entités appelées métadomaines. Un domaine de requêtes est une entité de regroupement logique de données correspondant à une ou plusieurs tables disposées dans les mémoires REC_PHY et REC_VIR du module de dépôt de données 2. Le moyen pour générer un domaine de requêtes comporte un moyen de regroupement de données, de la réalisation explicite de ses données et un moyen pour annoter les données. Ainsi un domaine regroupe, en plus des données proprement dites, des métadonnées qui décrivent la nature de l'information: - non explicite, - description, - type de données, io - date de validité, etc. Un administrateur de domaines exploite un ordinateur connecté RL2 (Figure 1) au réseau téléinformatique du genre de l'administrateur Ad (Figure 1). Un tel administrateur assiste les utilisateurs connectés au réseau téléinformatique pour la définition des domaines une interface visuelle IGI d'administration pour aider à classer et générer les domaines en fonction des préconisations des utilisateurs. Un moyen d'administration de domaines, qui peut être géré par l'administrateur de domaines comporte: - un moyen pour définir les domaines, - un moyen pour réaliser l'agencement des domaines, - des moyens pour définir et gérer une pluralité d'entités d'organisation comprenant: * domaines et les types d'objets qu'un domaine comporte 25 (ressources de connectivité, visualisation; modèle, clé primaire) : * métadomaines; * métamodèles; * éléments de formulaires. Dans un mode préféré de réalisation, le générateur d'assistance à la création de domaines comporte un moyen pour réaliser un regroupement des données et des domaines, regroupement identique à celui des systèmes de production. Cette approche présente plusieurs avantages. - L'utilisateur retrouve les informations issues de son propre système de production avec un agencement identique. - L'utilisateur profite de la réflexion effectuée pendant la conception du système de production sur le regroupement des données. - Les données ont une signification différente à la limite une sémantique dépendant de leur provenance, selon le domaine spécifié. Par exemple en oncologie, le terme nécrose ne signifie pas la même chose selon qu'il est utilisé en clinique, en io pathologie ou en radiologie. Il résulte que le terme nécroses oriente la recherche en fonction du domaine qui a été spécifiée pour établir la requête. Un avantage de la présente invention est de rendre possible la création de domaines alors que les systèmes de gestion de bases de données relationnelles sont hétérogènes, locaux ou distants dans l'ensemble des données 1. Le module d'organisation de données 3 comporte des moyens pour mettre en relation des données présentes invariablement dans l'ensemble original de données 1 ou dans le module de dépôt de données 2. Le module d'organisation de données 3 comporte aussi un moyen de gestion de métadomaines. Un métadomaine au sens de l'invention est un objet qui permet de relier des entités qui se trouvent dans le module de dépôt de données 2, qui présente une même sémantique tout en étant originaire de différents systèmes de production de données. Ces entités, qui peuvent provenir de divers champs de bases de données ont vocation à se retrouver dans des domaines de requêtes différents. Pour être associées dans un métadomaine, les entités de données qui servent à composer un métadomaine reçoivent une corelation au delà de leur relocalisation ou de leur origine hétérogènes. Pour réaliser le moyen de gestion de métadomaines ce dernier comporte un premier moyen d'identification d'entités communes et de déclaration dans le module de dépôt de données 2 ou dans l'ensemble de données 1 en tant qu'entité sémantique destinée à recevoir une corelation. Le premier moyen d'identification d'entités communes comporte un moyen de saisie d'entité commune et un moyen de déclaration d'une corelation entre plusieurs entités communes entrées dans un moyen mémoire prévu à cet effet dans le module de dépôt de données 2 par le moyen de saisie d'entité commune. Le moyen de gestion de métadomaines comporte ensuite un second moyen pour identifier individuellement dans chacun des domaines, qui auraient étédésignés dans le moyen de gestion de domaine, l'entité ayant la sémantique définissant la corelation quelle que soit son nom affecté ou le typage de données. Dans le cas de l'application du système d'interrogation de l'invention à un traitement des dossiers de divers patients traités dans un hôpital, on considère que chaque patient est identifié par un numéro de dossier unique. Les différents systèmes de production de base de données comportent des tables dont chacune comporte une colonne contenant l'entité caractéristique du numéro de dossier unique. Pour obtenir une corelation des données enregistrées dans les différentes bases de données, comme des données cliniques et, des images de radiologie, des tumeurs stockées dans la tumorothèque ainsi que des données du serveur d'identité et de mouvements, il est possible d'utiliser ou de construire une corelation, du fait même que toute ces données concernent le même patient ou la même liste de patients. Cependant l'entité qui stocke le numéro de dossier unique porte un nom différent dans chacun des systèmes de production de données. Par exemple, dans un premier système d'interrogation de bases de données, l'entité numéro de dossier peut- être labellisée NumDossier tandis que dans un second système d'interrogation de base de données, cette même entité peut être labellisée N_Doss . Le problème se multiplie avec plus de deux systèmes de gestion de bases de données. De plus, leur typage de données est rarement identique et peut être un nombre entier, une chaîne de caractères ou encore une chaîne de caractères de longueur définie, ... et se trouve ainsi recopié dans le module de dépôt de données 2 sous des formes hétérogènes inaccessibles de manière unifiée. Par ailleurs, selon que certaines données se trouvent recopiées physiquement dans la mémoire de recopie physique ou virtuellement dans la mémoire de recopie virtuelle, leur accès ne prend pas le même mode. Pour résoudre ce genre de problèmes, le second moyen du moyen de gestion de métadomaines permet d'identifier io individuellement les domaines concernés par la même sémantique. En l'occurrence, le second moyen d'identification individuelle de domaine permet de déclarer une unité sémantique: ici le patient et de déclarer ensuite la clé permettant d'identifier un patient: le numéro de dossier . Ensuite, lorsque le système d'interrogation de l'invention permet de travailler en mode d'interrogation comme il a été décrit par ailleurs. Le second moyen de gestion de métadomaines parcoure les différents domaines déjà définis pour retrouver les entités correspondantes, dans le cas présent NumDossier , N_Doss , ... et on les déclare comme ayant la même sémantique que la métaclé nouvellement définie. L'unité sémantique patient regroupe ainsi plusieurs domaines gérés par l'unité de structuration 4 sur le critère retenu du numéro de dossier . Le module 3 d'organisation des données comporte par ailleurs un moyen de gestion de métaclés qui permet notamment de réaliser des métadomaines par regroupement de plusieurs domaines de requêtes. Dans l'exemple précité, la métaclé est constituée par N_Doss tandis que le métadomaine est constitué par patient . Le concept de métaclé utilisé par la présente invention obéit à un certain nombre de règles qui sont maintenant décrites. - La métaclé prend en compte l'ensemble des tables relationnelles concernées par la corelation à laquelle elle est associée et il n'est pas nécessaire que son nom de champ soit identique ni que son typage de données soit le même. - Dans un mode particulier de réalisation, les métadomaines sont produits sur la base de l'interface Perl DBI du domaine public et peuvent regrouper des tables relationnelles de systèmes de gestion de bases de données relationnelle hétérogènes, comme Oracle, Access, ... (marques déposées). De plus, le moyen de gestion des métaclés coopère avec un moyen de création de liens. io - La métaclé générée par le moyen de gestion de métaclés est une clé étrangère créant des relations aussi bien entre les ressources de données locales que distantes, au moyen de connexions de type Intranet ou de type Internet. La métaclé et son moyen de gestion coopèrent avec un moyen de création de relations multiples sans modification physique de la structure des données contenues dans le module 2 de dépôt de données, tandis que toute cette information est stockée dans la couche objet, qui se trouve au- dessus de la couche physique relationnelle. Il en résulte que le métadomaine associé à une métaclé générée par le moyen de gestion de métaclés de l'invention se constitue comme une structure orientée objet permettant de créer des liens entre des entités relationnelles du système d'interrogation de bases de données relationnelles hétérogènes, installé sur des plates-formes hétérogènes, distantes ou locales. Le moyen de gestion de métadomaines de l'invention permet ainsi d'enrichir le modèle relationnel en lui ajoutant les bénéfices du modèle objet . Le système de l'invention, dans un mode particulier de réalisation, comporte donc un moyen de construction de réseaux dont l'entrée est connectée au moyen de gestion de métadomaines de l'invention et au moyen de gestion des métaclés associé, pour construire un réseau complexe de relations et de contextes entre entités relationnelles. On va maintenant décrire une application des concepts précités et de leurs moyens de gestion pour un système d'information hospitalier particulier. Le système d'information hospitalier permet de suivre le traitement médical de patients qui sont atteints de tumeurs et qui sont hospitalisés dans des unités de soins. Les utilisateurs du système d'interrogation de l'invention, qui sont des membres du personnel soignant exploitent les moyens précités pour définir différentes entités en tant que métaclés regroupant les mêmes données de plusieurs io façons en divers métadomaines. Des données de spécification ou d'identification du patient permettent d'établir un métadomaine caractéristique du patient, car de nombreuses données le concernant peuvent être mises en relation entre elles, ce qui a été précédemment décrit comme une corelation. Les données de spécification d'une tumeur d'un patient permette d'établir un métadomaines caractéristique en sachant que le patient peut présenter plusieurs tumeurs différentes et qui n'est pas toujours facile de relier les éléments ou données successives à une tumeur, surtout lorsque le patient présente plusieurs tumeurs, synchrones ou successives. Les données caractéristiques d'un prélèvement ou biopsie sur un patient permettent de générer un métadomaine. Des données décrivant une hospitalisation, prise comme un épisode de soins particulier, permettent de générer un nouveau métadomaine. D'une manière plus générale, des données descriptives d'un épisode de soins permettent de générer un métadomaine si on considère la phase des consultations diagnostics, la phase de traitement, les consultations et actes entrant dans le cadre d'une surveillance, le bilan, puis le traitement d'une récidive. La particularité de ce métadomaine est que sa métaclé n'est pas une entité alimentée directement par le système d'information. Mais, dans un tel cas, le système d'interrogation de l'invention comporte un moyen de calcul d'une entité relationnelle définissant un métadomaine associé à une métaclé caractéristique d'un épisode de soins. Un tel moyen de gestion de métadomaines constitue un moyen de gestion de métadomaines virtuels. Des données caractéristiques d'une phase de la maladie, si on considère les phases suivantes: - phase de maladies locales, - phase de récidive locale, - phase de maladie métastatique, - phase palliative, permettent aussi de générer un autre métadomaine. io Plus généralement, le système d'interrogation de l'invention comporte des moyens de gestion de différents métadomaines: - un moyen de gestion de métadomaines réels: un tel moyen de gestion permet de suivre et de regrouper les relations entre entités concernant le patient, un prélèvement biologique ou une hospitalisation. - un moyen de gestion de métadomaines virtuels: un tel moyen de gestion coopère avec un moyen de calcul, notamment un moyen de calcul susceptible de réaliser une consolidation de données acquises successivement dans le temps selon des séquences permettant de normaliser les données numériques à l'aide d'une opération de calcul en fonction de critères de programmation déterminés par l'utilisateur du système d'interrogation de l'invention. À titre d'exemple, le métadomaine hospitalisation est défini par un numéro d'hospitalisation, qui sert de métaclé, à laquelle on peut attacher: - des informations administratives: actes et mode d'entrée, unité d'hospitalisation, etc. ; - des informations statistiques sur le patient: nom, âge, sexe; - des informations médicales codées de diagnostic et actes pour des problèmes de compatibilité avec des systèmes de gestion et d'indemnisation des assurances sociales; - des informations calculées: durée de séjour, coût du séjour, ... ; - des informations textuelles: à chaque séjour, un compte-rendu d'hospitalisation est rédigé en texte libre éventuellement de manière structurée; - des informations sur la production d'un acte et sur la consommation de médicaments, de transfusion, ... - des informations sur les soins administrés, recueillis dans un dossier de soins informatisés, comme contenues dans une carte de santé à microcircuit. On va maintenant décrire un mode particulier de réalisation de l'unité de structuration ou module d'organisation des données 3 du système d'interrogation représenté à la figure 1. Le mode de réalisation décrit ci-après utilise des ressources logicielles constituées par des classes d'objets qui sont répartis en deux catégories: - une première classe d'objets liés à l'organisation structurelle des données; - une seconde classe d'objets associés à la création des interfaces visuelles. La première classe d'objets permet de réaliser un moyen pour générer un métamodèle ainsi qu'il a été écrit par ailleurs. Dans ce mode particulier de réalisation, le métamodèle est constitué par un objet de classe EPI::métamodel pour référer à un objet selon la sémantique du langage informatique C++ ou encore du langage informatique Java. Un tel objet de classe contient un autre objet de classe Tree::DAG_Node qui est un objet disponible dans les bibliothèques associées au langage Java et qui sont librement disponibles au public, le conteneur de cet objet publique héritant de toutes les fonctionnalités de base pour gérer un graphe dirigé acyclique. Lors de la création d'un objet de type de métamodèle en utilisant l'objet de classe EPI::métamodel de l'invention, le sommet, les noeuds et les feuilles du métamodèle représenté par le graphe dirigé acyclique généré contiennent simplement les identifiants des métadomaines ou domaines auxquels ils font référence. Pour réaliser un métadomaine, le moyen pour générer un métamodèle comporte un moyen de gestion de métadomaines et un moyen pour appeler un objet de classeEPl::MétaDomain qui contient toutes les métadonnées liées au métadomaine réalisé, comme par exemple le nom explicite de la métaclé. Pour réaliser un métadomaine de noeud, le moyen pour générer un métamodèle comporte un moyen de gestion de io métadomaines de noeuds et pour appeler un objet de classe EPI::Model qui contient le modèle de données, une structure de données particulières modélisant la relation bijective entre ses propres métaclés et celle des métadomaines parents ainsi qu'il a été explicité par ailleurs. Pour réaliser un domaine, le moyen pour générer un métamodèle comporte un moyen de gestion de domaines et pour appeler une pluralité d'objets de classe qui sont respectivement: - un objet de classe EPI::Domain qui contient toutes les métadonnées liées au domaine, comme par exemple les noms explicites de tous les champs, leurs typage, etc. ; - un objet de classe EPI::DBase qui assure la connectivité avec les systèmes de gestion de bases de données relationnelles vers la ou les tables relationnelles auxquelles le domaine fait référence. Dans un mode particulier de réalisation, l'objet de classe concerné utilise un objet de classe DBI qui est un code public qui assure une connectivité compatible avec un certain nombre de systèmes de gestion de bases de données relationnelles comme Oracle, Sybase, - un objet de classe EPI::Model qui contient une structure 3o de données particulières modélisant la bijection entre les clés primaires et les métaclés du métadomaine parent; - au moins un objet de classe EPI::Index::* pour interroger des champs dans les données déposées dans l'unité de recopie 2 et que le système SQL ne peut interroger efficacement et ces objets de classe seront discutés plus avant; - un objet de classe EPI::Form qui comporte: - - un moyen pour générer automatiquement une interface visuelle permettant à un utilisateur de formuler une requête pour interroger les champs du domaine; - - un moyen pour analyser la requête formulée par l'utilisateur et la transcoder en un langage lisible par un moteur implémenté dans l'unité d'interrogation 4; io - un objet de classe EPI::DomainStats, qui comporte: - - un moyen pour générer des statistiques sur les données du domaine; - un moyen pour stocker les statistiques générées; - - un moyen pour gérer un dictionnaire de données de statistiques générées et stockées dans l'objet de classe. On va maintenant préciser les objets de classe EPI::Index::*. Dans un certain nombre de situations de requête, la table relationnelle contient des champs dont le contenu ne peut être interrogé efficacement avec un moteur de type SQL. Pour permettre l'interrogation de ces champs, la collection de classes EPI::Index::* comporte un moyen pour créer des index spécialisés et des moyens pour interroger de manière efficace un champ non interrogeable à l'aide d'un moteur SQL. Un domaine généré par le moyen pour générer des domaines de comporter un ou plusieurs objets de ce type. Parmi les objets de classe index , EPI::Index::*, une classe EPI::Index::Regex comporte des moyens pour indexer, et pour interroger un champ contenant du texte en utilisant un langage de calcul des expressions régulières Regex. Dans un mode particulier de réalisation, les moyens pour interroger un champ contenant du texte et contenu dans la classe EPI::Index::Regex, coopère avec un système de mémoire cache pour supporter d'importantes montées en charge. II en résulte qu'en utilisant la mémoire de cache, le moyen pour interroger un champ contenant du texte peut effectuer des recherches de phrases ou de motifs textuels en relation notamment avec la définition d'un ou de plusieurs domaines, ainsi qu'il a déjà été spécifié. La seconde classe d'objets permet de réaliser un moyen pour générer une interface visuelle ainsi qu'il a été décrit par ailleurs. Le moyen pour générer une interface visuelle de ce mode particulier de réalisation comporte un objet de classe EPI::Form qui exécute ou implémente un moyen pour générer un formulaire io de requêtes permettant d'interroger un ensemble cohérent de données, structuré par l'unité de structuration de données 3. Pour mettre en oeuvre un moyen pour générer un formulaire de requête, l'objet de classe EPI::Form comporte un moyen pour appeler ou générer une pluralité d'éléments de formulaires d'un champ spécifique du domaine généré par un objet de classe EPI::FormElement qui est responsable de l'interrogation et/ou de l'affichage d'un champ spécifique du domaine. Les objets de cette classe ne sont pas spécifiques d'un champ particulier, mais d'un typage de données et d'un type d'interrogation ou d'une classe d'interrogation particulière. Il en résulte que les objets de classe EPI::FormElement sont indépendants des données. Chaque objet de classe EPI::FormElement comporte: - un moyen pour interroger un ou plusieurs types de données relationnelles (types numérique, date, champ textuel, etc.) ; - un moyen pour interroger directement les données en langage SQL; - un moyen pour interroger les index spécialisés créés par le système d'interrogation pour l'interrogation d'un champ, par exemple un index textuel interrogeable avec l'objet de classe index EPI::Index::Regex; - un moyen pour représenter graphiquement un élément de formulaire sur une interface visuelle, comme une page html ; - un moyen pour interagir avec l'utilisateur qui remplir à l'élément de formulaire afin de formuler sa question, par exemple en utilisant des objets appelés dans des balises html insérés dans une page html servant de réceptacle au formulaire; - un moyen pour analyser la question représentée par l'utilisateur sous forme d'une page html et pour générer la sous requête correspondante en langage moteur ainsi qu'un langage naturel. A la figure 7, on a représenté une forme du système io d'interrogation de l'invention lorsqu'il est exploité par un utilisateur 5 (Figure 1). L'utilisateur 5 exploite une interface visuelle depuis un poste informatique connecté au réseau informatique du système d'interrogation. L'interface visuelle 100 adresse un générateur de formulaires qui est alimenté par une mémoire 105 d'éléments de formulaires qui a été préalablement composé d'une part lors de la configuration du système d'interrogation et d'autre part lors d'une phase d'administration à l'aide du module d'organisation 3, par l'administrateur Ad (Figure 1) sur la base du modèle des données retenus par l'administrateur. La requête composée à l'aide du générateur de formulaires 101 est alors adressée au métamoteur 102 ainsi qu'il a été précédemment décrit et la requête composée est adressée à un jeu de caches 84 et/ou à jeu de moteurs de requêtes 103 ainsi qu'il a été précédemment exposé à l'aide de la figure 5. La requête est alors exploité par le module d'organisation 3 par sa partie Utilisateur 105 de sorte que l'organisation des données sous forme d'arbre acyclique dirigé réalisée par l'organisation en entités d'organisation soit alors appliquée à la requête sous forme de parcours des noeuds de l'arbre selon les applications bijectives de descente de requête allant des métadomaines aux domaines, puis de remontée des réponses allant des domaines vers les métadomaines jusqu'à offrir une réponse sous forme d'une liste de références de documents ou d'autres unités de données qui sont référencées ou bien dans le Module de dépôt 2 ou bien dans le jeu de données 1. La réponse est alors rendue disponible à la fois dans le jeu de caches 104 et au niveau de l'interface visuelle 100. REVENDICATIONS 1 - Système d'interrogation de bases de données hétérogènes du genre comportant: - un jeu (1) de bases de données, dont toutes ou certaines peuvent être dotées de leur propre système d'interrogation, - un moyen pour générer une interaction entre un utilisateur et une pluralité de données du jeu de bases de données, caractérisé en ce que le moyen pour générer une interaction entre un utilisateur et une pluralité de données du jeu (1) de bases de io données comporte: É Un module (3) organisateur de données pour les associer par référence à une pluralité d'entités d'organisation; É Un module (4) d'interrogation et de production de données de réponse qui comporte un moyen pour générer des formulaires 15 de requête et produire des données de réponse. 2 Système d'interrogation selon la revendication 1, caractérisé en ce qu'il comporte un module (2) de dépôt de données et un moyen de connexion (6) au dit ensemble de données (1) au moins à des dates de recopie et en ce que le module (2) de dépôt de données comporte: - une partie de base de données relationnelles (80) ; - une partie de données arborescentes (81). 3 - Système d'interrogation selon la revendication 2, caractérisé en ce que la partie de base de données relationnelles (80) du module de dépôt (2) comporte un moyen pour dialoguer avec un système d'interrogation de base de données relationnelles de type SQL implémenté dans un module (84) appartenant à l'unité (3) d'organisation des données. 4 - Système d'interrogation selon la revendication 2, caractérisé en ce que la partie de données structurées en arbre (81) comporte un moyen pour dialoguer avec un système d'interrogation d'arborescence implémenté dans un module (85) appartenant au module (3) d'organisation des données. Système d'interrogation selon l'une quelconque des revendications 2 à 4, caractérisé en ce qu'il dispose d'une pluralité de ressources informatiques capables de transférer les données de l'ensemble de données originales (1) vers l'unité de dépôt de données (2), parmi lesquelles: une application middleware, qui permet de connecter les bases de données documentaires (70) à la partie (80) relationnelle de la boîte à données (2) une application middleware, qui permet de connecter les bases io de données relationnelles (72) à la partie (84) relationnelle de la boîte à données (2) une méthode d'importation de sites web (75) qui permet de transférer les sites web (74) dans la partie relationnelle (80) de la boîte à données (2) une méthode d'importation de sites web en arborescence dans la partie arborescente (81) de la boîte à données (2) ; - une méthode d'importation de données arborescente dans la partie arborescente (81) de la boîte à données (2) ; - une méthode d'importation de données arborescente (5) de type web de la partie arborescente (81) de la boîte à données (2) vers la partie relationnelle (80) de la boîte à données (2) ; une méthode d'importation (83) de données arborescentes de type textuel de la partie arborescente (81) de la boîte à données (2) vers la partie relationnelle (80) de la boîte à données (2). 6 Système d'interrogation selon la revendication 1, caractérisé en ce que l'association par référence à une pluralité d'entités d'organisation du module d'organisation des données (3) est exécutée par un moyen de gestion d'au moins un métamodèle de données, constitué de métadomaines, puis de domaines de requête qui sont établis sur la base du générateur de formulaires (11), sous forme d'une structure de données fondée sur un arbre dirigé acyclique de type DAG . 7 Système d'interrogation selon la revendication 6, caractérisé en ce qu'il comporte un moyen de gestion des métadomaines. 8 Système d'interrogation selon la revendication 7, caractérisé en ce qu'il comporte un moyen de création de métamodèles pour hiérarchiser les métadomaines selon qu'ils sont indépendants ou dépendants d'autres métadomaines. 9 - Système d'interrogation selon la revendication 8, caractérisé en ce que le moyen de création de métamodèles io comporte des ressources et informations nécessaires pour interroger une source de données parmi lesquelles: - une ressource de connectivité (93) vers la source de données comme un système d'interrogation de bases de données relationnelles. - une ressource de pointage (95) sur un modèle prédéterminé ; - une interface visuelle (94) permettant à un utilisateur de formuler des questions sur les données. - Système d'interrogation selon la revendication 9, caractérisé en ce qu'il comporte un moyen pour générer des 20 domaines comportant: - une ressource de connectivité vers la source de données; - un ensemble de métadonnées; - une interface visuelle de questions sur les données associées au domaine. 11 - Système d'interrogation selon l'une des revendications 9 ou 10, caractérisé en ce qu'il comporte un moyen de gestion des modèles pour créer, mettre à jour, gérer les composantes d'un modèle de façon à configurer une relation bijective qui permet de pointer d'un métadomaine vers un domaine dans un modèle. 12 - Système d'interrogation selon l'une quelconque des revendications 9 à 11, caractérisé en ce qu'il comporte un ou plusieurs outils parmi lesquels: - une unité de traitement conformée en interface homme machine (4) comportant une interface visuelle de type web, avec des formulaires d'interrogation et des tableaux de présentation des résultats, ainsi qu'un module de formulation des requêtes (GEN_FORM; Figure 5) ; - un métamoteur de requêtes (MM; Figure 5) capable d'appeler plusieurs types de moteurs de recherche, notamment de recherche relationnelle et de recherche textuelle, et de fusionner les résultats provenant de ces différents moteurs. une mémoire de cache (CR; Figure 5) qui réunit les questions déjà posées au système ainsi que leurs réponses respectives, de sorte que les questions déjà formulées peuvent être compilées plus rapidement lorsqu'elles se présentent dans un nouveau formulaire, produit notamment par le moteur de requêtes précité ; un outil de post- traitement des résultats (GEN_REP; Figure 5) ; - des outils de connexion d'applications externes. 13 Système d'interrogation selon la revendication 12, caractérisé en ce qu'il comporte un moyen pour s'interfacer dans un intranet. 14 - Système d'interrogation selon la revendication 12, caractérisé en ce qu'il comporte un moyen pour s'interfacer avec le monde extérieur par le biais de l'Internet au moyen de la gestion d'un ou plusieurs sites web. 15 - Système d'interrogation selon la revendication 1 ou 6, caractérisé en ce que le module d'organisation des données (3) comporte un moyen pour générer, par-dessus la structure préexistante des données (1 ou 2), une couche supérieure d'organisation, de type objet, structurellement séparée de la couche relationnelle sous-jacente. 16 - Système d'interrogation selon la revendication 15, caractérisé en ce que le moyen de création de la couche d'organisation comporte un moyen pour exécuter le regroupement de plusieurs tables de requêtes en domaines de requête ainsi qu'un moyen de création de liens multiples entre les domaines de requête et leur regroupement en entités appelées métadomaines. 17 - Système d'interrogation selon la revendication 6, caractérisé en ce qu'il comporte un moyen d'administration de domaines, qui comporte au moins: - un moyen pour définir les domaines, - un moyen pour réaliser l'agencement des domaines, - des moyens pour définir et gérer une pluralité d'entités d'organisation comprenant: io * domaines et les types d'objets qu'un domaine comporte (ressources de connectivité, visualisation; modèle, clé primaire) : * métadomaines; * métamodèles; * éléments de formulaires. 18 - Système d'interrogation selon la revendication 6, caractérisé en ce que l'unité de structuration (3) comporte aussi un moyen de gestion de métadomaines qui comporte un premier moyen d'identification d'entité commune et de la déclaration dans l'unité de dépôt de données (2) et/ou le jeu de données (1) en tant qu'entité sémantique destinée à recevoir une corelation. 19 - Système d'interrogation selon la revendication 18, caractérisé en ce que le premier moyen d'identification d'entités communes comporte un moyen de saisie d'entité commune et un moyen de déclaration d'une corelation entre plusieurs entités communes entrées dans un moyen mémoire dans l'unité de dépôt de données par le moyen de saisie d'entité commune. - Système d'interrogation selon la revendication 18, caractérisé en ce que le moyen de gestion de métadomaines comporte un second moyen pour identifier individuellement dans chacun des domaines qui auraient été désignés dans le moyen de gestion de domaine l'entité ayant la sémantique définissant la corelation quelle que soit son nom affecté ou le typage de données. 21 Système d'interrogation selon la revendication 20, caractérisé en ce que le second moyen du moyen de gestion de métadomaines permet d'identifier individuellement les domaines concernés par la même sémantique en déclarant une unité sémantique, puis sa clé. 22 - Système d'interrogation selon la revendication 6, caractérisé en ce que le module (3) d'organisation des données comporte un moyen de gestion de métaclés pour réaliser des métadomaines par regroupement de plusieurs domaines de io requêtes. 23 - Système d'interrogation selon la revendication 22, caractérisé en ce que chaque métaclé et son moyen de gestion coopèrent avec un moyen de création de relations multiples sans modification physique de la structure des données contenues dans l'unité (2) de dépôt de données. 24 - Système d'interrogation selon la revendication 22, caractérisé en ce qu'il comporte un moyen de construction de réseaux dont l'entrée est connectée au moyen de gestion de métadomaines et au moyen de gestion des métaclés associé, pour construire un réseau complexe de relations et de contextes entre entités relationnelles. Système d'interrogation selon l'une quelconque des revendications 6 à 24, caractérisé en ce qu'il comporte un moyen de calcul d'une entité relationnelle définissant un métadomaine associé à une métaclé pour constituer un moyen de gestion de métadomaines virtuels. 26 - Système d'interrogation selon la revendication 25, caractérisé en ce qu'il comporte des moyens de gestion de différents métadomaines: - un moyen de gestion de métadomaines réels pour suivre et regrouper les relations entre entités; - un moyen de gestion de métadomaines virtuels pour coopérer avec un moyen de calcul, notamment un moyen de calcul susceptible de réaliser une consolidation de données acquises successivement dans le temps selon des séquences permettant de normaliser les données numériques à l'aide d'une opération de calcul en fonction de critères de programmation déterminés par l'utilisateur. 27 - Système d'interrogation selon l'une quelconque des revendications 6 à 26, caractérisé en ce que le module d'organisation de données (3) coopère avec des ressources logicielles comportant: - une première classe d'objets d'organisation structurelle des 10 données; - une seconde classe d'objets de création d'interfaces visuelles. 28 - Système d'interrogation selon la revendication précédente, caractérisé en ce qu'il comporte un moyen pour générer un métamodèle sur la base d'un objet de classe EPI::métamodel qui contient un autre objet de classe Tree::DAG_Node en en héritant de toutes les fonctionnalités de base pour gérer un graphe dirigé acyclique de type DAG . 29 - Système d'interrogation selon la revendication précédente, caractérisé en ce que le moyen pour générer un métamodèle comporte un moyen de gestion de métadomaines et un moyen pour appeler un objet de classe EPI::MétaDomain qui contient toutes les métadonnées liées au métadomaine réalisé, comme le nom explicite d'une métaclé. - Système d'interrogation selon la revendication précédente, caractérisé en ce que pour réaliser un métadomaine de noeud, le moyen pour générer un métamodèle comporte un moyen de gestion de métadomaines de noeuds et pour appeler un objet de classe EPI::Model qui contient le modèle de données, une structure de données particulières modélisant la relation bijective entre ses propres métaclés et celle des métadomaines parents. 31 Système d'interrogation selon la revendication précédente, caractérisé en ce que pour réaliser un domaine, le moyen pour générer un métamodèle comporte un moyen de gestion de domaines et pour appeler au moins un objet pris parmi une pluralité d'objets de classe comprenant: un objet de classe EPI::Domain qui contient des métadonnées liées au domaine; un objet de classe EPI::DBase qui assure la connectivité avec les systèmes de gestion de bases de données relationnelles et/ou vers la ou les tables relationnelles auxquelles le domaine fait référence; un objet de classe EPI::Model qui contient une structure de données particulières modélisant la bijection entre les clés primaires et les métaclés du métadomaine parent; au moins un objet de classe EPI::Index::* pour indexer des champs dans les données déposées dans le module de dépôt de données (2) et/ou le jeu de données (1) en vue de leur interrogation par un moteur prédéterminé ; - un objet de classe EPI::Form qui comporte: - un moyen pour générer automatiquement une interface visuelle pour formuler une requête d'interrogation des champs du domaine; - un moyen pour analyser la requête formulée et la transcoder en un langage lisible par un moteur implémenté dans l'unité d'interrogation (4) ; - un objet de classe EPI::DomainStats, qui comporte: - - un moyen pour générer des statistiques sur les données du domaine; - - un moyen pour stocker les statistiques générées; - un moyen pour gérer un dictionnaire de données de statistiques générées et stockées dans l'objet de classe. 32 Système d'interrogation selon la revendication précédente, caractérisé en ce que pour permettre l'interrogation de ces champs, la collection de classes EPI::Index::* comporte un moyen pour créer des index spécialisés et des moyens pour interroger de manière efficace un champ non interrogeable à l'aide d'un moteur SQL. 33 Système d'interrogation selon la revendication précédente, caractérisé en ce qu'il comporte une classe EPI::Index::Regex qui comporte des moyens pour indexer, et pour interroger un champ contenant du texte en utilisant un langage de calcul des expressions régulières Regex. 34 Système d'interrogation selon la revendication précédente, caractérisé en ce que les moyens pour interroger un champ contenant du texte et contenu dans la classe EPI::Index::Regex, coopèrent avec un système de mémoire cache lo notamment pour effectuer des recherches de phrases ou de motifs textuels en relation notamment avec la définition d'un ou de plusieurs domaines. Système d'interrogation selon la revendication 26, caractérisé en ce que le moyen pour générer une interface visuelle comporte un objet de classe EPI::Form qui exécute ou implémente un moyen pour générer un formulaire de requêtes permettant d'interroger un ensemble cohérent de données, structuré par le module d'organisation de données (3). 36 Système d'interrogation selon la revendication précédente, caractérisé en ce que l'objet de classe EPI::Form comporte un moyen pour appeler ou générer une pluralité d'éléments de formulaires d'un champ spécifique du domaine généré par un objet de classe EPI::FormElement pour exécuter l'interrogation et/ou l'affichage d'un champ spécifique du domaine. 37 Système d'interrogation selon la revendication précédente, caractérisé en ce que chaque objet de classe EPI::FormElement comporte: un moyen pour interroger un ou plusieurs types de données relationnelles (types numérique, date, champ textuel, etc.) ; - un moyen pour interroger directement les données en langage SQL; un moyen pour interroger les index spécialisés créés par le système d'interrogation pour l'interrogation d'un champ, comme un index textuel interrogeable avec l'objet de classe index EPI::Index::Regex; un moyen pour représenter graphiquement un élément de formulaire sur une interface visuelle, comme une page au format html ; - un moyen pour interagir avec l'utilisateur qui remplir à l'élément de formulaire afin de formuler sa question, par exemple en utilisant des objets appelés dans des balises html insérés dans une page html servant de réceptacle au formulaire; io - un moyen pour analyser la question représentée par l'utilisateur sous forme d'une page html et pour générer la sous requête correspondante en langage moteur. 38 Procédé d'interrogation de bases de données hétérogènes pour mettre en oeuvre un système d'interrogation selon l'une quelconque des revendications précédentes, qui se caractérise par deux phases principales: - une première phase d'organisation des données par un administrateur et exécutée sur la base d'au moins un modèle de structure des données à interroger; - une seconde phase d'interrogation des données par un utilisateur et exécutée sur la base de formulaires générés en fonction de l'organisation des données déterminée lors de ladite première phase d'organisation des données.