Documentation WSDL

Un document WSDL n'est qu'un simple document XML.

Il contient une série de définitions décrivant un service web.

structure du document WSDL

Un document WSDL utilise ces éléments principaux pour décrire un service web :

élément définition
<portType> opérations exécutées par le service web
<message> messages utilisés par le service web
<types> types de données utilisés par le service web
<binding> protocole de communication utilisé par le service web

La structure principale d'un document WSDL est similaire à celle-ci :

<definitions>
<types>
   définition de types........
</types>
<message>
   définition d'un message.....
</message>
<portType>
   définition d'un port.....
</portType>
<binding>
   définition d'un lien....
</binding>
</definitions>

Le document WSDL peut contenir d'autres éléments, tels que l'élément extension, et un élément service, qui peut combiner les définitions de plusieurs services web dans un seul document WSDL.

Pour une vue d'ensemble complète de la syntaxe, veuillez consulter Syntaxe WSDL Cette section.

Port WSDL

<portType> L'élément est l'élément le plus important de WSDL.

Il peut décrire un service web, des opérations exécutables et les messages associés.

On peut comparer l'élément <portType> à une bibliothèque (ou un module, ou une classe) dans une langue de programmation traditionnelle.

Messages WSDL

<message> L'élément définit les éléments de données d'une opération.

Chaque message est composé d'un ou plusieurs composants. Ces composants peuvent être comparés aux paramètres d'une appel de fonction dans une langue de programmation traditionnelle.

Types WSDL

<types> L'élément définit les types de données utilisés par le service web.

Pour une neutralité de plate-forme maximale, WSDL utilise la syntaxe XML Schema pour définir les types de données.

Liens WSDL

<binding> L'élément définit le format des messages et les détails des protocoles pour chaque port.

Instance WSDL

Voici un extrait simplifié d'un document WSDL :

<message name="getTermRequest">
   <part name="term" type="xs:string"/>
</message>
<message name="getTermResponse">
   <part name="value" type="xs:string"/>
</message>
<portType name="glossaryTerms">
  <operation name="getTerm">
        <input message="getTermRequest"/>
        <output message="getTermResponse"/>
  </operation>
</portType>

Dans cet exemple,<portType> L'élément définit "glossaryTerms" comme une certainePortdu nom, définir "getTerm" comme une certaineOpérationdu nom.

L'opération "getTerm" possède un nom "getTermRequest".Message d'entrée, ainsi qu'un message nommé "getTermResponse".Message de sortie.

<message> L'élément peut définir chaque messageComposant, ainsi que les types de données associés.

Comparé à la programmation traditionnelle, glossaryTerms est une bibliothèque de fonctions, et "getTerm" est une fonction avec un paramètre d'entrée "getTermRequest" et un paramètre de retour getTermResponse.