BizTalk Utilities CV ,   Jobs ,   Code library
 
Home Page


Add/Edit your code items
Search the code library
Browse for the code library



 
 

<< XSLT.NET and XML >>
    


By Mark Wilson
I am the creator of TopXML. I am available for international and local (Australia) contracts. I am a Solution Architect/Business Analyst. I have worked in IT in several countries (NZ, Australia, South Africa, UK) building and training teams for government and very large non-governmental organizations. I am ex-Microsoft Consulting Services. I wrote the first book on Microsoft XML published in 2000 called XML Programming with VB and ASP. Most recently I have been building tools for the SEO industry. Ask me for a 37 point SEO health-checkup for your website.
First Posted 02/14/2002
Times viewed 243

What is XML-RPC?


Summary What is XML-RPC and how does it differ to the rest of these types of protocols?

XML-RPC is not intended to compete with SOAP.  SOAP is a larger and more complex set of standards.  XML-RPC is deliberately simpler and far more open.  The community surrounding SOAP is largely corporate whereas the community surrounding XML-RPC is mostly just that... a community.  This flexibility has both good and bad aspects.

Having said that, XML-RPC is blossoming under the UserLand leadership.  It's number of webservices has increased significantly recently.

In fact one server tool called Radio (created by UserLand) is quite impressive as it provides an enormously powerful API (based on XML-RPC and SOAP as well) which enables websites of huge complexity to be create very simply.  What Microsoft is hailing as a Hailstorm of innovations, Radio has probably already delivered the basic tools for... for only $39.

How do I program with XML-RPC?

Take a look at some of the systems using XML-RPC here:
http://www.xmlrpc.com/directory/1568/implementations

TopXML has an XML-RPC solution (includes code) for calling COM components here:
http://www.topxml.com/downloads/default.asp?id=v2001111192328

There is a library for XML-RPC that you can use in ASP, get it here:
http://aspxmlrpc.sourceforge.net/
but be warned that this page has not been updated for quite some time.

The Python library can be found here:
http://www.pythonware.com/products/xmlrpc/
and the Perl library found here:
http://bitsko.slc.ut.us/~ken/xml-rpc/

Datatypes?

A limited subset datatypes are supported including:

  • int - A signed, 32-bit integer.
  • string - An ASCII string, which may contain NULL bytes. (Actually, several XML-RPC implementations support Unicode, thanks to the underlying features of XML.)
  • boolean - Either true or false.
  • double - A double-precision floating point number. (Accuracy may be limited in some implementations.)
  • dateTime.iso8601 - A date and time. Unfortunately, since XML-RPC forbids the use of timezones, this is very nearly useless.
  • base64 - Raw binary data of any length; encoded using Base64 on the wire. Very useful. (Some implementations don't like to receive zero bytes of data, though.)
  • array - An one-dimensional array of values. Individual values may be of any type
  • struct - A collection of key-value pairs. The keys are strings; the values may be of any type.

There is a very good specification regarding XML-RPC here:
http://www.xmlrpc.com/spec

What about SOAP?

SOAP is very similar to XML-RPC in that it also makes procedure calls over HTTP as XML documents. SOAP is different in that it has been extended from it's inital XML-RPC roots to include support for XML Schemas, enumerations, structs, arrays, and custom data types.

Additional information


Rate this article on a scale of 1 to 10 (0 votes, average 0)

Your vote :  

<< XSLT.NET and XML >>
    





Leave a comment for this article
Your name
Your email (optional)
Your comment
Optional: Upload an attachment
Enter the code shown:

 
 

    Email TopXML