XML-RPC.ComUserLand
    Simple cross-platform distributed computing, based on the standards of the Internet.

Home

Spec

News

Mail List

Directory

Discuss

New Topic

HowTo

Top 50

SOAP

RSS

OPML

XML




Members
Join Now
Login

Heads up: A key difference between SOAP and XML-RPC

Sat, Mar 31, 2001; by Dave Winer.

In SOAP, procedures take named parameters and order is irrelevant. In XML-RPC order is relevant and parameters do not have names.

Impact on Frontier 

This has forced a change in Frontier's implementation of SOAP.

Prior to the change, you'd pass the address of a list to soap.rpc.client, now you must pass the address of a record.

This change also will break our docs, to some extent. The parameter names in the docs must match the actual parameter names in the handlers.

Example 

local (params = {"statenum":25}) //state #25 is Missouri
dialog.alert (soap.rpc.client (path, "getStateName", @params, server, port))

Historical note 

Interestingly, Frontier as initially spec'd did not provide for named parameters. UserLand IAC Toolkit, the precursor to Apple's IAC support in System 7, did not require named parameters; but Apple's implementation did. So the code to force parameter naming was already in the kernel, thanks to Doug's excellent work, we were able to reapply it in the SOAP implementation, the change worked the first time.

Not released yet 

This will require a new release of Frontier and Radio, which will happen in the next few days. For right now all your SOAP is broken. We'll get you back on the air shortly.

Note that the SOAP validator has been updated and is running the new SOAP stack.

Impact on other environments 

It's not clear to me what the impact will be in other environments.

If you have some insight please post in the discussion group.

© Copyright 2004-2008 Scripting News, Inc.
© Copyright 1998-2004 UserLand Software, Inc.
XML-RPC is a trademark of UserLand Software, Inc.
Last update: Saturday, March 31, 2001 at 11:34:10 AM Pacific.

Create your own Manila site in minutes. Everyone's doing it!