SAVON - Corps
Le corps SOAP est un élément obligatoire qui contient les données XML définies par l'application échangées dans le message SOAP. Le corps doit être contenu dans l'enveloppe et doit suivre tous les en-têtes qui pourraient être définis pour le message.
Le corps est défini comme un élément enfant de l'enveloppe et la sémantique du corps est définie dans le schéma SOAP associé.
Le corps contient des informations obligatoires destinées au destinataire ultime du message. Par exemple -
<?xml version = "1.0"?>
<SOAP-ENV:Envelope>
........
<SOAP-ENV:Body>
<m:GetQuotation xmlns:m = "http://www.tp.com/Quotation">
<m:Item>Computers</m:Item>
</m:GetQuotation>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
L'exemple ci-dessus demande un devis d'ensembles d'ordinateurs. Notez que les éléments m: GetQuotation et Item ci-dessus sont des éléments spécifiques à l'application. Ils ne font pas partie de la norme SOAP.
Voici la réponse à la requête ci-dessus -
<?xml version = "1.0"?>
<SOAP-ENV:Envelope>
........
<SOAP-ENV:Body>
<m:GetQuotationResponse xmlns:m = "http://www.tp.com/Quotation">
<m:Quotation>This is Qutation</m:Quotation>
</m:GetQuotationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Normalement, l'application définit également un schéma contenant la sémantique associée aux éléments de demande et de réponse.
Le service Devis peut être implémenté à l'aide d'un EJB s'exécutant sur un serveur d'applications; si tel est le cas, le processeur SOAP serait chargé de mapper les informations de corps en tant que paramètres dans et hors de l'implémentation EJB du service GetQuotationResponse . Le processeur SOAP peut également mapper les informations de corps sur un objet .NET, un objet CORBA, un programme COBOL, etc.