CDT - XML Primitives Mapping
XML Schema Built-in primitive datatypes [link]
Core Components Data Type Catalog v3.1 [link]
Primitive Types
Primitive Type | XML Primitive Types as of now | Additional XML Primitive Types |
---|---|---|
Binary | xsd:base64Binary xsd:hexBinary |
|
Boolean | xsd:boolean |
|
Decimal | xsd:decimal |
|
Double | xsd:float xsd:double |
|
Float | xsd:float |
|
Integer | xsd:integer xsd:nonNegativeInteger xsd:positiveInteger | xsd:nonPositiveInteger xsd:negativeInteger xsd:long xsd:int xsd:short xsd:byte xsd:unsignedLong xsd:unsignedInt xsd:unsignedShort xsd:unsignedByte |
NormalizedString | xsd:normalizedString |
|
String | xsd:string xsd:anyURI | xsd:QName xsd:NOTATION |
TimeDuration | xsd:duration |
|
TimePoint | xsd:dateTime xsd:date xsd:time xsd:gYearMonth xsd:gYear xsd:gMonthDay xsd:gDay xsd:gMonth xsd:token |
|
Token | xsd:token xsd:language | xsd:Name xsd:NCName xsd:NMTOKEN xsd:NMTOKENS xsd:ID xsd:IDREF xsd:IDREFS xsd:ENTITY xsd:ENTITIES |
Mapping to JSON Schema and OpenAPI for additional XML primitive types
XML Primitive Type | JSON Draft05 [link] | OpenAPI 3.0.3 [link] | Test Schema for JSON | Note |
---|---|---|---|---|
xsd:nonPositiveInteger | {"type":"number", "multipleOf":1, "maximum":0, "exclusiveMaximum":false} | {"type":"integer", "maximum":0, "exclusiveMaximum":false} | {
"$schema": "http://json-schema.org/draft-04/schema#",
"properties": {
"nonPositiveIntegerTest": {
"$ref": "#/definitions/nonPositiveInteger"
}
},
"definitions": {
"negativeInteger": {
"type": "number",
"multipleOf": 1,
"maximum": 0,
"exclusiveMaximum": false
}
}
} |
|
xsd:negativeInteger | {"type":"number", "multipleOf":1, "maximum":0, "exclusiveMaximum":true} | {"type":"integer", "maximum":0, "exclusiveMaximum":true} | {
"$schema": "http://json-schema.org/draft-04/schema#",
"properties": {
"negativeIntegerTest": {
"$ref": "#/definitions/negativeInteger"
}
},
"definitions": {
"negativeInteger": {
"type": "number",
"multipleOf": 1,
"maximum": 0,
"exclusiveMaximum": true
}
}
} |
|
xsd:long | {"type":"number", "multipleOf":1, "minimum":-9223372036854775808, "maximum":9223372036854775807} | {"type":"integer", "minimum":-9223372036854775808, "maximum":9223372036854775807} | {
"$schema": "http://json-schema.org/draft-04/schema#",
"properties": {
"longTest": {
"$ref": "#/definitions/long"
}
},
"definitions": {
"long": {
"type": "number",
"multipleOf": 1,
"minimum": -9223372036854775808,
"maximum": 9223372036854775807
}
}
} | Online JSON validators can’t handle these big numbers. |
xsd:int | {"type":"number", "multipleOf":1, "minimum":-2147483648, "maximum":2147483647} | {"type":"integer", "minimum":-2147483648, "maximum":2147483647} |
| |
xsd:short | {"type":"number", "multipleOf":1, "minimum":-32768, "maximum":32767} | {"type":"integer", "minimum":-32768, "maximum":32767} |
| |
xsd:byte | {"type":"number", "multipleOf":1, "minimum":-128, "maximum":127} | {"type":"integer", "minimum":-128, "maximum":127} |
| |
xsd:unsignedLong | {"type":"number", "multipleOf":1, "minimum":0, "maximum":18446744073709551615} | {"type":"integer", "minimum":0, "maximum":18446744073709551615} | Online JSON validators can’t handle these big numbers. | |
xsd:unsignedInt | {"type":"number", "multipleOf":1, "minimum":0, "maximum":4294967295} | {"type":"integer", "minimum":0, "maximum":4294967295} |
| |
xsd:unsignedShort | {"type":"number", "multipleOf":1, "minimum":0, "maximum":65535} | {"type":"integer", "minimum":0, "maximum":65535} |
| |
xsd:unsignedByte | {"type":"number", "multipleOf":1, "minimum":0, "maximum":255} | {"type":"integer", "minimum":0, "maximum":255} |
| |
xsd:QName | {"type":"string"} | {"type":"string"} |
|
|
xsd:NOTATION | {"type":"string"} | {"type":"string"} |
|
|
xsd:Name | {"type":"string"} | {"type":"string"} |
|
|
xsd:NCName | {"type":"string"} | {"type":"string"} |
|
|
xsd:NMTOKEN | {"type":"string"} | {"type":"string"} |
|
|
xsd:NMTOKENS | {"type":"string"} | {"type":"string"} |
|
|
xsd:ID | {"type":"string"} | {"type":"string"} |
|
|
xsd:IDREF | {"type":"string"} | {"type":"string"} |
|
|
xsd:IDREFS | {"type":"string"} | {"type":"string"} |
|
|
xsd:ENTITY | {"type":"string"} | {"type":"string"} |
|
|
xsd:ENTITIES | {"type":"string"} | {"type":"string"} |
|
|