Message Field Data Definitions
Format Key | Definition | Example |
Simple Types | ||
DD | Day of month, 01-31. | 31 |
MM | Month of year, 01-12 | 12 |
YY | Year, 00-99 | 21 |
hh | Hour of day, 00-23. | 23 |
mm | Minute of hour, 00-59 | 59 |
ss | Second of minute, 00-59 | 59 |
Complex Types | ||
BITMAP | Primary and Secondary Bitmaps (128 bits, 16 bytes). | n/a |
LLLTLV | Variable-length Tag/Length/Value-encoded field containing between 1 and 999 characters or bytes. The field data is prefixed by the length of the field data in four decimal digits, encoded in Packed Unsigned BCD into two bytes. The field data may contain one or more Subfields. Each Subfield is formatted as follows:
| n/a |
LLVAR | A variable-length field containing between 1 and 99 characters, bytes (Binary fields), or nibbles (Packed BCD fields). The field data is prefixed by the length of the field data in two decimal digits, encoded in Packed Unsigned BCD into a single byte. | A field with the value of length 5 would be prefixed by 05 in BCD [0000 0101] |
LLLVAR | A variable-length field containing between 1 and 999 characters or bytes. The field data is prefixed by the length of the field data in four decimal digits, encoded in Packed Unsigned BCD into two bytes. | A field with the value of length 123 would be prefixed by 0123 in BCD [0000 0001][0010 0011] |
Attribute Key | Definition | Example |
a | Alphabetic characters, encoded in ASCII. | A-Z, a-z |
b | Raw Binary data, grouped into blocks of 8 bits (a byte). The length of such an attribute defines the number of bytes of field data. | n/a |
n | Numeric digits (0-9), unsigned. This data is encoded in 4-bit Packed Unsigned BCD (Binary Coded Decimal) containing decimal digits. Each decimal digit is represented by a 4-bit nibble; therefore, two digits are packed into a single byte. The length of such an attribute defines the number of nibbles of field data. Odd-length fields must be preceded by a leading zero nibble [0000] to ensure the field comprises whole bytes; the length should not include any such nibble (see Note 3 below). | 0-9 Each byte consists of two nibbles, each nibble representing a decimal digit. E.g.:
|
nS | Numeric digits (0-9), signed. This data is encoded in 4-bit Packed Signed BCD (Binary Coded Decimal) containing decimal digits, and a mandatory single sign indicator in the last (least significant) nibble. Use hexadecimal value xC [1100] for positive sign indicator (+), and hexadecimal value xD [1101] for negative sign indicator (-). Each decimal digit is represented by a 4-bit nibble; therefore, two digits are packed into a single byte. The length of such an attribute defines the number of nibbles of field data, excluding the sign nibble. Odd-length fields must be preceded by a leading zero nibble [0000] to ensure the field comprises whole bytes; the length should not include any such nibble (see Note 3 below). | +/- 0-9 Each byte consists of two nibbles, each nibble representing a decimal digit, or a sign indicator (last nibble only). E.g.:
|
Pz | Tracks 2 and 3 code set, as defined in the relevant ISO documentation. This data is encoded in 4-bit Packed Unsigned BCD (Binary Coded Decimal) containing hexadecimal digits. Each hex digit is represented by a 4-bit nibble; therefore, two digits are packed into a single byte. Digits 0-9 represent decimal values 0-9; A-F represent special characters/sentinels. The length of such an attribute defines the number of nibbles of field data. Odd-length fields must be preceded by a leading zero nibble [0000] to ensure the field comprises whole bytes; the length should not include any such nibble (see Note 3 below). | Each byte consists of two nibbles, each nibble representing a hexadecimal digit. E.g.:
|
p | Pad characters (spaces), encoded in ASCII. | “ “ |
s | Special characters, encoded in ASCII. | = ; ? { } etc |
v | Various formats. See field/subfield definitions for details. | n/a |
x+n | “C” for Credit or “D” for Debit (encoded in ASCII), as a prefix to numeric digit(s) encoded in 4-bit Packed Unsigned BCD (Binary Coded Decimal) containing decimal digits. Note: Whilst the C/D prefix is to be encoded in ASCII into a full byte, any subsequent numeric digits are to be encoded in 4-bit Packed Unsigned BCD, as per the definition of attribute “n”. The length specified in the field definition refers to the number of numeric digits only (for example, in the case of “x+n 4”, 4 numeric digits should follow a leading “C” or “D” prefix). The length of such an attribute defines the number of bytes of field data (for example, in the case of “C123456”, the length of the attribute is 4 bytes). Odd-length numeric portions must be preceded by a leading zero nibble [0000] to ensure the numerical data is comprised of whole bytes only. | Leading byte encoded in ASCII, and subsequent bytes consisting of two nibbles, each nibble representing a decimal digit. E.g. for “x+n 3” value “C123”:
|
[digit] | Fixed length of [digit] characters/bytes/nibbles. | “n 5”: 5 numeric characters, fixed length, e.g. “12345” |
..[digit] | Variable length up to [digit] characters/bytes/nibbles. | “a ..3”: Up to 3 alphabetic characters, variable length, e.g. “ab” or “abc” |
[digit1]..[digit2] | Variable length between [digit1] and [digit2] characters/bytes/nibbles. | “n 2..4”: Between 2 and 4 numeric characters, variable length, e.g. “12”, “123”, “1234” |
Notes
- All fixed-length Numeric-only data elements (e.g. “n 5”) are to be right-justified and padded with leading zeros as required (e.g. “00012”).
- All other fixed-length data elements (e.g. “an 5”) are to be left-justified with trailing pad characters (spaces) as required (e.g. “ab2 “).
- All elements encoded using Packed Unsigned BCD data must consist of an even number of nibbles. If the field data consists of an odd number of nibbles, prepend a leading zero nibble to the field data. Variable-length fields must report the length in nibbles excluding the leading zero nibble.
On this page
- Message Field Data Definitions