FR 2906383 A1 20080328 FR 0653851 A 20060921 1 La présente invention concerne les services web en général, et des requêtes concernant de tels services. Dans la présente description, les termes suivants sont employés avec le sens indiqué, sauf mention particulière : - annuaire UDDI , pour Universal Description Discovery and Integration , désigne un annuaire basé sur XML, dédié plus particulièrement aux services web, notamment dans le cadre d'architectures de type SOA (pour Service Oriented Architecture ). Il existe des annuaires privés et publics, des annuaires spécifiques pour certains fournisseurs de services. Un annuaire UDDI permet de localiser sur le réseau un service Web recherché. Il comprend notamment des informations d'accès aux services Web et des informations contextuelles, par exemple une brève description des services et leurs fonctionnalités. L'annuaire UDDI contient notamment : - des pages blanches comprenant des informations relatives à des entreprises ; - des pages jaunes, qui recensent des services web de ces entreprises au standard WSDL ; et - des pages vertes fournissant des informations techniques précises sur les services fournis. Ces informations techniques concernent entre autres des descriptions de services, de liaison ou de processus métiers associés. - Ontologie : une ontologie est un ensemble structuré de concepts organisés dans un graphe dont les relations peuvent être des relations sémantiques ou de composition et d'héritage (au sens objet). Un objectif d'une ontologie est de modéliser un ensemble de connaissances dans un domaine donné. - OWL est un langage d'ontologie Web conçu pour des applications qui doivent non seulement présenter aux utilisateurs des informations mais également en traiter le contenu. OWL est un "dialecte" XML basé sur une syntaxe RDF (pour Resource Description Framework, qui désigne un modèle de graphe pour décrire des méta données et permettre un certain traitement automatique de ces méta données). OWL fournit des moyens pour définir des ontologies Web structurées. Le langage OWL offre aux machines de plus grandes capacités d'interprétation du contenu Web que celles permises habituellement, par exemple par XML, grâce à un vocabulaire supplémentaire et une sémantique formelle. OWL se compose de trois sous langages offrant une 2906383 2 expressivité croissante : OWL Lite (ou OWL, OWL DL et OWL Full. OWL-S (S valant pour sémantique) est orienté "sémantique", il n'existe encore qu'à l'état de proposition et n'est pas standardisé. - paramètre d'entrée désigne une donnée fournie en entrée à une opération 5 de traitement d'un service web ; les données d'entrée de l'opération sont transformées par l'opération pour fournir le résultat de sortie. - résultat de sortie désigne l'information résultant du traitement effectué par une opération d'un service web sur ses données (ou "paramètres") d'entrée. Le résultat de sortie est le produit attendu par l'utilisateur du service web, cet utilisateur pouvant être 10 une application informatique ou un autre service web. - service Web désigne une application accessible sur l'INTERNET, via une interface standard, qui peut interagir dynamiquement avec des applications ou d'autres services web en utilisant des protocoles de communication, par exemple basés sur le XML, et ce, indépendamment du système d'exploitation et des langages de 15 programmation utilisés. Au plan de ses interfaces proprement dites, un service web comprend des opérations de traitement qui fournissent des résultats à partir de données d'entrée, ou "paramètres d'entrée". Pour utiliser un service web, on appelle une de ses opérations en lui fournissant les données d'entrée attendues, et on récupère le résultat de sortie. 20 - UML (Unified Modeling Language, que l'on peut traduire par langage de modélisation unifié) : désigne une notation (plutôt qu'un langage) de modélisation par objets , permettant de déterminer et de présenter les composants d'un système objet lors de son développement, ainsi que, le cas échéant, d'en générer la documentation. UML est actuellement la norme OMG. Il résulte de la fusion des travaux de Jim Rumbaugh, 25 Grady Booch et Ivar Jacobson et connaît de nombreuses évolutions. - Web sémantique désigne une extension du World Wide Web permettant de publier, de consulter et surtout d'automatiser le traitement de connaissances formalisées, c'est-à-dire que les documents traités par le Web sémantique contiennent non pas des textes en langage naturel mais des informations formalisées pour être 30 traitées automatiquement. - WSDL est un langage normalisé par le W3C (version 1.1 du 15 mars 2001 û voir http://www.w3.org/TR/wsdl), faisant notamment référence au langage XML. Le WSDL décrit une Interface publique d'accès à un service web par les éléments 2906383 3 suivants : nom du service, opérations, types de données manipulées et liens entre ces types et les opérations. Le WSDL indique ainsi comment communiquer pour utiliser le service, le protocole de communication et le format de messages requis pour communiquer avec ce service. Comme OWL-S, WSDL-S est orienté "sémantique" mais 5 n'est pas encore standardisé. - WSMO (pour Web Service Modeling Ontology) désigne une ontologie visant à décrire "sémantiquement" des services du web sémantique. - XML (pour eXtensible Markup Language) : une évolution du langage SGML, laquelle permet notamment aux concepteurs de documents HTML de définir leurs 10 propres marqueurs, dans le but de personnaliser la structure des données. Les technologies modernes de télécommunication, en particulier l'Internet, permettent à des utilisateurs d'accéder rapidement à une variété de services. Dans ce domaine, le Web sémantique est en pleine expansion, notamment en ce qui concerne les applications de développement de services à l'aide de services existants, selon une 15 approche sémantique. De plus en plus de services web sont munis d'une ontologie ou, plus généralement, d'une description sémantique. Dans ce contexte, un problème qui se pose est de pouvoir trouver facilement un service sémantique donné (c'est-à-dire un service avec une description sémantique) qui réponde de manière pertinente à une demande sémantique donnée, c'est-à-dire une demande contenant des informations 20 sémantiques. Une solution connue à ce problème consiste à analyser syntaxiquement le contenu d'un annuaire de service, à trouver puis à extraire la description sémantique de chaque service et à rechercher enfin dans cette description une correspondance avec la demande sémantique. En pratique, cette solution doit tenir compte du fait que les 25 descriptions sémantiques ou les ontologies des services peuvent prendre différentes formes et être écrites avec différents types de langages, par exemple OWL, OWL-S, WSDL-S, WSMO, UML, etc. Par conséquent, un analyseur (ou "parser" en anglais) spécifique est nécessaire pour chaque type/forme de service afin d'en extraire l'information sémantique utile. 30 Cette solution n'est cependant pas satisfaisante parce qu'elle est lourde à gérer et entraîne des temps de réponse dégradés pour l'utilisateur. En particulier, elle nécessite, pour chaque requête, d'analyser tout le contenu de l'annuaire de service et 2906383 4 d'examiner la totalité des données contenues sous les différentes formes des descriptions sémantiques des services. Il existe donc un besoin pour une solution permettant à la fois de simplifier substantiellement la recherche de services sémantiques et de réduire le temps de 5 traitement de cette recherche. A cette fin, L'invention propose un référentiel sémantique de services web comprenant un métamodèle unique de description sémantique de ces services. Dans des modes de réalisation préférés, le référentiel sémantique selon l'invention comprend une ou plusieurs des caractéristiques suivantes : 10 - le référentiel est structuré par opérations, chacune de ces opérations comprenant une description sémantique d'une opération d'un service web particulier ; - le référentiel selon l'invention se présente sous la forme d'un fichier sans pointeur vers l'extérieur du fichier, le fichier comprenant par exemple une ligne 15 par opération ; - la description sémantique de chacune des opérations comprend des informations : d'objectif de l'opération du service web particulier associé ; de qualité de service de l'opération du service web; et de contexte d'utilisation de l'opération du service web ; et 20 - la description sémantique de chacune des opérations comprend en outre des informations sémantiques associées au paramètres d'entrée et de sortie. L'invention propose également un procédé comprenant une étape de fourniture du référentiel sémantique selon l'invention. Dans des modes de réalisation préférés, le procédé selon l'invention comprend 25 une ou plusieurs des caractéristiques suivantes : - le procédé selon l'invention comprend en outre une étape initiale de création ou de mise à jour du référentiel ; - l'étape de création du référentiel comprend des étapes de : fourniture des descriptions sémantiques hétérogènes des services web ; et pour chacun des services 30 web : sélection d'un analyseur syntaxique adapté à un type de description sémantique de ce service; extraction de caractéristiques de description sémantique au moyen de l'analyseur syntaxique sélectionné ; et conversion et stockage de ces caractéristiques de description sémantiques selon le métamodèle unique ; 2906383 5 - à l'étape de fourniture, les descriptions sémantiques hétérogènes des services web sont fournies au fur et à mesure de la création de ces services web. - le procédé selon l'invention comprend en outre les étapes de : réception d'une requête sémantique ; analyse sémantique de la requête reçue et transcription d'un 5 résultat de cette analyse selon ledit métamodèle ; recherche d'une opération de service web dans ledit référentiel à l'aide du résultat transcrit ; - l'étape d'analyse sémantique et de transcription est assurée par un mécanisme de découverte sémantique ; - la requête reçue à l'étape de réception est une requête en langage naturel. 10 L'invention concerne encore un produit de programme d'ordinateur adapté à mettre en oeuvre les étapes du procédé selon l'invention ainsi qu'un système informatique comprenant des moyens de code adaptés à mettre en oeuvre les étapes du procédé selon l'invention. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de 15 la description détaillée qui suit des modes de réalisation de l'invention, donnés à titre d'exemple uniquement et en références à des exemples, ainsi qu'au schéma annexé (figure unique), qui illustre les étapes et composantes d'un procédé selon un mode de réalisation de l'invention. L'idée à la base de l'invention est de produire un référentiel sémantique unique 20 des services, pour en faciliter la recherche et réduire le temps de cette recherche. L'invention propose ainsi un référentiel de services web regroupant, conformément à un unique métamodèle, des descriptions sémantiques qui sont, initialement, hétérogènes (c'est-à-dire que deux au moins des services ont des descriptions différentes). Ce métamodèle unique de description sémantique de services permet donc un même mode 25 de description sémantique pour chacun des services. La recherche d'un service correspondant à une requête sémantique est facilitée et allégée car elle se réduit à une recherche dans un référentiel unique qui contient l'information sémantique utile. Auparavant, la recherche s'effectuait en consultant des descriptions sémantiques éparses et sans format homogène. Ainsi, plutôt que d'extraire les informations utiles à l'aide de 30 différentes formes de descriptions sémantiques, un seul métamodèle est utilisé ici, ce qui améliore les performances de la recherche. Le référentiel sémantique de services peut donc être vu comme un nouvel intermédiaire simplifiant et allégeant la recherche de services. 2906383 6 Le référentiel sémantique selon l'invention est de préférence structuré par opérations. Par "opération", on entend un élément de modélisation tel que celui du même nom en UML. Chacune de ces opérations comprend une description sémantique d'une opération d'un service web particulier assurant cette opération. Plus précisément, 5 au plan pratique, une opération peut comprendre une description sémantique d'une fonction de traitement publique d'un service web. Une telle structure de référentiel s'avère avantageuse du point de vue de sa finalité : pouvoir retrouver facilement un service web avec des performances de traitement satisfaisantes. Or, une requête sémantique en ce sens s'exprimera de façon (sémantiquement) proche des 10 caractéristiques de(s) l'opération(s) du service recherché. Ainsi, structurer le référentiel selon les diverses opérations répertoriées permet une recherche cohérente dans le référentiel, et donc in fine plus efficace. De préférence également, ce référentiel sémantique se présente sous la forme d'un fichier unique, sans pointeur ni référence vers l'extérieur (il contient l'information 15 sémantique utile). De la sorte, il est autosuffisant. Il n'est ainsi pas nécessaire, lorsqu'un programme balaie le référentiel en vue de satisfaire une requête, de faire appel à des informations externes, par exemple des ontologies vers lequel pointerait le référentiel. Ceci améliore encore l'efficacité de la recherche de service. En pratique, une ligne du référentiel peut par exemple être dédié à une 20 opération donnée. Notons que le référentiel peut, le cas échéant, être généré ou mis à jour automatiquement à partir des différentes formes de descriptions sémantiques, chaque fois qu'un nouveau service est répertorié. Plus en détails, la description sémantique de chacune des opérations peut par 25 exemple comprendre des informations relatives à l'objectif (ou "goal" en anglais) du service web associé, ainsi qu'à la qualité de service (ou QoS) et au contexte d'utilisation de ce service. Les opérations, quant à elles, peuvent contenir des mots-clés correspondant à ces informations sémantiques et des valeurs ou du contenu associé à ces mots-clés. Le contenu sémantique sous-tendu par ces informations permet de définir 30 efficacement le contenu sémantique utile. De même, une ligne du référentiel se rapportant à une opération donnée peut par exemple contenir des informations relatives à des paramètres d'entrée et/ou des 2906383 7 résultats de sortie de cette opération, afin de pouvoir caractériser plus avant l'opération, au plan sémantique. Des mots-clés relatifs à l'objectif, à la qualité de service ou au contexte d'utilisation d'un service peuvent en outre être assimilés à une étiquette sémantique (ou 5 semantic tag ), laquelle peut également, le cas échéant, être associée à un paramètre d'entrée ou un à résultat de l'opération. Une étiquette sémantique peut ici être vue comme un nom, un groupe de caractères ou plus généralement un code associé à une donnée et servant à la caractériser davantage au plan sémantique (par exemple, l'étiquette "langage" peut être associée aux données traitées par un service web de 10 traduction). Notons que la valeur de cette étiquette dépasse, au plan sémantique, ce qu'il est possible d'extraire directement d'une description WSDL (par exemple) classique d'un service. En revanche, une telle information peut être extraite d'une description sémantique d'un service ou d'une ontologie. D'autres informations peuvent être présentes, le cas échéant, telles que le "type" 15 de données, ce "type" étant ici comparable aux éléments du même nom présents dans la description WSDL d'un service. Notons que diverses formes du métamodèle du référentiel sémantique sont envisageables, selon la façon dont on souhaite implémenter la mise en adéquation au plan sémantique de la requête avec un service du référentiel. Les exemples donnés ci- 20 dessus constituent autant de moyens pour structurer efficacement le métamodèle sémantique. La figure unique illustre des étapes et composantes du procédé selon un mode de réalisation de l'invention. En référence à cette figure, les composantes impliquées sont les suivantes: 25 - un annuaire de services 10 répertoriant divers services web 1 1 - 14 ; - un référentiel 20 de descriptions sémantiques 21 - 24, lesquelles sont typiquement des descriptions disponibles à une URL donnée ; - un générateur 30 automatique du référentiel sémantique unique; - le référentiel sémantique 40 lui-même ; 30 - un mécanisme 50 de découverte sémantique ; - une requête 60 sémantique, typiquement émise depuis un PDA, un ordinateur ou un téléphone portable, etc. ; et - les URLs de(s) service(s) correspondant à la requête. 2906383 8 Selon un mode de réalisation, les composantes 10, 20, 30 ci-dessus sont impliquées dans la création du référentiel 40. On décrit maintenant un procédé de création du référentiel sémantique 40. Pour le résumer, ce procédé se compare à un processus automatique de création, au 5 cours duquel est extraite des descriptions sémantiques 21 24 toute l'information utile. Les informations extraites sont ensuite organisées, structurées et écrites dans un fichier qui constitue ce référentiel 40. Plus en détails maintenant : les descriptions 21 - 24 en question sont par exemple accessible via l'annuaire 10. L'annuaire de services 10 est par exemple un 10 annuaire UDDI , lequel peut le cas échéant contenir des liens ou pointeurs vers ces descriptions 21 - 24 (hétérogènes en général), disponibles à une adresse donnée. Par exemple, une description sémantique d'un service de traduction peut prendre la forme suivante (en utilisant la notation XML) : http://my_host/services/TranslationService/Translator.asmx . . . . . . . . . . . . 15 Bien que cette description utilise une notation XML, elle se distingue d'une simple description XML d'un service. En effet, comme on peut le voir dans cet exemple, l'étiquette "semanticTag" ajoute ici une information sémantique (langage, texte) allant au-delà de ce qu'il est possible d'extraire d'une description XML classique d'un service. La description ci-dessus est donc bien une description "sémantique". L'information 2906383 9 sémantique est ce qui va permettre plus tard la mise en adéquation d'une requête "sémantique" avec un service particulier, grâce au référentiel 40. D'autres informations, présentes par exemple dans la description d'origine d'un service exprimée à l'aide de WSDL-S, ne sont en revanche pas indispensables à la 5 génération du référentiel sémantique ; il s'agit par exemple des références des ontologies ou des types de données utilisées, des informations liées aux pré-conditions ou aux post-conditions liées aux opérations, etc.. Les informations contenues dans la description d'origine sont donc filtrées de sorte à ajuster le contenu du référentiel sémantique 40 au seul contenu utile pour les requêtes 60. 10 A partir de diverses descriptions 21 - 24 sémantiques des services répertoriés dans l'annuaire 10, les informations sémantiques principales sont extraites (étape S300) au moyen d'un analyseur dédié, lequel est au préalable sélectionné en fonction du type de description sémantique 21 - 24. Ensuite, les informations extraites sont converties (étape S300) et stockées 15 (étape S400) selon le métamodèle unique propre au référentiel sémantique 40. Elles sont alors placées dans le fichier constituant ce référentiel 40. Ce fichier peut par exemple avoir la forme suivante : 20 http://my_host/services/TranslationService/Translator.asmx main semantic concepts of the operation 25 http://other_host/www_serv/RSS_Service/RSS_ Service.asmx main semantic concepts of the operation 30 http://another_host/inet_serv/TrafficService/Traffic.asmx main semantic concepts of the operation 35 . . . 2906383 Comme on peut le voir dans l'exemple ci-dessus, décrit à l'aide de la notation XML, le 5 fichier du référentiel sémantique 40 est structuré par opérations (traduction, service RSS, Trafic, etc.), comprenant chacune une description sémantique ("main semantic concepts") d'une opération spécifique d'un service web 11 - 14 particulier. Ces descriptions ne sont pas cependant explicitées dans cet exemple, par souci d'intelligibilité. En particulier, les informations d'objectif, de qualité de service, de 10 contexte d'utilisation, d'entrée/sortie ne sont pas développées. Néanmoins, chaque description sémantique, réduite au strict nécessaire, est entièrement incluse dans le référentiel, qui se présente sous la forme d'un fichier sans pointeur externe. Un même programme (le générateur 30) peut être conçu de sorte à assurer toutes les étapes S300 - S400 de création du référentiel 40. 15 Bien que le référentiel puisse être construit ou mis à jour d'une seule traite (c'est-à-dire en traitant tous les services web devant y être référencés), le référentiel peut en variante être alimenté "en batch" (c'est-à-dire en temps différé) au moment de la création d'un service ou peu après. Ceci peut s'avérer avantageux en ce qui concerne la recherche de services web, par exemple suite à une requête. En effet, le référentiel 20 sémantique selon l'invention peut permettre de satisfaire simplement une requête sémantique, selon un procédé qui va être décrit maintenant. Ce procédé comporte les étapes suivantes. Tout d'abord, on réceptionne (étape S600) une requête sémantique 60, laquelle est analysée, au plan sémantique, puis transcrite selon le métamodèle propre au référentiel 40. Ensuite, il est procédé à la recherche (étape S500) elle-même 25 de la(des) opération(s) du(des) service(s) web 11 - 14 correspondant à la requête. Pour ce faire, on interroge le référentiel 40 et l'on cherche à mettre en adéquation "sémantique" (étape S500) la requête (telle qu'analysée et transcrite) avec l'information sémantique disponible dans le référentiel. Une fois qu'une opération de service a été trouvée (c'est-à-dire qu'il a été mis 30 en adéquation avec la requête, au plan sémantique), l'utilisateur à l'origine de la requête peut par exemple être redirigé vers l'URL 70 correspondante, (étape S700). Il peut donc, à ce point, être considéré qu'il a été satisfait à la requête 60. D'autres mécanismes de mise à disposition du(des) service(s) trouvé(s) peuvent naturellement être envisagés, par 10 2906383 11 exemple une composition (agrégation) de ces services, de façon a produire un nouveau service qui serait perçu par l'utilisateur comme un service unique répondant à sa requête initiale. L'analyse sémantique de la requête, sa transcription et, le cas échéant, la 5 recherche de mise en adéquation S500, peuvent être assurées par un même mécanisme de découverte sémantique 50. Ce mécanisme sémantique 50 est de préférence implémenté dans un outil informatique intégré tel qu'un assistant ou une application comprenant plusieurs modules logiciels couplés, chacun de ces modules étant assigné à une tâche donnée. Notons encore que le mécanisme de découverte peut être 10 implémenté côté client ou serveur. La recherche d'un service correspondant à la requête sémantique est facilitée par le fait qu'elle s'effectue dans le fichier de référentiel unique. Par ailleurs, étant donné que celui-ci contient toute l'information utile, l'exécution du mécanisme de découverte sémantique n'en sera que meilleure et plus rapide et ce, d'autant plus que le référentiel 15 possède une structure unique. Les temps de réponse sont par conséquent très cours, comparés à ceux des solutions connues. Il n'est en effet plus nécessaire d'extraire les informations utiles à partir de formes différentes de descriptions sémantiques pour traiter chaque requête sémantique. En outre, afin de faciliter l'accès aux services sémantiques dits "riches", ce 20 référentiel 40 pourrait être accédé par chaque opérateur ou fournisseur de service qui voudrait assurer des services sémantiques et les mettre à disposition de leurs clients (internes ou externes). On se réfère maintenant de nouveau à la variante décrite plus haut, dans laquelle le référentiel est alimenté "en batch" (ou temps différé) au moment de la 25 création d'un service ou peu après. Cette variante est avantageuse en ce qui concerne la recherche de services web. En effet, la découverte de services web (explicitée plus haut) se fait préférentiellement "en temps réel". Ainsi, il est préférable que le référentiel sémantique soit mis à jour, par exemple par le développeur du service, à chaque création d'un nouveau service ou peu après. En conséquence, la transformation de la 30 description sémantique initiale du service dans la description unique du référentiel peut être effectuée au moment de cette création de service ou peu après, au lieu d'être faite lors de sa recherche. Le temps de recherche de la description et de transformation de celle-ci n'est donc pas consommé au moment de la découverte du service, puisque le 2906383 12 mécanisme de recherche travaille sur un unique référentiel, ce qui a pour effet d'améliorer les temps de réponse et les performances de traitement lors de la découverte sémantique des services. L'aspect "sémantique", omniprésent dans la description qui précède, offre 5 nombre d'applications que l'homme du métier pourra facilement déceler. Par exemple, elle permet d'envisager des requêtes exprimées en langage naturel. Diverses techniques d'analyse sémantique de textes en langage naturel sont connues. Typiquement, des noms, leurs définitions respectives et des relations entre ces noms sont extraits ou déduits de la requête. Il est pour cela fait appel à des dictionnaires et à une analyse 10 grammaticale, comme il est connu de l'art. La requête peut par exemple émaner d'un utilisateur d'un terminal IP (téléphone mobile, assistant personnel numérique, PC de poche, etc.). D'autres variantes peuvent être envisagées, telles que la création de service web à partir d'une telle requête. Pour ce faire, on procède à une analyse sémantique de la requête (laquelle est par exemple exprimée en langage naturel), puis à une 15 identification d'exigences de services web en fonction de cette analyse, enfin on détermine et séquence les services web en fonction des exigences identifiées. Le cas échéant, ces services web, une fois séquencés, peuvent être orchestrés. 20 REVENDICATIONS 1. Procédé pour trouver au moins un service web, parmi une pluralité de services web (11 - 14) décrits respectivement par des descriptions sémantiques, selon des formes ou des langages différents, ce service à trouver devant répondre à une requête donnée, contenant des informations sémantiques ; caractérisé en ce qu'il comprend les étapes suivantes : - en partant des descriptions desdits services, créer ou mettre à jour un référentiel sémantique (40) regroupant des informations sémantiques décrivant lesdits services selon un métamodèle unique de description sémantique de service ; - et lorsqu'une requête est reçue : -- analyser ladite requête (S600) au plan sémantique et la transcrire selon ledit métamodèle unique ; -- puis interroger (S500) ledit référentiel unique (40), chercher à mettre en adéquation sémantique la requête, analysée et transcrite selon ledit métamodèle unique, avec des informations sémantiques disponibles dans ledit référentiel (40), et identifier ainsi au moins un service répondant à ladite requête. 2. Procédé selon la revendication 1, dans lequel le référentiel (40) est structuré par opérations, chacune de ces opérations comprenant une description sémantique d'une opération d'un service web (11 - 14) particulier. 3. Procédé selon la revendication 2, se présentant sous la forme d'un fichier sans pointeur vers l'extérieur du fichier, le fichier comprenant par exemple une ligne 25 par opération. 4. Procédé selon la revendication 3, dans lequel la description sémantique de chacune des opérations comprend des informations : - d'objectif de l'opération du service web (Il - 14) particulier associé ; - de qualité de service de l'opération du service web (11 - 14); et 30 - de contexte d'utilisation de l'opération du service web (Il - 14). 13 2906383 14 5. Procédé selon la revendication 2, 3 ou 4, dans lequel la description sémantique de chacune des opérations comprend en outre des informations sémantiques associées au paramètres d'entrée et de sortie. 6. Procédé selon la revendication 5, dans lequel l'étape de création du référentiel 5 comprend des étapes : - de fourniture des descriptions sémantiques (21 - 24) hétérogènes des services web (11 û 14) ; et - pour chacun des services web (11 - 14) : - sélection d'un analyseur syntaxique adapté à un type de description 10 sémantique de ce service (Il - 14); -extraction (S200) de caractéristiques de description sémantique au moyen de l'analyseur syntaxique sélectionné ; et - conversion (S300) et stockage (S400) de ces caractéristiques de description sémantiques selon le métamodèle unique. 15 7. Procédé selon la revendication 6, dans lequel, à l'étape de fourniture, les descriptions sémantiques (21 - 24) hétérogènes des services web (11 û 14) sont fournies au fur et à mesure de la création de ces services web. 8. Procédé selon l'une quelconque des revendications 4 à 7 , comprenant en outre les étapes de: 20 - réception (S600) d'une requête sémantique (60); - analyse sémantique de la requête reçue et transcription d'un résultat de cette analyse selon ledit métamodèle; - recherche (S500) d'une opération de service web (11 - 14) dans ledit référentiel (40) à l'aide du résultat transcrit. 9. Procédé selon la revendication 8, dans lequel l'étape d'analyse sémantique et de transcription est assurée par un mécanisme de découverte sémantique (50). 10. Procédé selon la revendication 8 ou 9, dans lequel la requête (60) reçue à l'étape de réception (S600) est une requête en langage naturel (60). 2906383 15 11. Produit de programme d'ordinateur adapté à mettre en oeuvre les étapes du procédé selon l'une quelconque des revendications 1 à 10 . 12. Système informatique comprenant des moyens de code adaptés à mettre en oeuvre les étapes du procédé selon l'une quelconque des revendications 1 à 5 10. 13. Utilisation d'un référentiel sémantique (40) de services web comprenant un métamodèle unique de description sémantique de services web, pour trouver, de manière automatique, au moins un service web, parmi une pluralité de 10 services web.