Primitive data types
The following primitive data types are used:
Any required sequence of characters according to the XML specification. The characters <
and &
are to be replaced with the entities <
and &
or CDATA sections are to be applied.
Like xsd:string, but the characters 'carriage return'(#xD), 'linefeed'(#xA) and 'tabulator'(#x9) must not occur.
For representing URIs (uniform resource identifier).
For representing rational numbers in decimal notation, e.g. 123.45. The decimal places are separated by a point.
Limitation of xsd:decimal to integers, i.e. without a decimal point and places.
Represented here is a date in the format yyyy-mm-dd, i.e. 2005-05-30
in the case of 30th May 2005. A time zone can be specified optionally.
Represented here is a time in the format yyyy-mm-ddThh:mm:ss, i.e. 2005-05-30T14:30:00
in the case of 30th May 2005, 14:30 hours. Fractions of a second and a time zone can be specified optionally.
Indicator with two possible values: true
or false
. Valid serializations: true, false, 0, 1.
This serves to derive:
For indicating monetary amounts. Simple content of type xsd:decimal. The amountCurrencyID attribute is required. Implementations must use the buyer or seller's local currency. Example:
<UnitPrice amountCurrencyID="EUR">12.45</UnitPrice>
Though indication of currency might seem extremely redundant, it is a consequence of the generality of UBL.
For representing a date. Simple content of type xsd:date. Time zones are not to be used.
For representing a time. Simple content of type xsd:dateTime. Time zones and fractions of a second are not to be used.
For representing any required text. Simple content of type xsd:string; languageID as optional attribute, currently not used.
Indicator of two possible states. Simple content of type xsd:boolean. If an element of this type is optional, then its absence in a document instance is equivalent to the occurrence of that element with false
content.
For representing numbers. Content of type xsd:decimal.