Data Types

The XML-RPC specification defines the following available data types:

Java Type XML Tag Name Description
Integer i4, or
int
A 32-bit, signed, and non-null,
integer value.
Boolean boolean A non-null, boolean value (0, or
1).
String string A string, non-null.
Double double A signed, non-null, double
precision, floating point number.
(64 bit)
java.util.Date dateTime.iso8601 A pseudo ISO8601 timestamp, like
19980717T14:08:55. However,
compared to a true ISO8601 value,
milliseconds, and time zone
informations are missing.
byte[] base64 A base64 encoded byte array.
java.util.Map struct A key value pair. The keys are
strings. The values may be any
valid data type, including another
map.
Object[]
java.util.List
array An array of objects. The array
elements may be any valid data
type, including another array.
The server may return other arrays (for
example String[]) or lists (using
generics). However, the client will
always return an Object[], because
the XML-RPC protocol doesn't include
between different array types.

If the property enabledForExtensions is set, then additional data types become valid. (Both client and server do support this property.)

Java Type XML Tag Name Description
None ex:nil A typeless null value.
Byte ex:i1 A 8-bit, signed, and non-null,
integer value.
Float ex:float A signed, non-null, double
precision, floating point number.
(32 bit)
Long ex:i8 A 64-bit, signed, and non-null,
integer value.
org.w3c.dom.Node ex:dom A DOM node, which is being
transmitted as an embedded XML
fragment.
Short ex:i2 A 16-bit, signed, and non-null,
integer value.
java.io.Serializable ex:serializable An object, which is converted into
a serialized representation and
transmitted as a base 64 encoded
byte array.
BigDecimal ex:bigdecimal A BigDecimal
BigInteger ex:biginteger A BigInteger
java.util.Calendar ex:dateTime Unlike the dateTime.iso8601 type,
this is a full blown xs:dateTime
value. In particular, it includes
milliseconds, and timezone settings.

In the above table, the prefix ex refers to the namespace URI http://ws.apache.org/xmlrpc/namespaces/extensions.