| 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. |