ISO 28560-2:2011 Clarification |
Authors : |
Identifier: http://biblstandard.dk/rfid/docs/clarification_28560-2.htm
|
Status : For information Bemark : Valid for ISO 28560-2:2011, not for ISO
28560-2:2014 |
Published by ISO/TC46/SC4/WG11 RFID in Libraries Information and documentation, Technical
interoperability Contact : rfid@bs.dk
|
First version: 4 November 2011 |
This document provides clarification relevant to ISO 28560 Part 2. Some references are made to ISO 28560-1 or
its associated clarification document.
The headings (below) are to the clauses in ISO 28560-2.
6.16 Local
data
The clarification that is provided for the
title (see below) is also applicable to the three data elements for local data.
6.17 Title
There can be a need to encode a title with
characters that are not included in the Latin alphabet. The advice in this clause in the standard
needs to be followed, but this clarification note in concerned with the
interoperability between the LMS/ILS and the Part 2 encoder and decoder.
The default character set of ISO/IEC 15962
is defined in ISO/IEC 8859-1 (as specified in 7.4.4 of ISO 28560-2). As this clause on compaction clearly defines,
if any graphical character of the data element is outside the range of ISO/IEC
8859-1, then UTF-8 needs to be declared as the compaction scheme.
Different program languages, and therefore
software, support the storage of these characters is one of two ways:
·
As
16-bit code points compliant with ISO/IEC 10646 (also known as Unicode). If the LMS/ILS or the ISO 28560-2 encoding
supports these characters, then the encoder needs to be responsible for the
transformation to UTF-8.
·
If the
LMS/ILS holds the characters already transformed as UTF-8 code points, then it
is essential to check that ISO 28560-2 encoding process is completely
compatible.
Note: The ISO/IEC 646 IRV character set is a
perfect subset of both ISO/IEC 8859-1 and of UTF-8.
6.19 Media
format (other)
The assigned values of this data element
are now included in the clarification document for ISO 28560-1, under section
4.2.19.
6.20 Supply
chain stage
ISO 28560 Part 1 defines the code points as
decimal values. The clarification note
for ISO 28560-1 4.2.20 now defines the total range of possible values. To
achieve interoperability in host systems, ISO 28560-2 and ISO 28560-3 require a
common basis for input to their respective encoding processes and common output
from their decoding processes. Each
input/output value is required as an 8-bit unsigned integer.
The inherent ISO/IEC 15962 encoding rules
used for ISO 28560-2 can only achieve this by using the application defined
compaction scheme. This shall be the
compaction to be applied with the input 8-bit unsigned integer being encoded
without change.
The code point 00HEX for undefined does not apply to ISO 28560-2
and should not be encoded. It is
included in the clarification note of ISO 28560-1 for encoding requirements of
ISO 28560-3.
7.4.4
Data compaction
The third paragraph of this clause
discusses the use of the application-defined argument on input. Even though implicit in the encoding, it
could be made clearer that three other data elements not listed in the standard
use this argument, and are therefore encoded using the application-defined
compaction schemes. These are all
defined on input as a single octet (coded list):
Data Element 5: Type of usage
Data Element 19: Media format (other)
Data Element 20: Supply chain stage
7.4.5.3 Data set for OID value 15 to 127
Figure 5 shows that
if the Relative-OID has a value in the range of 15 to 127, "has to be
explicitly encoded as a separate component (a single byte) in the data
set", preceding the encoding of the length of data. ISO 28560-2 does not explain in this clause,
or any worked example how such a Relative-OID value is encoded.
Although the details
are in ISO/IEC 15962, this clarification note explains the encoding rules.
The value that is encoded in the data set
is not the value of the Relative-OID, but that value minus 15. The table (below) shows some examples.
Relative-OID |
Encoded value (decimal) |
Encoded value (hexadecimal) |
15 |
15 - 15 = 0 |
0x00 |
16 |
16 - 15 = 1 |
0x01 |
17 |
17 - 15 = 2 |
0x02 |
27 |
27 - 15 = 12 |
0x0C |
127 |
127 - 15 = 92 |
0x5C |
7.4.5.4 Locking a data set
The standard states:
The value of this offset
is the number of null bytes (typically encoded as value 00HEX, but the value 80HEX is also acceptable) that are added after
the final byte of the compacted data to end on a block boundary.
For clarification, each of the
values of the pad byte, or null bytes, has the same status. The value encoded
in the offset byte determines how many bytes to skip after the compacted data
to find the precursor of the next encoded data set. The null byte value 80HEX is
used when modifying or deleting data to minimise the number of air interface
transactions.
The decode process is expected to
accept tags encoded with one or other pad byte value, and even with these
intermixed on the same tag.