SOAP est le protocole des communications pour les services Web. Il définit le format de requête du service Web, réponse et les messages d'erreur. Le Data Integration Service peut traiter les messages SOAP 1.1 et SOAP 1.2 avec un codage document/littéral.
Un message SOAP contient les sections suivantes :
Enveloppe SOAP
L'enveloppe définit le cadre et le contenu du message et qui devrait gérer le message.
En-tête SOAP
L'en-tête identifie l'entité qui a envoyé le message SOAP. Il contient des informations d'authentification. Il inclut aussi des informations sur la façon de traiter le message SOAP.
Corps SOAP
Le corps est le conteneur pour les données que le client et le fournisseur de service Web se transmettent.
Les messages SOAP sont en XML. Quand un message SOAP contient des éléments à occurrences multiples, les groupes d'éléments forment des niveaux dans la hiérarchie XML. Les groupes sont liés lorsqu'un niveau est imbriqué dans un autre.
Un message de requête SOAP peut contenir des données hiérarchiques. Par exemple, le client envoie une requête pour ajouter des commandes client à une base de données de ventes. Le client envoie deux groupes de données dans un message de demande SOAP. Un groupe contient l'identifiant et le nom d'un client et l'autre groupe contient des informations sur la commande. Les informations sur la commande apparaissent plusieurs fois.
Un message de réponse SOAP peut contenir des données hiérarchiques. Par exemple, un client de service Web génère une demande SOAP pour les commandes client. Le service Web renvoie dans la réponse SOAP un en-tête de commande et des éléments de détail de la commande à occurrences multiples.