I've asked this on IRC before and Dave Winer's brief comment on the subject made me want to ask here: what advantage does SOAP have over XML-RPC? The latter seems so much easier to me.
/me knows little about SOAP, btw.
Sorry. I actually don't know. Someone knowledgeable will undoubtedly explain at some point...
SOAP is a general purpose, object-oriented messaging protocol. It's XML message can be passed through a number of protocols. It is highly generic and allows users to specify new datatypes.
XML-RPC is a narrowly defined RPC mechanism that defines around 10 data types (only about 3 are needed [string, array, struct]), specifies the transport mechanism (HTTP), and has no provisions for user-defined extensions.
I have worked with both in several languages, including Perl, Python, PHP, Java, and C. For those projects for which you own both sides of the RPC transaction, XML-RPC is simple and reliable. It's even easy to bend XML-RPC into unexpected places like SMTP and unix domain sockets.
SOAP messages are necessarily complex XML messages. XML-RPC message are so simple, the DTD came after the spec and several language implementations.
I use SOAP only when I have too.
I decided a long time ago that I am not using anything that Whiner is part of, and that makes me sleep better at night!