SOX / XDR Native Datatype Comparison
SOX Datatype Description XDR Datatype Description Comments
boolean Binary "true" or "false" boolean An integer, value 0 or 1 Cannot reconcile the two. XDR version will have to be an enumeration with a choice of "true" or "false".
string Unlimited length text string string PCDATA
URI Universal Resource Identifier uri Uniform Resource Identifier
number Infinite precision, signed number with up to one decimal point. number Number with unlimited digits, can be signed and contain a decimal place.
float Single precision float in the range -3.40282347*10E38 to 3.40282347*10E38 r4 Four-byte encoded floating point value, approx. Min = 1.17549435E-38F, approx. Max = 3.40282347E+38F Appear to be identical, despite discrepancy in the descriptions.
double Double precision float in the range -1.17549435*10E308 to 1.17549435*10E308 r8 Eight-byte encoded floating point value, approx. Min = 2.22507386E-308, approx. Max = 1.797693135E+308 Appear to be identical.
int An integer in the range -2,147,483,648 to 2,147,483,647. i4 Four-byte integer with optional sign. In range: -2147483648 to 2147483647.
long An integer in the range -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807. i8 Eight-byte integer with optional sign. In range: -9223372036854775808 to 9223372036854775807.
byte An integer in the range -128 to 127 i1 One-byte integerwith optional sign. In range: -128 to 127.
ID Unique identifier. id Unique Identifier. XML1.0 - ID
IDREF Used to refer to an ID object. idref Contains a value corresponding to an id. XML1.0 - IDREF
IDREFS One or more IDREF values separated by white space. idrefs Similar to idref, except with multiple id type values separated by white space. XML1.0 - IDREFS
NMTOKEN Text string of limited set of characters. nmtoken Contains values that conform to the name token. XML1.0 - NMTOKEN
NMTOKENS One or more NMTOKEN values separated by white space. nmtokens Similar to idref, except with multiple nmtoken type values separated by white space. XML1.0 - NMTOKENS
date Date in format YYYTMMDD date Specifies a date in format YYYY-MM-DD Cannot reconcile. Both take slightly different forms of the ISO 8601 recommendation. Will make it a string for XDR schema.
time Time in format HH:MM:SS(±HH:MM) time.tz Specifies a time in format  HH:MM:SS with optional time zone. Appear to be the same.
datetime Combined date and time. Formats are as above, but sepatated by a 'T'. YYYYMMDDTHH:MM:SS(±HH:MM) dateTime.tz Specifies date in format YYYY-MM-DDTHH:MM:SS with optional time zone. Again, because of date differences, cannot reconcile the two. Will use a string.