axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dimuthu Gamage" <dimut...@gmail.com>
Subject [axis2c-codegen] Typemap
Date Fri, 26 Oct 2007 09:19:49 GMT
Hi devs,

The following is a map of xml schema data types and the axis2/c data types
to used in the codegen. Currently most of them are not implemented correctly
and should be finished before the interop tests.

3.2 Primitive datatypes[1]

        3.2.1 string  - axis2_char_t *
        3.2.2 boolean - axis2_bool_t
        3.2.3 decimal - double
        3.2.4 float - float
        3.2.5 double - double
        3.2.6 duration - axutil_duration_t*
        3.2.7 dateTime - axutil_date_time_t*
        3.2.8 time - axutil_date_time_t*
                     Should use serialize/deserialize_time
        3.2.9 date - axutil_date_time_t*
                     Should use serialize/deserialize_date
        3.2.10 gYearMonth - axutil_date_time_t*
                     We may need to add serialize/deserialize_year_month for
axutil_date_time, any suggestions?
        3.2.11 gYear - int
                     (not important) should it be axutil_date_time_t* since
it may (optionally) contain timezone as postfix
        3.2.12 gMonthDay -axutil_date_time_t*
                     We may need to add serialize/deserialize_month_day for
axutil_date_time, any suggestions?
        3.2.13 gDay - int
                      same issue in gYear
        3.2.14 gMonth - int
                      same issue in gMonth
        3.2.15 hexBinary - axiom_node_t*
        3.2.16 base64Binary -axutil_base_binary_t*
        3.2.17 anyURI -axutil_uri_t *
        3.2.18 QName -axutil_qname_t *
                       Currently not interoperable with qname,
                       for { http://somewhere.somdomain, myname } Qname
                       Java generates: <ns3:inQName xmlns:s1="
http://somewhere.somedomain">s1:myname</ns3:inQName>
                       C generates
<ns3:inQName>myname|http://somewhere.somedomain</ns3:inQName>
        3.2.19 NOTATION
                     -?

3.3 Derived datatypes
        3.3.1 normalizedString - axis2_char_t*
        3.3.2 token - axis2_char_t*
        3.3.3 language - axis2_char_t*
        3.3.4 NMTOKEN - axis2_char_t*
        3.3.5 NMTOKENS - axis2_char_t* or (axutil_array_list_t)
        3.3.6 Name - axis2_char_t*
        3.3.7 NCName - axis2_char_t*
        3.3.8 ID - axis2_char_t*
        3.3.9 IDREF - axis2_char_t*
        3.3.10 IDREFS - axis2_char_t*
        3.3.11 ENTITY - axis2_char_t*
        3.3.12 ENTITIES - axis2_char_t*
        3.3.13 integer - int
        3.3.14 nonPositiveInteger -int
        3.3.15 negativeInteger -int
        3.3.16 long - long
        3.3.17 int - int
        3.3.18 short -short
        3.3.19 byte - axis2_byte_t
        3.3.20 nonNegativeInteger - int
        3.3.21 unsignedLong - unsigned long
        3.3.22 unsignedInt - unsigned int
        3.3.23 unsignedShort - unsigned short
        3.3.24 unsignedByte - axis2_byte_t
        3.3.25 positiveInteger - unsigned int

And should we use typedefs to define strange types to axis2/c?
It may improve the readability.

REFERENCE
 [1] http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/

Thanks
Dimuthu

Mime
View raw message