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



Spec

Mail List

Directory

C/C++

RSS

OPML

XML

Dave



BDG Change Notes

This page lists the changes to the Busy Developers Guide to SOAP 1.1, made starting on 3/29/01.

Integer types 

The xsi:type attribute value for integers had been specified as "xsd:int or xsd:integer". This has been changed to "xsd:int", since an xsd:integer is unbounded, whereas xsd:int is a 32-bit signed integer, as the description of the type specifies.

The purpose of the change is to promote interoperability, since some implementations will not be able to handle arbritrarily large integers.

To serialize very large integers, use a string (xsd:string), and convert it to an integer at the application level.

http://www.xmlrpc.com/stories/storyReader$1441#scalarValues

Parameter names 

The BDG had specified that parameter order is significant, and that parameter names are not. This position has reversed, based on feedback from members of the SOAPBuilders mailing list.

Parameter names are significant, parameter order is not. In practice, the parameter order should be consistent with the expected order, for maximum interoperability.

http://www.xmlrpc.com/aBusyDevelopersGuideToSoap11#payloadFormat

Character encoding 

The BDG had not taken a position on character encoding. This has changed.

Character encoding is assumed to be UTF-8, unless specified in the Content-Type request header. Possible values for charset in the Content-Type header are US-ASCII, UTF-8 and UTF-16. UTF-8 is strongly recommended for maximum interoperability.

A server should encode the response using the same character encoding as the request, and otherwise return a Fault response, UTF-8 encoded.

http://www.xmlrpc.com/aBusyDevelopersGuideToSoap11#headerRequirements

Arrays 

The BDG had specified that array elements always specified SOAP-ENC:arrayType="xsd:ur-type[4]", even for arrays whose sub-elements were of a common type.

Now, array elements are strongly recommended to carry a type attribute, which is either ur-type, or specifies the type of the sub-elements (when all sub-elements are of a common type).

http://www.xmlrpc.com/aBusyDevelopersGuideToSoap11#arrays

encodingStyle 

The BDG had specified SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" on the Envelope element.

The value has changed to "http://schemas.xmlsoap.org/soap/encoding/bdg/" which reflects that the Envelope conforms to the BDG SOAP subset.

http://www.xmlrpc.com/aBusyDevelopersGuideToSoap11#characterEncoding

base64 

The namespace for the base64 type has changed from xsd: to SOAP-ENC: which loosens line-breaking requirements.

http://www.xmlrpc.com/stories/aBusyDevelopersGuideToSoap11#scalarValues

boolean values 

The possible values for booleans have been changed from true and false, to 0 and 1.

This was done because the SOAP specification specifies 0 and 1 as the values for booleans.

http://www.xmlrpc.com/stories/aBusyDevelopersGuideToSoap11#scalarValues

null values 

The BDG previously made no mention of null values. A new section was added, which describes serialization of null values.

http://www.xmlrpc.com/stories/aBusyDevelopersGuideToSoap11#nullValues

BOM (Byte-Order Marks) 

The BDG previously made no mention of BOMs. We added a sentence about character encoding, which addresses this issue.

http://www.xmlrpc.com/stories/aBusyDevelopersGuideToSoap11#characterEncoding

© Copyright 2004-2011 Scripting News, Inc.
© Copyright 1998-2004 UserLand Software, Inc.
XML-RPC is a trademark of UserLand Software, Inc.
Posted: 3/29/01; 2:04:17 PM Pacific.

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