However, I think of SOAP as merely an XML document, not a transport protocol. Any implementation that processes such a document handles the transport. Alone it can't do much. SOAP is a driver, not a car. E.g., HTTP physically moves a copy of content on a server in Kalamazoo to my browser in Oregon with a GET method.
SOAP alone does nothing of the sort.
I also believe SOAP encoding is there as yet another convenience. It's there if I want it, but I don't have to use it, and the SOAP Body allows me a lot of flexibility without it. One man's OSI level 3 is another's OSI level 5. The latter should have been the subject of another spec. Note that RDF made the same error when conflating abstract model and serialization syntax.