Brevet FR2939538A1 — publié le 20100611

Procédé de recherche de correspondances entres différentes sources de données La présente invention se rapporte au domaine de l'intégration des données, et plus particulièrement de la recherche automatique de correspondances/similarités entre différentes sources de données d'information. Depuis plusieurs années les applications informatiques nécessitent en effet de pouvoir communiquer entre elles, de pouvoir s'échanger des données ou bien encore, de pouvoir en mettre à disposition des utilisateurs, notamment au travers le réseau Internet. l0 La présente invention concerne plus précisément l'optimisation de la recherche d'informations et/ou de services dans des grands ensembles de données accessibles au travers un réseau de communication sur le Web, par exemple par l'intermédiaire d'applications réutilisables du type Web Services, mush-ups, portlets, applications d'entreprise, etc...). 15 On connaît de l'art antérieur des techniques visant la recherche de correspondances entre différentes sources de données (semi)structurées. Principalement mises en oeuvre dans le domaine de l'intégration des données, celui de la gestion de la connaissance, ou bien encore des ontologies, la recherche des possibles couplages entre éléments de différentes sources ou ensembles de données s'avère être une tâche 20 complexe qui nécessite généralement l'application de plusieurs algorithmes de recherches de correspondances. Ces techniques ont toutefois pour inconvénient de procéder d'une manière très similaire quel que soit le type des sources de données considérées pour la recherche de correspondances. 25 Un autre point important qui limite l'utilisation de ces techniques concerne leur temps d'exécution. En effet, ces techniques s'appuient le plus souvent sur des algorithmes de recherche de correspondance entre les éléments de différentes sources de données, lesquels effectuent des rapprochements systématiques, même quand les entrées à comparer sont similaires ou identiques. 30 Parmi les techniques connues de l'art antérieur, cinq principales peuvent être identifiées : - les techniques basées sur l'apprentissage automatique. Leur inconvénient principal est lié au fait qu'elles nécessitent la prise en compte d'ensemble de données conséquent pour "entrainer" le moteur de recherche et ainsi pouvoir le rendre utilisable. Or, un tel volume de données n'est pas toujours disponible ou suffisamment complet pour assurer un rapprochement optimal entre des données appartenant à différents ensembles. De plus, ces techniques sont inadaptées lorsque des informations confidentielles (si on pense par exemple aux messages échangés entre une banque et une entreprise...) doivent être manipulées ; - les techniques basées sur l'utilisation d'un seul algorithme de calcul ou d'analyse de correspondance. Un inconvénient de ce type de technique est lié au fait que le rapprochement entre les données de sources de données hétérogènes comporte le plus souvent différents niveaux de similitudes possibles entre les données des différents ensembles de données considérés. Par exemple l'un peut être sémantique (comme l'utilisation de deux synonymes) ou linguistique (une source peut utiliser des abréviations ou deux langues différentes). L'expérience montre que l'utilisation d'un seul algorithme de calcul ou d'analyse conduit généralement à une perte d'un grand nombre de correspondances. - les techniques plus élaborées basées sur l'utilisation combinées de plusieurs algorithmes de recherche de correspondances de types différents. Un inconvénient de ces techniques, bien qu'étant celles qui proposent aujourd'hui les meilleurs résultats en termes de recherche de correspondances entre des données appartenant à des ensembles de données distincts, est lié au fait qu'elles se basent généralement sur une simple moyenne des valeurs de correspondances obtenues en sortie de traitement par les différents algorithmes. Ces valeurs de correspondances caractéristiques d'un degré de correspondance entre des couples de données dont chaque donnée du couple appartient à un ensemble de données distinct de l'ensemble d'appartenance de l'autre donnée du couple, sont comprises entre [0,1] pour chaque couple d'éléments sources. Cette valeur est ensuite généralement filtrée à l'aide d'un seuil pré-paramétré, éventuellement fixé par le développeur, ou dans certains cas, par un utilisateur, de façon à identifier les couples de données bénéficiant du plus fort degré de correspondance. De plus, un deuxième inconvénient de ces techniques est lié au fait que la complexité du calcul de recherche de correspondance limite la recherche de correspondance à des données provenant uniquement de deux ensembles ou sources de données à la fois, ce qui contribue à augmenter considérablement les temps de calcul et donc, par conséquent, ce qui tend à rendre ces techniques incompatible avec une mise en correspondances d'importants volumes de données accessibles au travers le Web, par exemple, auprès d'un très large panel de sources de données. Pour palier les inconvénients des différentes techniques précitées, dans l'objectif d'une intégration d'un nombre indéfini de sources de données, des solutions techniques adoptées par les moteurs de recherche (tels que Google-marque déposée ou Voilà ù marque déposée, par exemple ou plus récemment dans les moteurs de recherche sémantique, comme Watson ù marque déposée, Swoogle ù marque déposée ou Sindice ù marque déposée) ont été proposées. Ces techniques, intégrées dans ces moteurs mettent en oeuvre plusieurs algorithmes permettant d'identifier des similarités entre données appartenant à des ensembles de données distincts, en s'appuyant sur la création de catégories (ou "clusters" selon une terminologie anglophone) et d'index des sources de données analysées. Ces techniques possèdent elles aussi plusieurs inconvénients, parmi lesquelles : elles s'appuient sur une indexation des données comparées, basée principalement sur des affinités linguistiques, des mots-clés, sans considération sémantique et/ou de structure de données. Elles sont incompatibles avec une automatisation de la recherche et avec une possibilité d'exploitation du résultat d'une telle recherche de façon simple par une machine, du type terminal d'ordinateur. La présente invention offre une solution qui ne présente pas les inconvénients précités en proposant un procédé de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, ledit procédé étant caractérisé en ce qu'il comprend : - une étape de détermination de caractéristiques communes entre les données dudit premier ensemble et les données dudit deuxième ensemble ; - une étape de construction d'au moins un graphe de similarités à partir desdites caractéristiques communes déterminées ; - une étape itérative de comparaison de chaque donnée dudit premier ensemble de données avec au moins un sous-ensemble de données dudit deuxième ensemble, ladite étape de comparaison tenant compte dudit graphe de similarités, de façon à produire au moins un ensemble de données équivalentes. Cette approche proposée par les inventeurs s'avère parfaitement adaptée pour pallier les différents inconvénients des différentes techniques précitées et connues de l'art antérieur. Elle diffère des solutions existantes dans sa manière d'aborder le problème de la recherche de correspondances entres données appartenant à différents ensembles de données, généralement volumineux. Elle propose en effet de renverser le problème à résoudre en recherchant/ identifiant d'abord les propriétés communes aux différentes sources de données, à savoir les concepts sous-jacentes, pour ensuite se concentrer exclusivement sur ces propriétés communes préalablement identifiées, afin de déterminer les meilleures correspondances entre toutes les données de chacun des différents ensemble de données. Une telle approche selon l'invention a pour avantage de maintenir et d'assurer que les recherches de similarité sont effectuées une seule fois, même si des éléments issus de différentes sources sont identiques. Le résultat de cette recherche de similarité sera alors formalisée sous la forme d'un graphe de similarité ayant le double avantage d'une part de regrouper d'une façon structurée l'ensembles des données selon leurs propriétés communes et, d'autre part, de pouvoir être réutilisé, voir enrichi, à souhait, ce qui permet d'économiser des ressources et du temps de calcul. Elle permet également d'assurer une exécution simultanée dans l'affinage de la recherche de correspondances qui soit économe en temps de calcul, puisqu'un tel affinage sera uniquement réalisé relativement à des données ayant été préalablement identifiées comme possédant des propriétés communes. La présente invention s'applique à plusieurs cas d'utilisation, par exemple et de façon non limitative, à l'automatisation de la recherche de similarités (ou correspondance) entre des applications web définissants des données structurés, par exemple des applications du type Web Services, portlets, mash-ups, intégration de données, recherche, etc. Elle s'applique également de façon optimale à la simple recherche sur le Web, au travers des sites multiples et variés mettant à disposition des utilisateurs des sources de données structurées importantes et souvent de nature hétérogène. Par graphe/réseau de similarités, on entend un graphe permettant de décrire à la fois syntaxiquement, sémantiquement et structurellement le lien de correspondance qu'il peut exister entre des données ou informations issues de différents ensembles de données hétérogènes. De façon avantageuse, ladite étape de détermination de caractéristiques communes entre au moins lesdits premier et deuxième ensembles de données comporte les sous-étapes suivantes de : - transformation des premier et deuxième ensembles de données respectivement un premier et deuxième ensemble de données formalisée; - relativement auxdits premier et deuxième ensembles de données formalisées, création d'un réseau sémantique de données formalisées; - relativement auxdits premier et deuxième ensembles de données formalisées, création d'un réseau structurel de données formalisées. La formalisation ou normalisation des données consiste principalement en la transformation du nom en une forme commune et donc plus facilement comparable par les différents algorithmes. Cette opération est normalement connue sous la dénomination "tokenisation", elle permet d'effectuer une séparation des mots composés. Elle est également complétée d'une opération de transformation (connu comme "lemmatisation") de chaque mot décomposé en lemma correspondante. Ensuite les éléments extraits et normalisés sont classifiés selon deux critères de base, un premier critère sémantique servant de base à la création du réseau sémantique et un deuxième critère structurelle servant de base à la création du réseau structurel. De plus, le réseau ou graphe sémantique permet de rapprocher tous les éléments ayant des mots en commun, ou bien tous les éléments possédant un lien de synonymie, ou encore tous les éléments susceptibles d'être rattachés de près ou de loin à un concept commun. Un tel rapprochement peut s'effectuer de manière avantageuse en appliquant des algorithmes linguistiques comme le stemming et la distance de Levinstein à des couples d'éléments issus respectivement de différents ensembles de données, de façon à mesurer la distance sémantique qui les sépare. A différence du lien basé sur le lemma, les autres formes basées sur une distance au une partie du mot originel ne permettent pas d'établir une relation d'équivalence mais nécessitent d'un raffinement successif. Le réseau structurel possède quant à lui une double fonction, la première est celle de permettre la classification des concepts entre classes, attributs et type de données. Une classe ou élément objet au sens de l'invention est un objet non atomique assimilable à une agrégation de propriétés, tels que des attributs ou des liens pointant vers d'autres classes (comme "personne" ou "adresse'. Un attribut ou élément simple est un objet atomique (comme "prénom" et "nom de famille" pour une "personne' et un type de donnée représente la formalisation informatique que la donnée simple assume (comme "entier" ou "texte'. Une telle classification permet de rapprocher des données selon leur nature. Elle permet également d'éviter d'appliquer un algorithme entre deux objets éloignés, par exemple chercher la correspondance entre une "voiture" et un "écrou". Avantageusement, le procédé selon l'invention comprend une étape de classification des données contenues dans lesdits premier et deuxième ensembles de données formalisées, à partir desdits réseaux sémantique et structurel, sous la forme d'au moins deux listes de données classifiées regroupant des données identifiées comme possédant au moins un degré d'équivalence. Préférentiellement, le procédé selon l'invention comprend une étape d'alignement des données contenues dans l'ensemble de données formalisées, à partir dudit réseau structurel de données. La phase d'alignement permet de sélectionner les données bénéficiant d'un plus fort degré de correspondance, à partir des informations fournies par le comparateur. Elle permet également de hiérarchiser les données en fonction des différents degrés de correspondance préalablement déterminé et ainsi de limiter tout risque d'incohérence dans le traitement des données. À ce stade du processus il est aussi possible d'intégrer des informations sur le contexte, ce qui permet de régler certaines ambigüités entre des possibles correspondances contradictoires ou conflictuelles, en raison de pratiques heuristiques susceptible d'exister en relation avec un domaine particulier. Dans un mode de réalisation avantageux de l'invention, ladite étape de comparaison tient compte d'au moins une source de données externe du type appartenant au groupe comprenant : - un dictionnaire ; - un thésaurus; de façon à tenir compte d'au moins une autre information représentative d'un degré supplémentaire de similitude. La prise en compte d'une source de données externe telle qu'un dictionnaire électronique permet avantageusement de détecter précocement tout mot dont l'orthographe serait incorrecte ou erronées, de façon à s'affranchir de leur traitement dans les différentes étapes du procédé de recherche automatisée selon l'invention, et ainsi économiser des ressources matérielles et logicielles, le tout au profit d'une meilleure qualité de traitement des informations contenues dans les ensembles de données considérés. Préférentiellement, le procédé selon l'invention comprend pour une recherche automatisée de correspondances au moins un troisième ensemble de données et un ensemble de données équivalentes préalablement déterminées, après vérification préliminaire que les données propres dudit troisième ensemble de données ne sont pas déjà contenues dans ledit graphe de similarité, les étapes suivantes : - détermination de caractéristiques communes entre les données dudit troisième ensemble et les données dudit ensemble de données équivalentes ; - une étape développement dudit graphe de similarités à partir desdites caractéristiques communes identifiées entre ledit troisième et ledit ensemble de données équivalentes; - une étape itérative de comparaison de chaque donnée dudit premier troisième ensemble de données avec au moins un sous-ensemble de données dudit ensemble de données équivalentes, ladite étape de comparaison tenant compte dudit graphe de similarités développé. L'invention concerne aussi un dispositif de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, ledit dispositif étant caractérisé en ce qu'il comprend : - des moyens de détermination de caractéristiques communes entre les données dudit premier ensemble et les données dudit deuxième ensemble ; - des moyens de construction d'au moins un graphe de similarités à partir desdites caractéristiques communes déterminées ; - des moyens itératifs de comparaison de chaque donnée dudit premier ensemble de données avec au moins un sous-ensemble de données dudit deuxième ensemble, lesdits moyens de comparaison tenant compte dudit graphe de similarités, de façon à produire au moins un ensemble de données considérées comme équivalentes. to L'invention concerne également l'application dudit procédé automatisé de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, tel que celui précité, à un moteur de recherche adapté pour exécuter des requêtes visant la recherche d'au moins une information dans une pluralité de sources de données hétérogènes réparties. 15 L'invention concerne encore un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution d'un procédé de recherche automatisée de correspondances entre un premier ensemble et au moins un deuxième 20 ensemble de données tel que le procédé décrit ci-avant, lorsqu'il est exécuté sur un ordinateur. Il est bien entendu possible d'envisager sans limitation aucune, toutes autres combinaisons des caractéristiques précitées propres du procédé de gestion de sessions applicative selon l'invention ; de telles autres combinaisons entreront dans le champ de 25 la protection demandée. Les caractéristiques et avantages techniques de la présente invention ressortiront mieux de la description suivante, faite à titre indicatif et non limitatif, au regard des dessins annexés sur lesquels : - la figure 1 décrit les grandes étapes du procédé automatisé de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble 30 de données; - la figure 2 présente un exemple de réseau sémantique au sens de l'invention ; - la figure 3 présente un exemple de réseau structurel au sens de l'invention ; - la figure 4 présente un exemple de graphe de similarité au sens de l'invention, construit à partir des réseaux sémantique et structurel des figures 2 et 3; - La figure 5 donne un exemple d'application du procédé selon l'invention au travers un cas d'usage possible visant un échange de messages électroniques entre deux systèmes de messagerie; Le procédé automatisé de recherche de correspondances entre plusieurs sources de données hétérogène, au sens de l'invention, s'exécute en deux temps. Dans un premier temps, il s'agit en effet d'identifier toutes similarités existantes entre les différentes couples de données provenant de différentes sources de données, respectivement, et à formaliser le résultat de cette identification sous la forme d'un réseau de similarité. Dans un second temps, il s'agit au moyen dudit réseau de similarités de procéder à un raffinement successif permettant d'identifier au moins un ensemble de données équivalentes, c'est-à-dire possédant au moins une propriété similaire. On décrit ci-dessous en relation avec la figure 1 les grandes étapes d'un algorithme de recherche des correspondances au sens de l'invention. Une première étape, une fois le processus de recherche de correspondance démarré 100 consiste procéder à la lecture 101 séquentielle des différentes sources de données pour lesquelles des correspondances entre leurs données respectives sont recherchées. Avant d'exécuter les différentes étapes du procédé de recherche de correspondances selon l'invention, il est tout d'abord vérifié 102 pour chaque source de données considérée que celle-ci n'a pas déjà été intégrée dans le graphe de similarité. Une telle vérification est réalisée en comparant une signature spécifique de la source de données considérée (comme nom, emplacement, nombre et type de concepts contenus) avec celles contenues ou référencées en association avec le graphe de similarité. Si une source de données a déjà fait l'objet d'un traitement de recherche de correspondance et se trouve donc déjà référencée au sein du graphe de similarités, alors le traitement est terminé (flèche F2) pour cette source de données. Il est poursuivit (flèche F3) dans le cas contraire. Une fois cette vérification 102 effectuée, le procédé exécute une tâche d'extraction et de normalisation 103 des données contenues dans chacune des sources de données retenues après vérification 102 pour la recherche de correspondances. Cette étape 103 permet à un analyseur syntaxique de formaliser 104 le contenu de chaque source de données, ainsi que de lier entre eux les noms des différents éléments présents dans chacune des sources. Ceci permet d'anticiper un traitement optimisé pour la recherche de correspondances. Pour améliorer le traitement réalisé par l'analyseur syntaxique, ce dernier peut interroger (flèche F1) une ressource externe, par exemple un dictionnaire 105 électronique, de façon à encore améliorer le traitement, notamment sur le plan de l'interprétation de la signification des données en vu d'un meilleur rapprochement entre les données dans la recherche de correspondances. Dans le cas spécifique de sources structurés, telles que XML, les libellés (tags) sont très souvent des noms composés ou des abréviations. Dans ce cas les noms sont séparés automatiquement à l'aide d'un algorithme qui implémente des règles spécifique aux sources (dans un mode de réalisation possible de l'invention, la règle retenue est relative à la convention nommée UCC (Upper Camel Case) qui consiste à écrire des ensembles de mots en supprimant les espaces blanc et en mettant en majuscule les premières lettres des mots liés. Par exemple, "AdressePostale" sera décomposé et formalisé en "adresse postale". A partir de cette séparation il est possible d'interroger (flèche Fl) un dictionnaire 105 électronique pour savoir si les mots ainsi trouvés existent et pour obtenir le lemme correspondant. Si ce n'est pas le cas le mot est mis de côté pour une vérification successive, comme la recherche dans un dictionnaire d'abréviations ou application d'algorithmes spécifiques pour trouver des correspondances entre mots (e.g. "adr" pour "adresse'. Les mots composés sont mises dans un graphe qui lie les mots composés. Par exemple et relativement à ce qui précède, les mots "adresse" et "postale" constituent deux noeuds du graphe avec un lien entre eux qui indique que les deux mots ont étés trouvé ensemble au moins une fois. En continuant pour tous les éléments source on obtient un graphe complet similaire à un treillis de Galois. La phase suivante, consiste tout d'abord et à partir de la formalisation 104 précitée des données à construire 106 un réseau sémantique, lequel intègre au graphe complet du type treillis de Galois, des informations complémentaires sémantiques telles que les synonymes, homonymes et méronymes, en plus des informations relatives aux mots ayant une proximité évidente dans le nom en appliquant des algorithmes linguistiques comme le stemming et la distance de Levinstein (voir figure 3). Pour améliorer la pertinence des informations renseignées à l'intérieur du réseau sémantique construit, l'étape 106 de construction dudit réseau sémantique pourra exécuter une sous-étape visant à interroger une source de données externes, du type thésaurus, Cette phase suivante consiste aussi à construire 107 un réseau structurel, lequel permet d'identifier les rattachements possibles entre les données formalisées. A titre d'exemple, le graphe structurel permet de rattacher des données du type "rue", "ville", "code postale" et "pays" à des données du type "adresse". Une fois construits (106, 107) les deux graphes, sémantique et structurel, une union 109 de ces derniers va servir support à la construction 109 d'un réseau de similarités entre les données des différentes sources de données considérées. Le réseau de similarités a pour fonction de regrouper en un seul graphe et en tenant compte des informations sémantiques et structurelles contenues dans les réseaux sémantique et structurel, toutes les caractéristiques propres de chacune des données contenues dans les sources de données lues à l'étape 101, de façon à optimiser la recherche de caractéristiques communes pour une mise en correspondance. Une fois le réseau de similarités construit, celui-ci peut par la suite être enrichi 110 d'autres sources de données, de façon à élargir les possibilités de mise en correspondance. Si d'autres sources de données doivent être intégrées, alors le procédé exécute (flèche F4) pour cette nouvelle source de données les étapes 101 à 110. Une fois toutes les sources de données intégrées dans le réseau de similarité, une phase suivante (flèche F5) de raffinement 111 permet d'affiner le résultat de la mise en correspondance, grâce à une mise en oeuvre d'algorithmes spécifiques appliqués exclusivement aux correspondances avec des ambigüités. Un exemple d'algorithme spécifique produit un alignement entre les propriétés proches des groups de propriétés caractéristiques définis. Dans l'exemple de la figure 3 (graphe structurel) "headquarter" et "head office" sont proches du groupe composé des propriétés "activity", "owner", "contact" donc l'algorithme vérifie si les deux éléments sont équivalents en vérifient leur structure ou leur type de donnée (e.g. représentés comme entier ou texte). Dans le cas considéré ils ont effectivement une très bonne affinité structurelle donc ils sont considérés équivalents et la correspondance entre les éléments "company" et "organization" est complété. Un deuxième exemple d'algorithme spécifique peut être basé sur une étude statistique. Par exemple dans un cas d'indécision si un élément est mis en correspondance avec deux autres éléments différents, l'algorithme affecte la correspondance à l'élément le plus probable. En fin 116 d'exécution du procédé selon l'invention, un graphe de similarités optimal est obtenu 115 et un autre 113 pour les groupes de propriétés caractéristiques, contenant toutes les informations de similarités des sources considérés, en association 112 avec des statistiques sur le nombre de fois que ces relations et concepts ont étés trouvés, ce qui donne une bonne mesure de fiabilité. La figure 2 donne un exemple de réseau 200 sémantique au sens de l'invention, appliqué à des données 201, 202, 203, 204, 205, possédant respectivement les libellés suivants: "Address"; "PostalAddress"; "ScreeningPostalAddress"; "DeliveryReceiptLocation"; "Addr". En appliquant un des algorithmes syntaxiques tel que n-gram, cité précédemment pour les mots pas reconnues comme des mots du dictionnaire, la forme 205 "addr" est reconnue être correspondante à la forme 201 "address". Au sens de l'invention la construction de ce graphe ou réseau, avec le maintien des liens (2061, 2062), (2071, 2072), (2081, 2082, 2083) entre les mots composés 204, 202, 205, respectivement, permet de mieux et plus rapidement identifier les liens entre les éléments en considérant leurs libellés. Le nombre d'occurrences des données correspondant aux types de données 201, 202, 203, 204, 205, est précisé au niveau de chaque noeud du graphe sémantique, par une valeur d'occurrence 209, etc. La figure 3 donne un exemple de réseau structurel au sens de l'invention, correspondant aux données ayant servi de base à la construction du réseau sémantique de la figure 2. L'objet de ce réseau structurel consiste à formaliser des relations d'équivalence entre les différentes caractéristiques identifiées pour les données des ensembles de données d'origine. Le tableau ci-dessous, en relation avec le figure 3, résume les relations 5 d'équivalence entre les différentes caractéristiques de données, bien que de telles données ne soient pas nécessairement sémantiquement équivalentes à l'origine. Élément objet Propriétés Organization 304 Activity 306, owner 307, contact 308, headquarter 302 Company 305 Activity 306, owner 307, contact 308, head office 302 Address 301, headquarter 302, Street 312, postal code 313, city 314, head office 303 country 315 Dans ce tableau et en relation avec la figure 3, "organization" 304 et "company" 305 possèdent des caractéristiques 310 communes, comme par exemple, "activity" 306, l0 "owner" 307 et "contact" 308. Une organisation "organization" possède une direction "headquater" 302, alors qu'une compagnie "company" 305, possède un siège social "head office" 303. Mais "headquater" 302 et "head office" 303 possèdent des caractéristiques communes 311 : "street" 312, "postal code" 313, "city" 314 et "country" 315, de telles caractéristiques 311 étant assimilable structurellement à une 15 caractéristique d'adresse "adress" 301. A partir des réseaux sémantique (200, figure 2) et structurel (300, figure 3), un réseau 400 de similarités, comme illustré sur la figure 4, est construit. Un tel réseau 400 de similarité constitue un élément important de l'invention. Il est obtenu par union des réseaux sémantique 200 et structurel 300. 20 Dans un tel graphe 400, seules les informations utiles sont toutes réunies, les informations jugées inutiles ou facilement identifiables (e.g. les noeuds comme deliverylocation qui n'apporte pas d'info supplémentaire) ont volontairement été omises, de façon à optimiser les critères de recherche pour la mise en correspondance de données. Comme illustré sur la figure 4, les flèches F40 à pointe évidée permettent d'identifier les termes considérés comme proche du point de vue structurel. Les flèches F41 à pointe pleine permettent d'identifier les termes synonymes. Les liens F42 relient des termes possédant au moins une caractéristique commune. Les liens F43 définissent une relation de dépendance entre les données ou termes situés en amont et ceux situés en aval. Par exemple, "street" représente une caractéristique ou attribut d' "adress". Les liens F44 définissent une relation d'équivalence entre des données. Par exemple, "organization" est considéré dans le graphe de similarités comme équivalent à "company". A l'intérieur du graphe de similarité, certaines caractéristiques peuvent être regroupées entre elles. Elles sont alors entourées d'un encadré 401 en pointillés. Les éléments entourés d'un ovale 402 en trait gras sont représentatifs d'élément définissant un objet. Les éléments entourés d'un cadre 403 en trait gras sont représentatifs de caractéristiques unitaires ou éléments simples. Les éléments entourés d'un ovale 404 en trait fin définissent des termes identifiés comme récurrents. La figure 5 présente un exemple de cas d'utilisation de cette approche qui nous aide à mieux comprendre l'idée sous-jacente, dans le cadre d'un échange de messages électroniques entre deux systèmes de messageries. Sur cette figure, deux systèmes d'informations (non représentés) possédant chacun un modèle 502, 503 structurant des données (502,..., 502ä) (503,..., 503ä) correspondants respectivement à des messages traités (en émissions ou en réception) par les applications de messagerie exécutées respectivement sur des terminaux 500 et 501. Ces deux modèles 502, 503 représentent les sources de données à mettre en correspondance, c'est-à-dire pour lesquelles il faut identifier un degré d'équivalence entre les différents éléments. Avant d'essayer de produire des correspondances entre toutes les combinaisons possibles entres tous les messages de chacune des applications 500, 501, respectivement structurés selon les modèles de données 502 et 503, nous inversons le problème de la recherche de correspondance, allant ainsi à l'encontre des habitudes de l'homme du métier, pour chercher à identifier tout d'abord toutes les propriétés/ caractéristiques communes entre les différents messages utilisés par les deux systèmes (basé sur les données qu'ils véhiculent), en s'appuyant sur une mise en correspondance des données contenues respectivement dans chacun des modèles 502 et 503, au moyen d'un graphe de similarités préalablement construit en tenant compte de chaque source de données propres des applications de messagerie 502 et 503. Seulement en suite les correspondances réelles sont produites entre les messages les plus proches afin de trouver les meilleures correspondances. Revendications1. Procédé de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, caractérisé en ce que lesdits premier et deuxième ensembles de données étant répartis au travers un réseau de communication de type réseau Internet, le dit procédé comprend: ^ une étape (101, 102, 103, 104, 106, 107) de détermination de caractéristiques communes entre les données dudit premier ensemble et les données dudit deuxième ensemble ; ^ une étape (113) de construction d'au moins un graphe 400 de similarités à partir desdites caractéristiques communes déterminées ; ^ une étape (111) itérative de comparaison de chaque donnée dudit premier ensemble de données avec au moins un sous-ensemble de données dudit deuxième ensemble, ladite étape de comparaison tenant compte dudit graphe de similarités, de façon à produire au moins un ensemble (116) de données équivalentes accessible au travers ledit réseau de communication. 2. Procédé selon la revendication 1, caractérisé en ce que ladite étape de détermination de caractéristiques communes entre lesdits premier et deuxième ensembles de données comporte les sous-étapes suivantes de : transformation des premier et deuxième ensembles de données respectivement un premier et deuxième ensemble de données formalisée; ^ relativement auxdits premier et deuxième ensembles de données formalisées, création d'un réseau 200 sémantique de données formalisées; relativement auxdits premier et deuxième ensembles de données formalisées, création d'un réseau 300 structurel de données formalisées. 3. Procédé selon la revendication 2, caractérisé en ce qu'il comprend une étape de classification des données contenues dans lesdits premier et deuxième ensembles de données formalisées, à partir desdits réseaux sémantique et structurel, sous la forme d'au moins deux listes de données classifiées regroupant chacune des données identifiées comme possédant au moins un degré d'équivalence. 16 4. Procédé selon la revendication 2, caractérisé en ce qu'il comprend une étape d'alignement des données contenues dans l'ensemble de données formalisées, à partir dudit réseau structurel de données. 5. Procédé selon la revendication 1, caractérisé en ce que ladite étape de comparaison tient compte d'au moins une source de données externe du type appartenant au groupe comprenant : ^ un dictionnaire ; ^ un thésaurus; de façon à tenir compte d'au moins une autre information représentative d'un degré supplémentaire de similitude. 6. Procédé selon la revendication 4, caractérisé en ce qu'il comprend pour une recherche automatisée de correspondances au moins un troisième ensemble de données et un ensemble de données équivalentes préalablement déterminées, après vérification préliminaire que les données propres dudit troisième ensemble de données ne sont pas déjà contenues dans ledit graphe de similarité, les étapes suivantes : ^ détermination de caractéristiques communes entre les données dudit troisième ensemble et les données dudit ensemble de données équivalentes ; ^ une étape développement dudit graphe de similarités à partir desdites caractéristiques communes identifiées entre ledit troisième et ledit ensemble de données équivalentes; ^ une étape itérative de comparaison de chaque donnée dudit troisième ensemble de données avec au moins un sous-ensemble de données dudit ensemble de données équivalentes, ladite étape de comparaison tenant compte dudit graphe de similarités développé. 7. Dispositif de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, caractérisé en ce que lesdits premier et deuxième ensembles de données étant répartis au travers un réseau de communication de type réseau Internet, ledit dispositif comprend : ^ des moyens de détermination de caractéristiques communes entre les données 30 dudit premier ensemble et Ies données dudit deuxième ensemble ; ^ des moyens de construction d'au moins un graphe de similarités à partir desdites caractéristiques communes déterminées ; 17^ des moyens itératifs de comparaison de chaque donnée dudit premier ensemble de données avec au moins un sous-ensemble de données dudit deuxième ensemble, lesdits moyens de comparaison tenant compte dudit graphe de similarités, de façon à produire au moins un ensemble de données considérées comme équivalentes accessible au travers ledit réseau de communication. 8. Application dudit procédé automatisé de recherche de correspondances entre un premier ensemble et au moins un deuxième ensemble de données, selon I'une au moins des revendications 1 à 6, à un moteur de recherche adapté pour exécuter des requêtes visant la recherche d'au moins une information dans une pluralité de sources de lo données hétérogènes réparties dans un réseau de communication du type réseau Internet. 9. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de 15 programme pour l'exécution d'un procédé de recherche automatisée de correspondances entre. un premier ensemble et au moins un deuxième ensemble de données selon l'une au moins des revendications 1 à 6, lorsqu'il est exécuté sur un ordinateur. 18