The coding of the COMPACT-TLV data objects is deduced from the basic encoding rules af ASN.1 (see ISO/IEC 8825 and annex D) for BER-TLV data objects with tag='4X' and length='0Y'. The coding of such data objects is replaced by 'XY' followed by 'Y' bytes of data. In this clause, 'X' is referred to as the tag number and 'Y' as the length.
Besides the data objects defined in this clause, the historical bytes may contain data objects defined in part 4 of ISO/IEC 7816. In this case the coding of the tags and length fields defined in part 5 shall be modified as above.
When COMPACT-TLV data objects defined in this clause appear in the ATR file, they shall be encoded according to the basic encoding rules of ASN.1 (i.e tag='4X', length='0Y').
All application-class tags not defined in ISO/IEC 7816 are reserved for ISO.
The tag '1' is followed by the appropriate length (1 nibble) and by three digits denoting the country as defined in ISO 3166. Data which follows (odd number of nibbles) is chosen by the relevant national standardization body.
The tag '2' is followed by the appropriate length (1 nibble) and by the issuer identification number as defined in part 1 of ISO/IEC 7812. If the issuer identification number contains an odd number of digits, then it shall be right padded with a nibble valued 'F'.
When only one byte of information is provided, it indicates the length of the command to perform for retrieving the initial data string. The command to perform is a READ BINARY command structured as follows :
When two bytes of information are provided, the first byte indicates the file structure (transparent or record) and the short identifier of the EF to be read. The second byte indicates the length of the READ command to perform for retrieving data string.
Table 86 shows the second software function table which is the data coding byte. The data coding byte may also be present as the second data element in the file control parameter with tag '82' (see table 2).
The status information consists of 3 bytes: the card life status (1 byte) and the two status bytes SW1-SW2.
The value '00' of the card life status indicates that no card life status is provided. The values '80' to 'FE' are proprietary. All other values are RFU.
The value '9000' of SW1-SW2 indicates normal processing as defined in 5.4.5.
The value '0000' of SW1-SW2 indicates that the status is not indicated.
If the category indicator is valued to '80', then the status information may be present in a COMPACT-TLV data object. In this case, the tag number is '8'. When the length is '1', then the value is the card life status. When the length is '2', then the value is SW1-SW2. When the length is '3', then the value is the card life status followed by SW1-SW2. Other values of the length are reserved for ISO.