6.6.5 Primitive Data Types

Within this standard the following primitive data types are used:

Data Type




A sequence of characters with a length of at least one character. This standard does not define a maximum length. Strings may not contain non-printable characters (Unicode U+0000 to U+001F).

Johannes Brahms


A string containing either “true” or “false”



A sequence of digits to represent positive or negative integer numbers, or zero.

Details on the range of integers are provided in Clause 6.6.11.



A sequence of digits to represent positive or negative integer numbers, positive or negative decimal fractions or zero.

The character used to separate the integers from fractions is the dot (“.”, Unicode U+002E).

Thousands separators or any other digit grouping shall not be used.

Multiple trailing “0” should not be used, so the value 5.5 should not be represented as “5.50” or “5.5000”.

Details on the precision of decimals are provided in Clause 6.6.11.

Note, this was referred to as "float" in previous versions.






A date in the ISO 6801 format to indicate a single year (YYYY), month (YYYY-MM) or day (YYYY-MM-DD).



A duration in the ISO 6801 format (P[nY][nM][nD][T[nH][nM]nS]).

Elements including their designator may be omitted if their value is zero.

Note that the expressions “PT3M2S” (three minutes and two seconds) and “PT182S” (182 seconds) are both permitted and are equivalent.



A string in the form IdType::ID where IdType identifies the identification scheme. Examples are ISNI for an ISO 27729 International Standard Name Identifietr, IPI for a CISAC Interested Party Identifier or IPN for a SCAPR International Performer Number. The ID element then contains the identifier in the format defined by the Identificaiton scheme. Only one identifier can be communicated for each party in a PartyID field.



A string of 18 characters in accordance with the DDEX Party ID standard.

Note that the DDEX Party ID standard defines that DDEX Party IDs do not contain dashes in computer-to-computer communications. Therefore, DDEX Party IDs, when included in a Sales Report Message, shall not contain dashes.


Multiple String

A sequence of 0-n strings in accordance with a defined data type separated by Secondary Delimiters.

If the Message Sender has only one data item to provide, the value shall be included without any Secondary Delimiters. The same applies to cases where the Message Sender has multiple data elements but only wishes to communicate one in accordance with the bilateral agreement between Message Sender an Message Recipient.

If the cardinality of such an element is "M", at least one such data item must be provided.

Cells that may contain multiple values may be related related. For example one Multiple-String Cell may be for names of composers/lyricists and it may be followed by a Multiple-String Cell for identifiers of these composers/lyricists. In those cases, both Cells must contain the same number of Secondary Delimiters and there may only be 0-1 data items between the Secondary Delimiters.

The same concept can also be used for all other primitive data types listed above.

"12" or "12|54|123" or "12||123" (without the quotes)

Multiple Multiple String

In order to communicate a list of lists, the delimiter for the inner list shall be escaped to \|.

One such example is the provision of identifiers for writers of a Musical Work, e.g. to provide

ISNI::0000000121174585\|VIAF::196844| ISNI::0000000121452530\|VIAF::100252012 (two identifiers for two people)

Table 2 – Primitive Data Types