SOAP to prosty protokół, który ma służyć do wymiany ustrukturyzowanych informacji w zdecentralizowanym, rozproszonym środowisku. SOAP wykorzystuje technologie XML do definiowania rozszerzalnej infrastruktury komunikacyjnej określającej strukturę komunikatów, które mogą być wymieniane za pośrednictwem różnych protokołów. Infrastruktura ta ma być niezależna od wszelkich modeli programowania oraz innych semantyk, specyficznych dla poszczególnych implementacji.
Struktura wiadomości:<envelope> <header> opcjonalny nagłowek wiadomości </header> <body> właściwa treść wiadomości </body> </envelope>Przykładowy komunikat:
Zastosowania:<?xml version='1.0' ?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" > <env:Header> <t:transaction xmlns:t="http://thirdparty.example.org/transaction" env:encodingStyle="http://example.com/encoding" env:mustUnderstand="true" >5</t:transaction> </env:Header> <env:Body> <m:chargeReservation env:encodingStyle="http://www.w3.org/2003/05/soap-encoding" xmlns:m="http://travelcompany.example.org/"> <m:reservation xmlns:m="http://travelcompany.example.org/reservation"> <m:code>FT35ZBQ</m:code> </m:reservation> <o:creditCard xmlns:o="http://mycompany.example.com/financial"> <n:name xmlns:n="http://mycompany.example.com/employees"> Åke Jógvan Øyvind </n:name> <o:number>123456789099999</o:number> <o:expiration>2005-02</o:expiration> </o:creditCard> </m:chargeReservation> </env:Body> </env:Envelope>