Brevet FR2844370A1 — publié le 20040312

I La présente invention concerne un document électronique de description d'un service informatique, c'est-à-dire d'un service proposé par un ordinateur serveur d'un réseau de communication. Elle concerne également un procédé de transformation d'un document électronique de description d'un service informatique, ainsi qu'un 10 procédé de comparaison de services à partir d'un document électronique de description d'un service conforme à l'invention. Corrélativement, elle concerne un dispositif de transformation et un dispositif de comparaison adaptés à mettre en oeuvre les procédés de transformation et de comparaison conformes à l'invention. Au sein d'un réseau de communication informatique, des ordinateurs serveurs offrent des services à d'autres ordinateurs, appelés ordinateurs clients, de ce réseau de communication. Autrefois, ces services étaient accessibles via des protocoles propriétaires tel que le protocole CORBA. Afin de faciliter l'échange de ces services sur les réseaux de communication o de nombreux ordinateurs peuvent être connectés, ces services sont de plus en plus souvent accessibles via un ou plusieurs protocoles de communication normalisés. A titre d'exemple, ces protocoles de communication peuvent être le 25 protocole HTTP (acronyme du terme anglais "HyperText Transfer Protocol"), ou encore le protocole SMTP (acronyme du terme anglais "Simple Mail Transfer Protocol"), ce protocole étant utilisé généralement pour l'échange de courriers électroniques sur le réseau, ou encore le protocole FTP (acronyme du terme anglais "File Transfer Protocol"), protocole généralement utilisé pour transférer 30 des fichiers. Par ailleurs, l'échange d'informations entre ordinateurs est elle-même de plus en plus fréquemment normalisée, via par exemple la norme SOAP, correspondant à une application du langage de balisage XML (acronyme du terme anglais "eXtended Markup Language"). Cette norme SOAP permet à des ordinateurs de s'échanger des informations sous forme de blocs. En pratique, un message ou un document SOAP est constitué d'une enveloppe contenant des blocs d'en-tête (en anglais "header block") et de blocs de corps (en anglais "body block"). La norme SOAP ne définit pas un protocole de communication particulier, les messages SOAP pouvant être effectivement transmis d'un 10 ordinateur à un autre sur un réseau de communication par l'un des protocoles de communication décrits précédemment. Il existe généralement une couche d'interface entre les messages présentés dans le format SOAP et les protocoles de communication, cette couche étant appelée en anglais un "binding". Lorsqu'un service est offert par un ordinateur serveur, il est généralement décrit dans un document électronique. On connaît ainsi un document WSDL (acronyme du terme anglais "Web Service Description Language") qui est particulièrement bien adapté à décrire un service sur un réseau de communication. Ce document WSDL est lui-même une application du langage de balisage XML. On trouvera une description d'un tel document WSDL sur le site informatique à l'adresse http://www.w3.orl/TR/2001/NOTE-wsdl-20010315. Le document électronique de description d'un service comporte 25 essentiellement deux parties. Une première partie est adaptée à décrire de manière abstraite les messages échangés entre ordinateurs du réseau de communication lors de la fourniture du service en question. Cette première partie est appelée généralement "partie abstraite". Une seconde partie du document est adaptée par ailleurs à 30 comporter des informations relatives à la transmission des messages sur le réseau de communication. Cette deuxième partie, appelée "partie concrète", permet ainsi de décrire comment un message est effectivement transmis sur le réseau. En particulier, cette seconde partie précise le protocole de communication qui est effectivement utilisé pour le transfert des messages, 5 ainsi que le format dans lequel les données seront représentées pour leur communication au sein du réseau de communication. Dans un document électronique de type WSDL, ces informations relatives à la transmission des messages sur le réseau de communication sont incorporées dans un bloc délimité par des balises "binding" permettant dans un 10 même bloc de définir à la fois le protocole de communication et le format des différents messages transmis et reçus par l'ordinateur serveur du réseau de communication. La représentation actuelle utilisée dans un tel document électronique WSDL permet de manière satisfaisante de représenter les services offerts par 15 un ordinateur serveur lorsque celui-ci ne fonctionne que selon un seul protocole de communication, associant par exemple le format SOAP au protocole de communication HTTP. Cependant, un tel document électronique de description d'un service WSDL n'est pas adapté à être utilisé dans un réseau de communication dans 20 lequel les ordinateurs clients utilisent des protocoles de communication différents, de telle sorte que le serveur doit proposer luimême des services accessibles selon des protocoles de communication différents. En effet, un ordinateur serveur qui offrirait exactement les mêmes services au format SOAP via des protocoles différents devrait dupliquer pour 25 chaque protocole les informations liées à la construction de l'enveloppe SOAP correspondante. Ainsi, le document électronique de description d'un service WSDL devrait contenir plusieurs secondes parties concrètes, identiques pour l'essentiel des données de transmission hormis la valeur donnée par exemple à un attribut permettant de définir le protocole utilisé pour véhiculer les messages. 30 Un tel document électronique de description d'un service pose de nombreux problèmes, notamment d'incohérence possible entre les différents documents électroniques de description. En outre, la mise à jour d'un tel document entraîne un travail supplémentaire, dès lors que le fichier est plus important et qu'il nécessite d'intervenir à plusieurs endroits de ce document pour effectuer la mise à jour. La présente invention a pour but de résoudre les inconvénients 5 précités et de proposer un document électronique de description d'un service permettant par son format de proposer de manière simplifiée un même service accessible selon des protocoles de communication différents sur un même serveur d'un réseau de communication. A cet effet, la présente invention vise un document électronique de 10 description d'un service proposé par un ordinateur serveur d'un réseau de communication, comprenant une première partie adaptée à décrire des messages échangées entre ordinateurs du réseau de communication et une seconde partie adaptée à comporter des informations relatives à la transmission des messages sur le réseau de communication. Selon l'invention, la seconde partie comprend deux sous-parties, une première sous-partie étant adaptée à comporter des informations sur un format de représentation des messages et une seconde sous-partie étant adaptée à comporter des informations sur un protocole de communication mis en oeuvre pour la transmission des messages sur le réseau de communication. Ainsi, grâce à ce partitionnement d'une seconde partie du document électronique, il est possible de simplifier la description d'un service en réduisant la taille des fichiers générés sur un serveur mettant en oeuvre plusieurs protocoles de communication. La mise à jour de ces fichiers est également facilitée dès lors qu'on limite les parties du document électronique à mettre à 25 jour, indépendamment des protocoles de communication. Les risques d'erreur et de doublon sont ainsi limités. En outre, la comparaison de tels services devient plus facile dès lors qu'il est possible de comparer les opérations effectuées par ces services indépendamment des protocoles de communication utilisés par les serveurs. Selon une caractéristique préférée de l'invention, la seconde souspartie comprend une référence pointant vers des informations incluses dans la première sous-partie du document de description d'un service. Ainsi, différents protocoles de communication décrits dans une seconde sous-partie peuvent référencer des informations incluses dans une première sous-partie, en évitant la duplication de ces informations pour chacun des protocoles de communication décrits dans le document de description d'un service. Selon une caractéristique préférée de l'invention, lorsque ce document est représenté dans un langage de balisage, les première et seconde sous-parties sont des blocs disjoints, chaque bloc étant encadré par une balise ouvrante et une balise fermante prédéterminées. En utilisant ainsi un langage de balisage du type XML pour présenter le document électronique de description, tel que cela est le cas pour un document électronique de type WSDL, il est possible d'identifier chacune des sous-parties par une balise ayant un nom prédéterminé. Selon une autre caractéristique préférée de l'invention, lorsqu'un 15 service comprend à la fois des premiers messages reçus par un ordinateur serveur du réseau de communication et des seconds messages envoyés par l'ordinateur serveur de communication, la première sous-partie est adaptée à comporter des informations sur un format de représentation des premiers messages reçus par l'ordinateur serveur et des seconds messages envoyés par 20 l'ordinateur serveur. Il est possible ainsi d'utiliser le même format de représentation des messages reçus et envoyés par l'ordinateur, ou encore des formats différents choisis par exemple parmi une enveloppe SOAP, une adresse électronique URI ou un document MIME. Selon une autre caractéristique préférée de l'invention, lorsqu'un service comprend à la fois des premiers messages reçus par l'ordinateur serveur et des seconds messages envoyés par l'ordinateur serveur du réseau de communications, la seconde sous-partie est adaptée à comporter des informations sur un protocole de communication mis en oeuvre pour la réception 30 des premiers messages et pour l'envoi des seconds messages. Il est ainsi possible d'utiliser le même protocole de communication, ou encore des protocoles de communication différents pour la réception des premiers messages et l'envoi des seconds messages. Selon un autre aspect de l'invention, un procédé de transformation 5 d'un document électronique de description d'un service proposé par un ordinateur serveur d'un réseau de communication, comprenant une première partie adaptée à décrire des messages échangés entre ordinateurs du réseau de communication et une seconde partie adaptée à comporter des informations relatives à la transmission des messages sur le réseau de communication, 10 comprend les étapes suivantes: - extraction de la première partie; - inscription de la première partie dans un document électronique transformé; - extraction d'informations relatives à un format de représentation 15 des messages; - inscription des informations extraites dans une première souspartie d'une seconde partie du document électronique transformé; - extraction d'informations relatives à un protocole de communication mis en oeuvre pour la transmission des messages sur le réseau 20 de communication; et - inscription des informations extraites dans une seconde souspartie de la seconde partie du document électronique transformé. Ce procédé permet de manière automatique de générer à partir d'un document électronique de description d'un service type WSDL, un document 25 dans un nouveau format conforme à l'invention, permettant, *comme décrit précédemment, grâce à la séparation des informations d'encodage et des informations concernant le protocole de communication, de simplifier la description des services sur un réseau de communication. Corrélativement, la présente invention concerne un dispositif de 30 transformation d'un document électronique de description d'un service proposé par un ordinateur serveur d'un réseau de communication, comprenant une première partie adaptée à décrire des messages échangés entre ordinateurs du réseau de communication et une seconde partie adaptée à comporter des informations relatives à la transmission des messages sur le réseau de communication, comprenant: - des moyens d'extraction de la première partie; - des moyens d'inscription de la première partie dans un document électronique transformé; - des moyens d'extraction d'informations relatives à un format de représentation des messages; - des moyens d'inscription des informations extraites dans une 10 première sous-partie d'une seconde partie du document électronique transformé; - des moyens d'extraction d'informations relatives à un protocole de communication mis en oeuvre pour la transmission des messages sur le réseau de communication; et - des moyens d'inscription des informations extraites dans une seconde sous-partie de la seconde partie du document électronique transformé. Selon un troisième aspect de l'invention, un procédé de comparaison de services à partir d'un document électronique de description d'un service conforme à l'invention comprend les étapes suivantes: - identification dans le document électronique de secondes sousparties pointant vers une même première sous-partie d'une seconde partie dudit document; et affichage des informations relatives au protocole de communication comprises dans chaque seconde sous-partie identifiée. Il est ainsi possible à partir d'un document électronique de description conforme à l'invention d'identifier pour un même service les protocoles de communication accessibles sur le réseau de communication. Corrélativement, la présente invention concerne un dispositif de comparaison d'un service à partir d'un document électronique de description 30 d'un service conforme à l'invention, comprenant: - des moyens d'identification dans le document électronique de secondes sous-parties pointant vers une même première sous-partie d'une seconde partie dudit document; et - des moyens d'affichage des informations relatives au protocole de communication comprises dans chaque seconde sous-partie identifiée. Les dispositifs de transformation et de comparaison présentent des avantages et caractéristiques analogues au procédé de transformation et au procédé de comparaison qu'ils mettent en oeuvre. La présente invention concerne par ailleurs un moyen de stockage 10 d'informations, fixe ou partiellement ou totalement amovible, lisible par un système informatique, adapté à mémoriser un document électronique de description d'un service conforme à l'invention. Elle concerne également un ordinateur et un réseau de communication adaptés à mettre en oeuvre le procédé de transformation et/ou 15 le procédé de comparaison conformes à l'invention. En outre, la présente invention concerne un moyen de stockage d'informations, éventuellement totalement ou partiellement amovible, lisible par un système informatique, comprenant des instructions pour un programme informatique adapté à mettre en oeuvre le procédé de transformation d'un 20 document électronique et/ou le procédé de comparaison conformes à l'invention, lorsque ce programme est chargé et exécuté par le système informatique. Enfin, la présente invention vise également un programme d'ordinateur lisible par un microprocesseur comprenant des portions de code 25 logiciel adaptées à mettre en oeuvre les procédés de transformation et/ou de comparaison conformes à l'invention, lorsque ledit programme est chargé et exécuté par le microprocesseur. D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après. Aux dessins annexés, donnés à titre d'exemples non limitatifs: - les figures 1, 2 et 3 illustrent différentes configurations d'un réseau de communication dans lequel un ordinateur serveur est adapté à proposer un ou plusieurs services à des ordinateurs clients; - les figure 4a, 4b et 4c sont des algorithmes illustrant le procédé 5 de transformation d'un document électronique de description d'un service conforme à l'invention; - la figure 5 est un algorithme illustrant le procédé de comparaison d'un service à partir d'un document électronique de description d'un service conforme à l'invention; et - la figure 6 est un schéma-bloc illustrant un dispositif adapté à mettre en oeuvre les procédés de transformation et de description conformes à l'invention. On a illustré à la figure 1 un premier type de réseau de communication dans lequel un ordinateur client CI est adapté à communiquer 15 avec un ordinateur serveur SI. En particulier, dans ce type de réseau de communication, l'ordinateur serveur Si offre des services à l'ordinateur client CI. Dans ce mode de réalisation, ces services sont accessibles via un protocole de communication normalisé, SOAP 1.2, consultable à l'adresse 20 électronique http://www.w3.org/TR/2002/WD-soa I2-rartl-20020626. Dans ce protocole de communication, une enveloppe SOAP définissant le message à transmettre est effectivement transmise sur le réseau de communication via le protocole de communication HTTP. Un service SOAP est en général décrit par un document WSDL, 25 dans un langage spécialement adapté à la description d'un tel service. Un document WSDL contient principalement deux parties. Une première partie, appelée partie abstraite, décrit de manière abstraite les messages qui sont échangés entre ordinateurs du réseau de communication lors de la mise en oeuvre du service. Une seconde partie est adaptée à 30 comporter les informations concrètes, définissant la transmission des messages sur le réseau de communication. La première partie est elle-même divisée en trois sous-parties. La première sous-partie de cette première partie contient des déclarations de types, permettant de décrire la structure abstraite des messages. Ces types sont ensuite référencés dans la deuxième sous-partie de la première partie du document WSDL. La déclaration de ces types est généralement réalisée au moyen de balises ... . Cette déclaration de types est bien connue dans les documents écrits en langage XML et il n'est essentiel pour la compréhension de l'invention de décrire plus avant les types utilisés. La seconde sous-partie de la première partie du document contient des déclarations de messages élémentaires. Elle définit ainsi les messages qui seront échangés entre les ordinateurs lors de la mise en oeuvre du service, sans en décrire précisément le contenu ou l'enchaînement. A titre d'exemple, et uniquement pour faciliter la compréhension de la 15 présente invention, les trois messages suivants peuvent être échangés entre les ordinateurs Cl et SI. Cette seconde sous-partie ne définit pas les liens existants entre ces différents messages: a. Le premier message correspond à une demande d'obtention de la quantité d'un produit en stock. Le produit est identifié par son numéro 20 d'inventaire ("PartNumber"): b. Le second message véhicule la quantité disponible d'un produit 25 actuellement en stock: c. Le troisième message correspond à une demande de mise à jour d'une quantité de produit en stock: Une troisième sous-partie de la première partie du document WSDL 5 permet de regrouper les messages élémentaires ainsi définis dans les deux premières sous-parties en opérations logiques. Une opération peut être considérée comme un service élémentaire, ce dernier étant lui-même implémenté par un ou plusieurs messages. Dans l'exemple ci-dessous, les deux premiers messages 10 élémentaires introduits plus hauts sont regroupés en une même opération logique ("getQuantitylnStock"). Cette opération permet d'obtenir la quantité de produit actuellement disponible. Par ailleurs, le message élémentaire "getQuantitylnStocklnput" est déclaré comme étant de type requête ("input"), et le message élémentaire 15 "getQuantitylnStockOutput" comme étant de type réponse ("output"). Enfin, les messages sont liés comme l'un étant la réponse de l'autre en étant regroupés dans une même opération, et en étant placés dans l'ordre "input", puis "output". Par ailleurs, une seconde opération logique ("setQuantitylnStock") est déclarée comme constituée d'un unique message de requête 20 "setQuantitylnStocklnput": 25 Bien évidemment, des formes plus élaborées d'opérations, consistant en un ensemble complexe d'échanges de messages, pourraient être décrites dans ce langage. Cette première partie du document WSDL permet ainsi de définir le 5 type, le contenu et l'ordonnancement des messages échangés entre ordinateurs du réseau lors de la mise en oeuvre d'un service proposé par l'ordinateur serveur S1. Le document WSDL comprend en outre, comme expliqué précédemment, une seconde partie qui permet de préciser quel protocole est 10 effectivement utilisé pour transmettre les messages et quel encodage ou format de représentation est mis en oeuvre pour représenter ces données sous une forme adaptée au réseau de communication. En reprenant l'exemple précédent, cette seconde partie d'un document WSDL peut se présenter de la manière suivante: 25 30 Cette seconde partie du document WSDL indique ainsi notamment que les messages élémentaires définis dans la première partie sont au format SOAP; ceci est indiqué par la présence en plusieurs endroits de cette seconde partie du préfixe ou espace de nomage (en anglais "namespace") défini par le terme "soap:". Pour toutes les opérations définies dans cette seconde partie, le protocole de transmission des messages sera le protocole HTTP. Ce protocole est indiqué notamment par l'attribut "transport" de la balise "soap:binding". En outre, cette seconde partie précise que pour le message de 10 requête, défini par la balise "input" l'enveloppe SOAP contiendra, dans un bloc de corps le numéro d'inventaire du produit désiré "PartNumber". Pour le message de réponse, défini par la balise "output" l'enveloppe SOAP contiendra, dans deux blocs de corps, le numéro d'inventaire du produit ainsi que la quantité de produit disponible. Un tel document électronique de description d'un service permet de représenter de manière satisfaisante les services offerts par le serveur Si de la figure 1. En effet, dans ce cas, le serveur SI n'offre ses services que par l'intermédiaire d'un unique protocole, combinant une enveloppe SOAP au 20 protocole de communication HTTP. Cependant, un tel document électronique de description n'est pas adapté à décrire un service fourni par un second serveur S2 tel qu'illustré à la figure 2. En effet, dans ce second serveur S2, une même enveloppe SOAP 25 peut être véhiculée indifféremment par différents protocoles de transport, définis précédemment, tels que les protocoles HTTP, SMTP ou FTP. Le serveur S2 offre ainsi exactement le même service SOAP accessible via des protocoles de communication différents qui peuvent être adaptés à certains clients. Dans l'exemple de la figure 2, outre le premier client Cl identique à celui décrit précédemment en référence à la figure 1, le réseau de communication comprend également un second client C2 qui est adapté à communiquer sur le réseau de communication non seulement via le protocole HTTP mais également via le protocole SMTP. De même, le document décrit précédemment ne s'applique pas non plus dans un réseau tel qu'illustré à la figure 3 dans lequel les protocoles de 5 communication tels que HTTP ou FTP, ou éventuellement SMTP, sont utilisés directement, sans l'intermédiaire d'une enveloppe SOAP. Si l'on souhaitait rendre compatible un tel document électronique de description avec les différents réseaux de communication décrits sur les figures 1, 2 et 3, le document WSDL devrait comporter plusieurs secondes parties 10 définies par une balise "binding". Ces secondes parties comporteraient de nombreuses informations communes, seul le type de protocole utilisé (par exemple via l'attribut "transport" de la balise "soap:binding") étant modifié. Un tel document de description, outre sa taille démesurée du fait de la redondance des informations inscrites dans sa seconde partie concrète, 15 présente lors de sa génération un risque d'incohérence, d'erreur et est relativement fastidieux à établir et à mettre à jour. Afin de résoudre ces inconvénients, l'invention propose selon un de ses aspects un procédé de transformation d'un tel document WSDL tel que décrit aux figures 4a, 4b et 4c. Le procédé de transformation d'un document électronique WSDL tel que décrit précédemment comprend tout d'abord une étape de lecture El 1 du document. Ce document WSDL étant écrit dans un langage de balisage du type XML, une étape d'analyse syntaxique et de construction d'un arbre E12 permet 25 de représenter ce document sous forme hiérarchisée, chaque noeud de l'arbre construit correspondant ainsi à une balise du document XML. Une étape d'extraction E13 permet d'extraire tout d'abord la première partie du document tel que décrit précédemment. Cette première partie est inscrite dans une étape d'inscription E14 dans le document électronique 30 transformé. Cette première partie, correspondant à la partie abstraite du document WSDL, n'est pas modifiée dans le document électronique transformé et est en réalité simplement recopiée. On extrait ensuite dans une étape d'extraction E15 la seconde partie du document WSDL correspondant à la partie concrète de ce document. En pratique, la première balise dans laquelle sont mémorisées les informations sur la transmission des messages sur le réseau de communication, est extraite, en identifiant son nom. Une étape de transformation E16 est adaptée ensuite à modifier la 10 structure des informations incluses dans cette balise . Cette étape de transformation E16 est détaillée sur la figure 4b. Une étape d'extraction E17 est adaptée à extraire les informations relatives au format de représentation des messages, c'est-à-dire à l'encodage des informations. Une étape de test E18 permet de vérifier si ce type d'encodage a déjà été traité. Dans la négative, une étape d'inscription E19 est ensuite mise en oeuvre pour inscrire dans le document de description transformé une balise ouvrante . Cette balise permet ainsi de définir une première sous-partie dans la 20 seconde partie du document transformé, adapté à comprendre les informations relatives au format des messages. A la suite de cette balise ouvrante, une étape d'inscription E20 est mise en oeuvre afin d'insérer les informations d'encodage extraites précédemment. Une étape d'ajout E21 permet d'ajouter l'encodage à une table des encodages utilisée lors de l'étape de test E18 pour déterminer si l'encodage a déjà été traité. Ensuite, une étape d'inscription E22 permet de délimiter cette première sous-partie par une balise fermante . Si à l'issue de l'étape de test 18, l'encodage a déjà été traité, c'estàdire que les informations d'encodage ont été mémorisées dans la table lors de l'étape d'ajout E21, une étape d'obtention E23 permet d'obtenir les informations mémorisées dans la balise correspondante. Une étape d'extraction E24 est ensuite mise en oeuvre sur le document XML à transformer afin d'identifier les informations relatives au 5 protocole de communication, c'est-à-dire dans l'exemple ci-dessus les informations relatives au protocole HTTP de transfert des messages sur le réseau de communication. Une étape d'inscription E25 permet comme précédemment d'introduire une nouvelle balise ouvrante , adaptée à 10 délimiter cette seconde sous-partie de la seconde partie du document de description transformé. Une étape d'ajout E26 permet d'inclure à la suite de la balise ouvrante précédente une référence vers la balise associée. Cette référence peut être réalisée grâce au pointeur "binding" 15 permettant de référencer le nom de la balise . Une étape d'inscription E27 est ensuite adaptée à insérer à l'intérieur de cette balise les informations de protocole identifiées précédemment. Cette étape d'inscription E27 est détaillée à la figure 4c. Elle comporte tout d'abord une étape d'inscription E28 d'une balise 20 . Une étape d'obtention E29 permet d'obtenir la valeur de l'attribut transport utilisé dans le document WSDL à transformer. Ici, la valeur de cet attribut est égale à http:/Ischemas.xmlsoap. orq/soap/http. Une étape d'obtention E30 permet d'obtenir une nouvelle valeur pour cet attribut dans une table de correspondance. Pour les protocoles déjà connus, les correspondances suivantes sont utilisées: http://schemas.xmlsoap.orq/soap/http-> http://www.w3. orc/2002/06/soap/bindings/HTTP http://schemas.xmlsoap.orgq/soap/smtp/-> http://www.example.orq/2002/O2/soap/bindings/Email http://schemas.xmlsoap. org/soap/ftp/-> http://www.crf.canon.fr/2002/05/soap/bindings/FTP Pour les autres protocoles, la table doit être mise à jour lorsque ces protocoles sont mis à disposition des utilisateurs. Ici, la nouvelle valeur correspondant à l'attribut précédent est le 10 protocole http://www.w3.orq/2002/06/soap/bindings/HTTP, qui correspond au protocole HTTP mis en oeuvre avec la norme SOAP. Ce nom de protocole est ainsi inscrit dans la balise dans une étape d'inscription E31. Une étape de sélection E32 permet de sélectionner une première 15 opération, telle que l'opération "getQuantitylnStock". Une étape de test E33 permet de vérifier si cette opération contient des messages du type , c'est-à-dire des messages nécessitant une réponse. Dans l'affirmative, par exemple pour l'opération "getQuantitylnStock", 20 une étape d'inscription E34 est adaptée à inscrire une balise . Une étape d'inscription E35 est adaptée à inscrire une fonctionnalité MEP (acronyme du terme anglais "Message Exchange Pattern"), par l'utilisation d'une balise . Cette balise est utilisée pour définir un modèle d'échange de 25 messages entre plusieurs noeuds SOAP. Ici, ce modèle est du type requêteréponse de telle sorte qu'un premier ordinateur envoie un message à un second ordinateur qui lui retourne un message de réponse. Ce type de balise utilise le concept MEP défini par SOAP dont une description détaillée peut être obtenue à l'adresse électronique 30 http://www.w3.orq/TR/2002/WD-soap 12-parti -20020626/#soapmep. Une étape d'inscription E36 est en outre adaptée à ajouter une autre fonctionnalité ou associé au protocole de communication. Cette fonctionnalité est nommée ici à titre d'exemple "webmethod", ayant une propriété "Method" dont la valeur peut être par exemple fixée à GET. L'identifiant de la feature "web-method" est http://www.w3. orq/2002/06/soap/features/web-method. De même cette balise utilise le concept "feature" défini par SOAP et dont une description est donnée à l'adresse électronique http://www.w3.orq/TR/2002/WD-soapJ 2-partl -20020626/#soapfeature. * Il n'est pas nécessaire de détailler plus avant l'utilisation de ces 10 balises particulières pour la compréhension de l'invention. En un mot, ici, on indique que le protocole utilise la méthode HTTP GET. L'insertion des informations relatives à cette opération est terminée par une étape d'inscription E37 permettant d'inscrire une balise fermante 15 . Si à l'issue de test E33, I'opération à traiter ne contient pas de message de réponse du type , tel que cela est le cas pour l'opération "setQuantitylnStock", les informations relatives au protocole sont modifiées de la manière suivante. Une étape d'inscription E38 permet d'inscrire une balise 20 comme dans l'étape d'inscription E34 précédante. Une étape d'inscription E39 d'une fonctionnalité MEP est également mise en oeuvre. Ici, la valeur de cette balise est égale à "one way" dès lors que cette opération ne requiert la mise en oeuvre que d'un seul message, ne nécessitant pas de réponse. L'identifiant de la MEP one-way est http://www.crf.canon. fr/2002/05/soap/men/one-wav. Comme précédemment, une étape d'inscription E40 peut être mise en oeuvre pour ajouter des fonctionnalités au protocole de communication. Ici, à titre d'exemple, le nom de cette fonctionnalité est également "web-method", ayant une propriété "Method" dont la valeur est fixée à PUT. Une étape d'inscription E41 est ensuite mise en oeuvre de manière analogue à l'étape d'inscription E37 pour insérer une balise fermante permettant de délimiter les informations relatives au protocole de communication utilisé pour cette opération. On vérifie dans une étape de test E42 si toutes les opérations ont été traitées. Dans la négative, une étape de sélection E43 permet de sélectionner l'opération suivante et l'ensemble des étapes E33 à E42 est réitérée pour cette opération. Lorsque toutes les opérations ont été traitées, cette étape 10 d'inscription E27 des informations relatives au protocole est terminée. En revenant à la figure 4b, une étape d'inscription E43 est adaptée à inscrire une balise fermante permettant de clore cette seconde sous-partie du message comprenant les informations relatives au protocole de communication. Cette étape de transformation E16 d'une balise est ainsi terminée. En revenant à la figure 4a, on vérifie dans une étape de test E44 si cette balise ainsi traitée correspond à la dernière balise . Dans la négative, on extrait une balise suivante et on 20 réitère sur celle-ci l'ensemble des étapes E16 à E44. Lorsque toutes les balises ont été traitées, le procédé de transformation du document WSDL est terminé. La transformation du document électronique de description WSDL permet d'obtenir un document dont la seconde partie se présente de la façon 25 suivante: 30 15 20 25 Cette seconde partie de document est ainsi partitionnée en deux sous-parties, une première sous-partie comprenant les informations relatives au format de représentation des messages et la seconde sous-partie comportant les informations sur le protocole de communication mis en oeuvre pour la transmission des messages sur le réseau de communication. Lorsque comme ici le document est représenté dans un langage de 5 balisage tel que XML, les deux sous-parties sont des blocs disjoints encadrés chacun par une balise ouvrante et une balise fermante. Ainsi la première souspartie est incluse dans la balise "messageBinding" et la seconde sous-partie est incluse dans la balise "protocolBinding". La seconde sous-partie comprend une référence identifiant la 10 première sous-partie, grâce au pointeur "binding". Ici le pointeur "binding" a pour valeur "StockMgtSoap" qui correspond au nom de la balise "messageBinding" décrite dans la première sous-partie. En outre, dans l'exemple précédent, le message de requête de l'opération "getQuantitylnStock" c'est-à-dire un message transmis par 15 l'ordinateur serveur, est encodé sous la forme d'une adresse électronique URI. Le message de réponse de cette même opération, c'est-à-dire un message reçu par l'ordinateur serveur du réseau de communication, est encodé sous la forme d'une enveloppe SOAP. Ainsi, la première sous-partie du document peut comporter des 20 informations sur un format de représentation différentes suivant que le message est reçu par l'ordinateur serveur ou que le message est transmis par ce même ordinateur serveur. Dans la seconde sous-partie du document électronique de description transformé, seules les informations relatives au protocole de 25 communication sont décrites, indépendamment du type de l'encodage choisi et déterminé dans la première sous-partie de la seconde partie du document. Dans cet exemple, le protocole correspond au protocole de communication HTTP via la couche d'application SOAP. Ce protocole de communication est dans cet exemple identique pour 30 toutes les opérations, ainsi que pour les messages transmis et les messages reçus par le serveur. Grâce à cette structure du document, lorsque l'on souhaite changer uniquement le protocole de communication, par exemple lors de la mise en oeuvre d'un service par le second serveur S2 illustré à la figure 2, il suffit de modifier uniquement cette seconde sous-partie du message définie par la balise "protocol Binding". A titre d'exemple, cette seconde partie du document électronique de description peut se présenter de la manière suivante lorsqu'on choisit d'utiliser le protocole SMTP pour les messages transmis par l'ordinateur serveur et le protocole HTTP pour les messages reçus par l'ordinateur serveur: 15 Ces protocoles sont ainsi définis au travers de la balise "protocol Binding" par des messages élémentaires puisque les protocoles à l'aller et au retour des messages sont différents. Par contre, le modèle MEP est spécifié au niveau de chaque opération. De la même manière, on peut définir pour d'autres types d'opération, par exemple pour l'opération de mise à jour, le protocole associé. A titre d'exemple, on utilise le protocole SMTP de telle sorte que la seconde souspartie du document de description se présente de la manière suivante: 10 Dans cet exemple, le modèles des échanges MEP est du type oneway, c'est-à-dire d'une requête sans réponse. En effet, cette opération de mise à jour ne nécessite pas de réponse de la part de l'ordinateur client. En outre, dans l'exemple précédent, un champ protocolaire "field" est 20 utilisé pour définir la valeur d'un en-tête protocolaire. Quand un ordinateur client génère un message à partir du document WSDL précédent, ce message doit indiquer le champ "X-mailer" selon le format suivant: "X-mailer: SOAP Email; version=1.23" La valeur principale du champ "X-mailer" est "SOAP Email" et les paramètres de ce champ sont définis via l'attribut "version" ayant pour valeur "1.23". Grâce à la séparation de la seconde partie du document de description entre une première partie adaptée à comporter les informations de 30 format des messages et une seconde partie comportant les informations de protocoles, on constate dans les exemples ci-dessus qu'il n'y a pas de duplication d'informations. Cette séparation permet ainsi de réduire les doublons, et ainsi de diminuer la taille du document électronique de description, de limiter les risques d'erreur et de simplifier les problèmes de mise à jour du document électronique de description d'un service. Par ailleurs, la comparaison d'un service procuré par un ordinateur serveur d'un réseau devient plus facile. En effet, on peut facilement examiner si deux opérations ayant des protocoles différents sont compatibles, dès lors que tel sera le cas si ces protocoles pointent (c'est-à-dire utilisent) la même représentation des messages définie par le même bloc "messageBinding". En pratique, comme illustré à la figure 5, il est possible ainsi de 10 comparer les services fournis par un ordinateur serveur à partir d'un document électronique de description d'un service. Ce procédé de comparaison comprend une étape de lecture E50 du document WSDL et une étape d'analyse E51 adaptée à analyser la structure du document et à construire l'arbre associé à ce document comme décrit 15 précédemment. Une étape d'identification E52 est adaptée à identifier les noeuds qui pointent vers un même noeud . On identifie ainsi dans le document les secondes sous-parties 20 pointant vers une même première sous-partie. L'étape d'extraction E53 est adaptée à extraire le premier noeud identifié. Une étape d'affichage E54 est adaptée ensuite à afficher les informations relatives au protocole de communication comprises dans cette 25 première balise . Une étape de test E55 permet de vérifier s'il existe un autre noeud identifié. Dans l'affirmative, on extrait dans une étape d'extraction E56 le noeud suivant et on réitère l'étape d'affichage E54 des informations de protocole comprises dans ce noeud 30 suivant. Lorsque, à l'issue de l'étape de test E55 tous les noeuds identifiés ont été traités, le procédé de comparaison mis en oeuvre sur le document électronique de description d'un service est terminé. Bien que l'on ait décrit précédemment un exemple de réalisation 5 dans lequel les protocoles de communication sont couplés avec la norme SOAP de représentation des messages, la présente invention s'applique également lorsque les protocoles tels que HTTP, FTP ou SMTP sont utilisés directement, c'est-à-dire sans la couche d'application SOAP. Un exemple de document électronique de description d'un service 10 est donné ci-dessous pour l'opération "getQuantitylnStock": Dans cet exemple, la première sous-partie "messageBinding" comprend uniquement les informations d'encodage, à l'exclusion de toute information sur le protocole de communication. Dans cet exemple, le message transmis par l'ordinateur serveur est 5 représenté sous la forme d'une adresse URI, alors que le message reçu par l'ordinateur serveur est représenté sous la forme d'un document MIME. Le protocole de communication est défini à l'intérieur de la seconde souspartie comprise dans la balise " ", et est ici à titre d'exemple le protocole HTTP. Comme précédemment, des options liées à ce protocole de communication et introduites dans les balises MEP et FEATURE sont également précisées pour chaque opération. Afin de mettre en oeuvre le procédé de transformation décrit en référence aux figures 4a, 4b et 4c, un dispositif de transformation comprend 15 essentiellement des moyens de lecture d'un document, des moyens d'analyse de ce document afin de construire un arbre représentatif de la structure hiérarchique du document, ainsi que des moyens d'extraction et d'inscription adaptés à identifier différentes parties du document et à inscrire ces parties dans un document électronique transformé. De même, un dispositif de comparaison adapté à mettre en oeuvre le procédé de comparaison décrit en référence à la figure 5 comprend des moyens de lecture et d'analyse tels que décrits précédemment ainsi que des moyens d'identification des noeuds pointant vers un même noeud , des moyens d'extraction de ces noeuds 25 identifiés et d'affichage des informations relatives au protocole de communication mémorisées dans chacun de ces noeuds. Ces dispositifs de transformation et de comparaison peuvent être incorporés dans un ordinateur tel qu'illustré à la figure 6. En particulier, les différents moyens identifiés ci-dessus peuvent être 30 incorporés dans un microprocesseur 100, une mémoire morte 101 ("Read- only memory" ou ROM) étant adaptée à mémoriser un programme de transformation et/ou de comparaison conforme à l'invention. Bien entendu, ces dispositifs de transformation d'un document ou de comparaison d'un service peuvent être mis en oeuvre dans un même ordinateur ou bien dans des stations différentes du réseau de communication. La mémoire vive 102 ("Random access memory" ou RAM) est 5 adaptée à mémoriser dans des registres les valeurs modifiées lors de l'exécution du programme de transformation et de comparaison. Le microprocesseur 100 est intégré à un ordinateur qui peut être connecté à différents périphériques et à d'autres ordinateurs du réseau de communication tel qu'illustré aux figures 1 à 3. En particulier, cet ordinateur 10 correspond à un ordinateur serveur SI, S2, S3 de ces réseaux. Cet ordinateur SI, S2, S3 comporte de manière connue une interface de communication 110 reliée au réseau de communication 10 pour recevoir ou transmettre des messages L'ordinateur comporte en outre des moyens de stockage de 15 documents, tel qu'un disque dur 106, ou est adapté à coopérer au moyen d'un lecteur de disque 107 (disquettes, disques compacts ou cartes informatiques) avec des moyens de stockage de documents amovibles, tels que des disques 700. Ces moyens de stockage fixes ou amovibles peuvent comporter le code du procédé de transformation ou de comparaison conforme à l'invention. lis sont également adaptés à mémoriser un document électronique de description d'un service tel que défini par la présente invention. A titre de variante, le programme permettant au dispositif de transformation ou de comparaison de mettre en oeuvre l'invention peut être stocké dans la mémoire morte 101. En seconde variante, le programme pourra être reçu pour être stocké comme décrit précédemment par l'intermédiaire du réseau de communication 10. L'ordinateur SI, S2, S3 possède également un écran 103 permettant par exemple de servir d'interface avec un opérateur à l'aide du clavier 104 ou 30 de la souris 105 ou de tout autre moyen. L'unité centrale 100 (CPU) exécutera alors les instructions relatives à la mise en oeuvre de l'invention. Lors de la mise sous tension, les programmes et méthodes relatives à l'invention stockés dans une mémoire non volatile, par exemple la mémoire 101, sont transférés dans la mémoire 102 qui contiendra alors le code exécutable de l'invention ainsi que les variables nécessaires à la mise en oeuvre de l'invention. Le bus de communication 112 permet la communication entre les différents sous-éléments de l'ordinateur ou liés à lui. La représentation de ce bus 112 n'est pas limitative et notamment le microprocesseur 100 est susceptible de communiquer des instructions à tout sous-élément directement ou par l'intermédiaire d'un autre sous-élément. Bien entendu, de nombreuses modifications peuvent être apportées aux exemples de réalisation décrits précédemment sans sortir du cadre de l'invention. REVENDICATIONS 1. Document électronique de description d'un service proposé par un ordinateur serveur (SI, S2, S3) d'un réseau de communication, comprenant 10 une première partie adaptée à décrire des messages échangés entre ordinateurs du réseau de communication et une seconde partie adaptée à comporter des informations relatives à la transmission desdits messages sur le réseau de communication, caractérisé en ce que ladite seconde partie comprend deux sous-parties, une première sous-partie étant adaptée à 15 comporter des informations sur un format de représentation desdits messages et une seconde sous-partie étant adaptée à comporter des informations sur un protocole de communication mis en oeuvre pour la transmission desdits messages sur le réseau de communication. 2. Document électronique de description d'un service conforme à la 20 revendication 1, caractérisé en ce que ladite seconde sous-partie comprend une référence pointant vers des informations incluses dans ladite première sous-partie. 3. Document électronique de description d'un service conforme à l'une des revendications 1 ou 2, ledit document étant représenté dans un 25 langage de balisage, caractérisé en ce que lesdites première et seconde sousparties sont des blocs disjoints, chaque bloc étant encadré par une balise ouvrante et une balise fermante prédéterminées. 4. Document électronique de description d'un service conforme à l'une des revendications 1 à 3, caractérisé en ce qu'il est représenté dans un 30 langage de balisage tel que le langage XML. 5. Document électronique de description d'un service conforme à l'une des revendications 1 à 4, dans lequel des premiers messages sont reçus par l'ordinateur serveur (SI, S2, S3) du réseau de communication et des seconds messages sont envoyés par l'ordinateur serveur (SI, S2, S3) du réseau de communication, caractérisé en ce que ladite première souspartie est adaptée à comporter des informations sur un format de représentation desdits 5 premiers messages reçus par l'ordinateur serveur (SI, S2, S3) et desdits seconds messages envoyés par l'ordinateur serveur (Si, S2, S3). 6. Document électronique de description d'un service, conforme à la revendication 5, caractérisé en ce que le format de représentation desdits premiers messages reçus est différent du format de représentation desdits 10 seconds messages envoyés par l'ordinateur serveur (SI, S2, S3). 7. Document électronique de description d'un service conforme à l'une des revendications 1 à 6, caractérisé en ce que le format de représentation desdits messages peut être choisi parmi une enveloppe SOAP, une adresse URI ou un document MIME. 8. Document électronique de description d'un service conforme à l'une des revendications 1 à 7, dans lequel des premiers messages sont reçus par l'ordinateur serveur (SI, S2, S3) du réseau de communication et des seconds messages sont envoyés par l'ordinateur serveur (SI, S2, S3), caractérisé en ce que ladite seconde sous-partie est adaptée à comporter des 20 informations sur un protocole de communication mis en oeuvre pour la réception desdits premiers messages et pour l'envoi desdits seconds messages. 9. Document électronique de description d'un service conforme à la revendication 8, caractérisé en ce que le protocole de communication mis en oeuvre pour la réception desdits premiers messages est différent du protocole 25 de communication mis en oeuvre pour l'envoi desdits seconds messages. 10. Procédé de transformation d'un document électronique de description d'un service proposé par un ordinateur serveur (SI, S2, S3) d'un réseau de communication, comprenant une première partie adaptée à décrire des messages échangés entre ordinateurs du réseau de communication et une 30 seconde partie adaptée à comporter des informations relatives à la transmission desdits messages sur le réseau de communication, caractérisé en ce qu'il comprend les étapes suivantes: - extraction (E13) de ladite première partie; - inscription (E14) de ladite première partie dans un document électronique transformé; - extraction (E17) d'informations relatives à un format de représentation desdits messages; - inscription (E20) desdites informations extraites dans une première sous-partie d'une seconde partie du document électronique transformé; - extraction (E24) d'informations relatives à un protocole de 10 communication mis en oeuvre pour la transmission desdits messages sur le réseau de communication; et inscription (E27) desdites informations extraites dans une seconde souspartie de ladite seconde partie du document électronique transformé. 11. Procédé de transformation conforme à la revendication 10, caractérisé en ce qu'il comprend en outre, en amont et en aval desdites étapes d'inscription (E14, E20, E27), des étapes d'insertion (E19, E22, E25, E43) dans le document électronique transformé d'une balise ouvrante et d'une balise fermante. 12. Procédé de comparaison de services à partir d'un document électronique de description d'un service conforme à l'une des revendications 1 à 9, caractérisé en ce qu'il comprend les étapes suivantes: identification (E52) dans le document électronique de secondes sousparties pointant vers une même première sous-partie d'une seconde partie 25 dudit document; et - affichage (E54) des informations relatives au protocole de communication comprises dans chaque seconde sous-partie identifiée. 13. Dispositif de transformation d'un document électronique de description d'un service proposé par un ordinateur serveur (SI, S2, S3) d'un 30 réseau de communication, comprenant une première partie adaptée à décrire des messages échangés entre ordinateurs du réseau de communication et une seconde partie adaptée à comporter des informations relatives à la transmission des messages sur le réseau de communication, caractérisé en ce qu'il comprend: - des moyens d'extraction (100, 101, 102) de ladite première partie; - des moyens d'inscription (100, 101, 102) de ladite première partie dans un document électronique transformé; - des moyens d'extraction (100, 101, 102) d'informations relatives à un format de représentation desdits messages; - des moyens d'inscription (100, 101, 102) desdites informations extraites dans une première sous-partie d'une seconde partie du document 10 électronique transformé; - des moyens d'extraction (100, 101, 102) d'informations relatives à un protocole de communication mis en oeuvre pour la transmission desdits messages sur le réseau de communication; et - des moyens d'inscription (100, 101, 102) desdites informations 15 extraites dans une seconde sous-partie de ladite seconde partie du document électronique transformé. 14. Dispositif de transformation conforme à la revendication 13, caractérisé en ce qu'il comprend en outre des moyens d'insertion (100, 101, 102) dans le document électronique transformé d'une balise ouvrante et d'une 20 balise fermante en amont et en aval respectivement de ladite première partie, de ladite première sous-partie et de ladite seconde sous-partie. 15. Dispositif de transformation conforme à l'une des revendications 13 ou 14, caractérisé en ce qu'il est incorporé dans: - un microprocesseur (100); - une mémoire morte (101) adaptée à mémoriser un programme de transformation d'un document électronique de description d'un service; et - une mémoire vive (102) comprenant des registres adaptés à mémoriser les variables modifiées lors de l'exécution dudit programme. 16. Dispositif de comparaison de services à partir d'un document 30 électronique de description d'un service conforme à l'une des revendications 1 à 9, caractérisé en ce qu'il comprend: - des moyens d'identification (100, 101, 102) dans le document électronique de secondes sous-parties pointant vers une même première souspartie d'une seconde partie dudit document; et - des moyens d'affichage (100, 101, 102) des informations 5 relatives au protocole de communication comprises dans chaque seconde sous-partie identifiée. 17. Dispositif de comparaison conforme à la revendication 16, caractérisé en ce qu'il est incorporé dans: - un microprocesseur (100); - une mémoire morte (101) adaptée à mémoriser un programme de comparaison de services; et - une mémoire vive (102) comprenant des registres adaptés à mémoriser les variables modifiées lors de l'exécution dudit programme. 18. Moyen de stockage d'informations, fixe ou partiellement ou 15 totalement amovible, lisible par un système informatique caractérisé en ce qu'il est adapté à mémoriser un document électronique de description d'un service conforme à l'une des revendications 1 à 9. 19. Ordinateur, caractérisé en ce qu'il comprend des moyens adaptés à mettre en oeuvre un procédé de transformation d'un document 20 électronique conforme à l'une des revendications 10 ou 11. 20. Ordinateur, caractérisé en ce qu'il comprend des moyens adaptés à mettre en oeuvre un procédé de comparaison conforme à la revendication 12. 21. Réseau de communication, caractérisé en ce qu'il comprend des 25 moyens adaptés à mettre en oeuvre un procédé de transformation d'un document électronique conforme à l'une des revendications 10 ou 11. 22. Réseau de communication, caractérisé en ce qu'il comprend dès moyens adaptés à mettre en oeuvre un procédé de comparaison conforme à la revendication 12. 23. Moyen de stockage d'informations, éventuellement totalement ou partiellement amovible, lisible par un système informatique, caractérisé en ce qu'il comprend des instructions pour un programme informatique adaptées à mettre en oeuvre le procédé de transformation d'un document électronique conforme à l'une des revendications 10 ou 11, lorsque ce programme est chargé et exécuté par le système informatique. 24. Moyen de stockage d'information, éventuellement totalement ou 5 partiellement amovible, lisible par un système informatique, caractérisé en ce qu'il comprend des instructions pour un programme informatique adapté à mettre en oeuvre le procédé de comparaison conforme à la revendication 12, lorsque ce programme est chargé et exécuté par le système informatique. 25. Programme d'ordinateur lisible par un microprocesseur, 10 caractérisé en ce qu'il comprend des portions de code logiciel adaptées à mettre en oeuvre le procédé de transformation d'un document électronique conforme à l'une des revendications 10 ou 11, lorsqu'il est chargé et exécuté par le microprocesseur. 26. Programme d'ordinateur lisible par un microprocesseur, 15 caractérisé en ce qu'il comprend des portions de code logiciel adaptées à mettre en oeuvre le procédé de comparaison conforme à la revendication 12, lorsqu'il est chargé et exécuté par le microprocesseur.