Hmm, Remote Procedure Call, Simple Object Access Protocol, Representational State Transfer, etc. are all major methods of accessing a sytem, resources which are not locally accessible to you (Provided they are made available).
Consider the famous Google Search Data, What if you want to have all the database access (search results) for your system. How would you use that even if google could give you access to the resource.
Well google, will definately not give away the username and password and the Server for your usage. But they can give away the resource in some other way.
Enter SOAP, REST, XML-RPC.
SOAP defines a techinque or a protocol through which a client can access a remote Object. How ? The server accepts a particular SOAP Request, which is basically a set XML structure, which includes the name of the Method which is to be called, and the parameters for that method. On the Request, you will get a response which is nothing but XML (structure defined by SOAP)
How different is XML-RPC ? Well, the basic XML structure is different. Even REST, the data that is obtained is XML.
Why are there different standards ?
Ego, Big companies and big EGOs thats what I guess.
Most of these Request-Response interactions are on the HTTP, yes my favourite. and since a great deal of XML is to be delivered to the Server, its the POST method that is used to send the reqeust.
These all technologies, methods envelope the world of Web Services.