L'une des principale caractéristiques des normes Internet est qu'elles sont axées sur les protocoles et non sur les mises en oeuvre. L'Internet se compose de technologies hétérogènes qui interopèrent par le biais de protocoles partagés. Ceci empêche un fournisseur d'imposer une norme sur Internet. Le développement de logiciels libres joue un rôle crucial dans la défense de l'interopérabilité des mises en oeuvre des normes par les fournisseurs.
Les normes suivantes sont très importantes pour les services Web : Universal Description, Discovery and Integration (UDDI), Web Services Description Language (WSDL), Web Services Inspection Language (WSIL), SOAP et Web Services Interoperability (WS-I). La relation entre ces normes est décrite à la Figure 2.
Les spécifications UDDI définissent des normes ouvertes indépendantes des plateformes qui permettent aux entreprises de partager l'information dans un registre métier mondial, de reconnaître des services dans le registre et de définir leur mode d'interaction sur Internet. Pour plus d'informations sur UDDI, consultez le site www.uddi.org
WSIL est une spécification ouverte basée sur XML qui définit une méthode de reconnaissance des services répartis. Celle-ci permet la reconnaissance des services en fournissant des références à des descriptions de services au niveau du point de fourniture du fournisseur de services, en indiquant comment inspecter un site Web à la recherche de services Web disponibles. Un document WSIL définit les emplacements d'un site Web dans lesquels vous pouvez trouver des descriptions de services Web. WSIL étant axé sur la reconnaissance de services répartis, la spécification WSIL est complémentaire d'UDDI car elle permet de reconnaître des services disponibles sur des sites Web mais qui ne sont pas encore répertoriés dans un registre UDDI. Une rubrique distincte de la présente documentation traite de la Relation entre UDDI et WSIL. Pour plus d'information sur WSIL, voir www.ibm.com/developerworks/webservices/library/ws-wsilspec.html
WSDL est une spécification ouverte basée sur XML qui décrit les interfaces et les instances des services Web sur le réseau. Elle est extensible, ce qui permet de décrire les noeuds finaux quels que soient les formats de message ou les protocoles de réseau utilisés pour communiquer. Le entreprises peuvent mettre à disposition les documents WSDL de leurs services Web via UDDI, WSIL ou en diffusant les adresses URL à leur document WSDL par email ou sur des sites Web. WSDL est décrit dans une rubrique distincte dans cette documentation. Pour plus d'information sur WSDL, voir www.w3.org/TR/wsdl
Figure 2. Relations entre SOAP, UDDI, WSIL et WSDL.
Un fournisseur de services héberge un service Web et le rend accessible à l'aide de protocoles de type SOAP/HTTP et SOAP/JMS. Le service Web est décrit par un document WSDL stocké sur le serveur du fournisseur ou dans un référentiel particulier. Le document WSDL peut être référencé par le registre d'entités UDDI et les documents WSIL. Ceux-ci contiennent des pointeurs désignant les fichiers WSDL du service Web.
Les profils WS-I Simple SOAP Binding et WS-I Attachments regroupent des exigences auxquelles le trafic WSDL et le trafic de protocole WDSL et de services Web (SOAP/HTTP) doivent se conformer pour prétendre à une conformité WS-I. Les outils de validation WS-I des services Web prennent en charge WS-I Simple SOAP Binding Profile 1.0 et Attachment Profile 1.0. Pour consulter les spécifications, accédez au site Web du WS-I et sous Ressources, sélectionnez Documentation: http://www.ws-i.org
Les outils de services Web prennent en charge les spécifications suivantes :
| Technologie ou spécification | Version ou niveau pris en charge |
|---|---|
| Transports | |
| HTTP/HTTPS | v1.0 et v1.1 |
| JMS | |
| Messagerie | |
| Spécification SOAP | v1.1 |
| Connexions SOAP | |
| Description | |
| UDDI | v2.0 |
| WSDL | v1.1 |
| WSIL | v1.0 |
| Sécurité | |
| Sécurité WS | OASIS Standard 1.0 |
| Interopérabilité | |
| Profil de base WS-I | 1.1.2 |
| WS-I Simple SOAP Binding Profile | 1.0.3 |
| WS-I Attachments Profile | 1.0 |
| Autre normes | |
| JAX-RPC | v1.0 for J2EE 1.3, v1.1 for J2EE 1.4 |
| JSR 109 | J2EE 1.3 |
| JSR 921 | J2EE 1.4 |