SOAP is a simple, lightweight XML protocol for exchanging structured and typed information on the Web. It contains four parts - an envelope, encoding rules, conventions for RPC calls and responses, and protocol bindings. The SOAP envelope contains a header and body. The header allows for modular addition of features/services like authentication, security, etc. through extensible namespaces. The body contains the main message content and has implicit attributes to target the destination endpoint. SOAP supports vertical and horizontal composability of features to enable intermediaries and co-existence of independent features.