~~ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file ~~ distributed with this work for additional information ~~ regarding copyright ownership. The ASF licenses this file ~~ to you under the Apache License, Version 2.0 (the ~~ "License"); you may not use this file except in compliance ~~ with the License. You may obtain a copy of the License at ~~ ~~ http://www.apache.org/licenses/LICENSE-2.0 ~~ ~~ Unless required by applicable law or agreed to in writing, ~~ software distributed under the License is distributed on an ~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ~~ KIND, either express or implied. See the License for the ~~ specific language governing permissions and limitations ~~ under the License. ~~ ------------------ XML-RPC Data Types ------------------ Data Types The {{{http://www.xmlrpc.com/spec}XML-RPC specification}} defines the following available data types: *--------------------+--------------------+-------------------------------------+ | Java Type | XML Tag Name | Description | *--------------------+--------------------+-------------------------------------+ | Integer | , or | A 32-bit, signed, and non-null, | | | | integer value. | *--------------------+--------------------+-------------------------------------+ | Boolean | | A non-null, boolean value (0, or | | | | 1). | *--------------------+--------------------+-------------------------------------+ | String | | A string, non-null. | *--------------------+--------------------+-------------------------------------+ | Double | | A signed, non-null, double | | | | precision, floating point number. | | | | (64 bit) | *--------------------+--------------------+-------------------------------------+ | java.util.Date | | A pseudo ISO8601 timestamp, like | | | | 19980717T14:08:55. However, | | | | compared to a true ISO8601 value, | | | | milliseconds, and time zone | | | | informations are missing. | *--------------------+--------------------+-------------------------------------+ | byte[] | | A base64 encoded byte array. | *--------------------+--------------------+-------------------------------------+ | java.util.Map | | A key value pair. The keys are | | | | strings. The values may be any | | | | valid data type, including another | | | | map. | *--------------------+--------------------+-------------------------------------+ | Object[] | | An array of objects. The array | | java.util.List | | 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 <<>> is set, then additional data types become valid. (Both client and server do support this property.) *----------------------+--------------------+-------------------------------------+ | Java Type | XML Tag Name | Description | *----------------------+--------------------+-------------------------------------+ | None | | A typeless null value. | *----------------------+--------------------+-------------------------------------+ | Byte | | A 8-bit, signed, and non-null, | | | | integer value. | *----------------------+--------------------+-------------------------------------+ | Float | | A signed, non-null, double | | | | precision, floating point number. | | | | (32 bit) | *----------------------+--------------------+-------------------------------------+ | Long | | A 64-bit, signed, and non-null, | | | | integer value. | *----------------------+--------------------+-------------------------------------+ | org.w3c.dom.Node | | A DOM node, which is being | | | | transmitted as an embedded XML | | | | fragment. | *----------------------+--------------------+-------------------------------------+ | Short | | A 16-bit, signed, and non-null, | | | | integer value. | *----------------------+--------------------+-------------------------------------+ | java.io.Serializable | | An object, which is converted into | | | | a serialized representation and | | | | transmitted as a base 64 encoded | | | | byte array. | *----------------------+--------------------+-------------------------------------+ | BigDecimal | | A BigDecimal | *----------------------+--------------------+-------------------------------------+ | BigInteger | | A BigInteger | *----------------------+--------------------+-------------------------------------+ | java.util.Calendar | | 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 <<>> refers to the namespace URI <<>>.