This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I happened to step on a new topic while browsing, XML-RPC and out of curiousity I took a quick glance and found that it is passing XML over HTTP, which sounded same as REST style. I have to admit that I'm not really an experienced developer and quite often feel nervous when I ever I see a new buzz word :-). Ok, coming to the problem, so what is XML-RPC all about and how is this different from REST.
REST is an architecture which pays strict attention to the use of HTTP methods and what they are allowed to do. A RESTful server is NOT constrained to any particular format for requests and responses such as XML. I know that is the impression everybody gets but XML is NOT a requirement.
XML-RPC is about Remote Procedure Calls formatted as XML messages - it is not constrained to using HTTP as a transport method. RPC is an older concept for client-server interaction than REST. To quote my own article:
The original XML-RPC protocol was invented by Web pioneer Dave Winer at UserLand Software in 1998 and first implemented in the UserLand Frontier development platform (in fact, UserLand Software has trademarked "XML-RPC").
The original XML-RPC uses only a few data types and does not require namespaces. It achieves considerable flexibility by defining <struct> and <array> types which can contain other values.