AIDC technologies - Symbology specifications - Code 16K

This document:
-   specifies the requirements for the multi row bar code symbology known as "Code 16K";
-   specifies "Code 16K" symbology characteristics, data character encodation, dimensions, tolerances, decoding algorithms and user-defined application parameters;
-   describes a subset of "Code 16K" assigned to EAN International.

AutoID-Technologien - Symbologiespezifikationen - Code 16K

Dieses Dokument
-   legt die Anforderungen für die mehrzeilige Strichcodesymbologie mit Namen "Code 16K" fest.
-   legt Kennzeichen, Codierung der Datenzeichen, Abmessungen, Toleranzen, Decodieralgorithmen und benutzerdefinierte Anwendungsparameter der "Code 16K"-Symbologie fest.
beschreibt auch einen Subset von "Code 16K", der EAN International zugewiesen wurde.

Code a barres - Spécifications des symbologies - Code 16K

Tehnologije AIDC – Simbološke specifikacije – "Kod 16K"

General Information

Status
Published
Publication Date
31-Aug-2005
Technical Committee
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
01-Sep-2005
Due Date
01-Sep-2005
Completion Date
01-Sep-2005

RELATIONS

Buy Standard

Standard
SIST EN 12323:2005
English language
30 pages
sale 10% off
Preview
sale 10% off
Preview

e-Library read for
1 day

Standards Content (sample)

SLOVENSKI STANDARD
SIST EN 12323:2005
01-september-2005
1DGRPHãþD
SIST EN 12323:2003
Tehnologije AIDC – Simbološke specifikacije – "Kod 16K"
AIDC technologies - Symbology specifications - Code 16K
AutoID-Technologien - Symbologiespezifikationen - Code 16K
Code a barres - Spécifications des symbologies - Code 16K
Ta slovenski standard je istoveten z: EN 12323:2005
ICS:
35.040 Nabori znakov in kodiranje Character sets and
informacij information coding
SIST EN 12323:2005 en

2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

---------------------- Page: 1 ----------------------
SIST EN 12323:2005
---------------------- Page: 2 ----------------------
SIST EN 12323:2005
EUROPEAN STANDARD
EN 12323
NORME EUROPÉENNE
EUROPÄISCHE NORM
May 2005
ICS 35.040 Supersedes EN 12323:1998
English version
AIDC technologies - Symbology specifications - Code 16K

Code à barres - Spécifications des symbologies - Code AutoID-Technologien - Symbologiespezifikationen - Code

16K 16K
This European Standard was approved by CEN on 21 March 2005.

CEN members are bound to comply with the CEN/CENELEC Internal Regulations which stipulate the conditions for giving this European

Standard the status of a national standard without any alteration. Up-to-date lists and bibliographical references concerning such national

standards may be obtained on application to the Central Secretariat or to any CEN member.

This European Standard exists in three official versions (English, French, German). A version in any other language made by translation

under the responsibility of a CEN member into its own language and notified to the Central Secretariat has the same status as the official

versions.

CEN members are the national standards bodies of Austria, Belgium, Cyprus, Czech Republic, Denmark, Estonia, Finland, France,

Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Slovakia,

Slovenia, Spain, Sweden, Switzerland and United Kingdom.
EUROPEAN COMMITTEE FOR STANDARDIZATION
COMITÉ EUROPÉEN DE NORMALISATION
EUROPÄISCHES KOMITEE FÜR NORMUNG
Management Centre: rue de Stassart, 36 B-1050 Brussels

© 2005 CEN All rights of exploitation in any form and by any means reserved Ref. No. EN 12323:2005: E

worldwide for CEN national Members.
---------------------- Page: 3 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
Contents
Page

Foreword......................................................................................................................................................................3

Introduction .................................................................................................................................................................4

1 Scope .....................................................................................................................................................................5

2 Normative references...........................................................................................................................................5

3 Terms and definitions ..........................................................................................................................................5

4 Requirements........................................................................................................................................................6

4.1 Symbology characteristics...................................................................................................................................6

4.2 Symbol structure..................................................................................................................................................7

4.3 Character assignments........................................................................................................................................8

4.3.1 Symbol character encodation...........................................................................................................................8

4.3.2 Data character encodation ...............................................................................................................................8

4.3.3 Code sets..........................................................................................................................................................9

4.3.4 Special characters ..........................................................................................................................................11

4.3.5 Start and stop characters ...............................................................................................................................12

4.3.6 Check characters............................................................................................................................................13

4.3.7 Separator bars................................................................................................................................................14

4.4 Transmitted data................................................................................................................................................14

4.5 Dimensions........................................................................................................................................................14

4.6 Reference decode algorithm .............................................................................................................................14

4.6.1 Introduction.....................................................................................................................................................14

4.6.2 Start and stop characters ...............................................................................................................................15

4.6.3 Symbol characters..........................................................................................................................................15

4.6.4 Symbol decode...............................................................................................................................................16

4.6.5 Message decode ............................................................................................................................................16

4.6.6 Additional checks............................................................................................................................................16

4.7 User-defined application parameters ................................................................................................................17

4.7.1 Introduction.....................................................................................................................................................17

4.7.2 Symbology and dimensional characteristics ..................................................................................................17

4.7.3 Optical specifications......................................................................................................................................17

4.7.4 Test specifications ..........................................................................................................................................17

Annex A (normative) Symbol check characters ..................................................................................................19

Annex B (normative) Special considerations relating to the use of Function Code 1 (FNC1) ........................21

Annex C (normative) Using two or more “Code 16K” symbols to distribute longer data

messages...................................................................................................................................................................22

Annex D (normative) Transmitted data..................................................................................................................25

Annex E (normative) Symbology identifiers .........................................................................................................26

Annex F (informative) Use of mode, code and shift characters to minimize symbol size...............................27

Annex G (informative) Relationship of symbol character value to ASCII Value ...............................................28

Annex H (informative) Guidelines for the use of "Code 16K".............................................................................29

Bibliography ..............................................................................................................................................................30

---------------------- Page: 4 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
Foreword

This document (EN 12323:2005) has been prepared by Technical Committee CEN/TC 225 "AIDC Technologies", the

secretariat of which is held by NEN.

This European Standard shall be given the status of a national standard, either by publication of an identical text or

by endorsement, at the latest by November 2005, and conflicting national standards shall be withdrawn at the latest

by November 2005.
This document supersedes EN 12323:1998.

According to the CEN/CENELEC Internal Regulations, the national standards organizations of the following countries

are bound to implement this European Standard: Austria, Belgium, Cyprus, Czech Republic, Denmark, Estonia,

Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta,

Netherlands, Norway, Poland, Portugal, Slovakia, Slovenia, Spain, Sweden, Switzerland and United Kingdom.

---------------------- Page: 5 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
Introduction

The technology of bar coding is based on the recognition of patterns encoded in bars and spaces of defined

dimensions. There are a number of methods of encoding information in bar code form, known as symbologies, and

the rules defining the translation of characters into bar and space patterns and other essential features are known as

the symbology specifications. "Code 16K" is one such symbology.

Previously, symbology specifications have been developed and published by a number of different private

organisations, resulting in certain instances in conflicting requirements for certain symbologies.

Manufacturers of bar code equipment and users of bar code technology require publicly available standard

symbology specifications to which they can refer when developing equipment and application standards.

---------------------- Page: 6 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
1 Scope
This document:

— specifies the requirements for the multi row bar code symbology known as "Code 16K";

— specifies "Code 16K" symbology characteristics, data character encodation, dimensions, tolerances, decoding

algorithms and user-defined application parameters;
— describes a subset of "Code 16K" assigned to EAN International.
2 Normative references

The following referenced documents are indispensable for the application of this document. For dated references,

only the edition cited applies. For undated references, the latest edition of the referenced document (including any

amendments) applies.
EN 1556:1998, Bar coding ― Terminology

EN ISO/IEC 15416, Information technology ― Automatic identification and data capture techniques — Bar code print

quality test specification — Linear symbols (ISO/IEC 15416:2000)

ISO/IEC 646:1991, Information technology ― ISO 7-bit coded character set for information interchange

ISO/IEC 8859–1:1998, Information technology ― 8-bit single-byte coded graphic character sets ― Part 1: Latin

alphabet No. 1

ISO/IEC 15424, Information technology ― Automatic identification and data capture techniques ― Data Carrier

Identifiers (including Symbology Identifiers)
EAN▪UCC General Specifications (EAN International, Brussels)
3 Terms and definitions

For the purposes of this European Standard, the terms and definitions given in EN 1556:1998 and the following

apply.
3.1
guard bar

additional bar used to separate the trailing space of a start character from the leading space of the first symbol

character in a row
3.2
mode character

symbol character in the first position after the start character in the first row of a symbol, used to define the initial

code set and any implied special characters
3.3
separator bar

horizontal bar separating two rows of a symbol or abutting the top or bottom of the first or last row respectively

---------------------- Page: 7 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4 Requirements
4.1 Symbology characteristics
The characteristics of "Code 16K" are:
a) encodable character set:

1) all 128 ASCII characters, i.e. ASCII characters 0 to 127 inclusive, in accordance with ISO/IEC

646:1991;

2) characters with ASCII values 128 to 255 in accordance with ISO 8859-1:1998 may also be encoded.

See 4.3.4.4 d);
3) 4 non data function characters;
4) 3 code set selection characters;
5) 7 shift characters;
6) 8 start characters;
7) 8 stop characters;
8) 1 pad character;
b) code type: continuous, multi row;

c) elements per symbol character: 6, comprising 3 spaces and 3 bars, each of 1, 2, 3 or 4 modules in width;

d) character self-checking: yes;
e) row self-checking: yes;
f) symbol width: 81X inclusive of minimum quiet zones;
g) symbol height: variable (2 to 16 rows);
h) bidirectional decoding: yes;
i) number of symbol check characters: 2, mandatory (see Annex A);

j) symbol character density: 11 modules per symbol character representing data (equivalent to 5,5 modules per

data character in code set C);

k) representative data capacity: 2 row symbol: 7 ASCII characters, 14 numeric characters;

l) maximum data capacity 16 row symbol: 77 ASCII characters, 154 numeric characters;

m) non-data overhead:
per row: 15 modules;
per symbol: 33 modules minimum, 81 modules maximum.
---------------------- Page: 8 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.2 Symbol structure
Each "Code 16K" symbol consists of 2 to 16 rows. Each row shall comprise:
a) leading quiet zone;
b) start character;
c) 1X guard bar (where X is the nominal width of a narrow bar or space);
d) 5 symbol characters;
e) 1 stop character;
f) trailing quiet zone.

Figure 1 illustrates the row structure. Rows shall be separated from each other by a horizontal separator bar. The top

and bottom of the symbol shall also have separator bars which shall extend to the ends of the quiet zones.

Figure 1 – “Code 16K” row structure

Figure 2 shows the structure of a full 16-row symbol. The symbol characters are ordered from the leftmost character

of the first (top) row, through each row left to right to the rightmost character in the last (bottom) row. The first symbol

character is the “mode” character S. The last two characters are the check characters C1 and C2. The remaining

symbol characters encode the data for the symbol.
Figure 2 – “Code 16K” symbol structure
---------------------- Page: 9 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)

Figure 3 illustrates a complete symbol encoding the data “ab0123456789” in “Code 16K”.

Figure 3 – “Code 16k” symbol encoding “ab0123456789”
4.3 Character assignments
4.3.1 Symbol character encodation

There are 107 "Code 16K" symbol characters. Each symbol character consists of eleven 1X-wide modules. Each

symbol character consists of three space elements alternating with three bar elements, starting with a space. Each

bar or space element may consist of 1 to 4 modules.

Table 1 defines all the "Code 16K" character assignments. In the column headed 'Symbol Character Structure' the

numeric value represent the widths of the elements in modules or multiples of the X dimension.

Symbol character parity is defined by the sum of the bar modules in any symbol character. In "Code 16K" this sum

shall always be odd (odd parity). This odd parity feature enables character self-checking to be carried out. Figure 4

illustrates the symbol character value 33.
Figure 4 – Symbol character value 33
4.3.2 Data character encodation

"Code 16K" has three unique data character sets, shown in Table 1 as code sets A, B and C. The symbol character

bar and space patterns shown are equivalent to the data characters listed in the columns for code A, B or C. The

choice of data character set depends on the mode character (starting symbol character), or the use of code set A,

code set B or code set C characters or the shift characters. The code set can be redefined within the symbol by the

use of code set or shift characters.

The same data may be represented by different "Code 16K" symbol characters, through the use of different

combinations of mode, code set or shift characters. Annex F contains guidelines to generate the smallest symbol for

given data. An application need not specify the code set to be used.

Each symbol character is assigned a numeric value listed in Table 1. This value is used in calculating the check

characters C1 and C2. It may also be used to provide a conversion to and from ASCII decimal values when encoding

in code sets A and B (see Annex G).
---------------------- Page: 10 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.3.3 Code sets
4.3.3.1 Code set A

Code set A includes all of the standard upper case alphanumeric characters together with the control characters (i.e.

characters with ASCII values from 00 to 95 inclusive), and eleven special characters.

4.3.3.2 Code set B

Code set B includes all of the standard upper case alphanumeric characters together with the lower case alphabetic

characters (i.e. characters with ASCII values from 32 to 127 inclusive), and eleven special characters.

4.3.3.3 Code set C

Code set C includes the set of 100 digit pairs from 00 to 99 inclusive, as well as seven special characters. This allows

numeric data to be encoded, two data digits per symbol character, at effectively twice the density of standard data.

---------------------- Page: 11 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
Table 1 – "Code 16K" character encodations

NOTE 1 Shift is denoted as 1S, Double Shift is denoted as 2S, Triple Shift is denoted as 3S.

NOTE 2 The numeric value in the “s” and “b” columns represent the number of modules in each of the symbol character

bars and spaces.
NOTE 3 Dashed line indicates trailing edge of the preceding character.
---------------------- Page: 12 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.3.4 Special characters
4.3.4.1 Introduction

The special characters defined below provide information to the reader and are not transmitted as data.

4.3.4.2 Mode character
The mode character, S, defines
initial mode value : m
the number of rows : r

The initial mode specifies the initial code set and may also represent an implied leading FNC1 character or implied

leading Shift character as shown in Table 2. Implied characters function as if they were actual symbol characters but

do not occupy any space.
Table 2 – Initial mode value
m Initial code set Implied character
0 Code set A none
1 Code set B none
2 Code set C none
3 Code set B FNC1
4 Code set C FNC1
5 Code set C Shift B
6 Code set C Double shift B

The value, s, of the mode character is a packed number between 0 and 104 representing seven different initial mode

set combinations and fifteen different numbers of rows:
s = 7 (r - 2) + m
where
r is the number of rows (2 through 16) and "m" is the initial mode.

Where the extended data length symbol option is used (see Annex C), the value of s shall be 105.

4.3.4.3 Code set and shift characters

a) The code set A, code set B and code set C characters change the code set from the code set defined previously

to the new code set defined by the code set character. This change applies to all symbol characters following

the code set character until either the end of the symbol or another code set character is encountered.

b) The shift characters are used to change the code set temporarily. The code set will automatically revert to the

code set defined prior to the shift character after one, two or three symbol characters respectively, when single,

double or triple shift characters are used. The characters so shifted shall not themselves be code set or shift

characters.
---------------------- Page: 13 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
NOTE Annex F contains a complete guideline for the use of these characters.
4.3.4.4 Function characters

Function characters (FNC1 to FNC4) define instruction to the bar code reading device to allow for special operations

and applications
a) FNC1 shall be subject to the special considerations defined in Annex B.
b) FNC2 shall be subject to the special consideration defined in Annex C.

c) FNC3 Initialize. This instructs the reader to interpret the data contained in the symbol for reader initialization or

programming. The FNC3 may appear anywhere within the symbol following the starting symbol character.

d) FNC4 Extended ASCII Mode – (EAM). FNC4 is used to represent the extended ASCII character set (ASCII

values 128 to 255) as specified in ISO 8859-1:1998. When in code set A or B, if the FNC4 character is

encountered the value 128 is added to the ASCII value of the following data character in the symbol, which may,

if necessary, be preceded by a shift or code set character. The reference character set shall be ISO 8859-

1:1998, but application specifications may define alternative sets corresponding to ASCII values 128 to 255.

4.3.4.5 Pad character
The pad character has two functions.

a) The first position (D1) following mode character, a pad character identifies symbols which conform to a specific

industry standard, similar to FNC1.

b) When one or more pad characters appear at the end of the symbol, just before the check characters, they

represent no data; they are used to fill out the last row or rows following the final data.

4.3.5 Start and stop characters

a) The start character is a bar-space-bar-space pattern 7X wide. The patterns are edge to similar edge decodable

and have even parity. The eight patterns are defined as shown in Table 3.
Table 3 – Start patterns
Value b s b s
0 3 2 1 1
1 2 2 2 1
2 2 1 2 2
3 1 4 1 1
4 1 1 3 2
5 1 2 3 1
6 1 1 1 4
7 3 1 1 2

b) The stop character is a space-bar-space-bar pattern 7X wide. The patterns are edge to similar edge decodable

and odd parity. The eight patterns are defined the same as the start character but with bars and spaces

exchanged, as shown in Table 4.
---------------------- Page: 14 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
Table 4 – Stop patterns
Value s b s b
0 3 2 1 1
1 2 2 2 1
2 2 1 2 2
3 1 4 1 1
4 1 1 3 2
5 1 2 3 1
6 1 1 1 4
7 3 1 1 2

Each row in the symbol is assigned a unique pair of start and stop characters which identifies the row as shown in

Table 5.
Table 5 – Start and stop values defining row numbers
Row Start value Stop value
1 0 0
2 1 1
3 2 2
4 3 3
5 4 4
6 5 5
7 6 6
8 7 7
9 0 4
10 1 5
11 2 6
12 3 7
13 4 0
14 5 1
15 6 2
16 7 3

The rows of the symbol are numbered starting with row one at the top of the symbol.

c) Guard bar: a 1X wide guard bar is used following the start pattern.
4.3.6 Check characters
Annex A defines the check characters (C1 and C2) positions and calculations.
---------------------- Page: 15 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.3.7 Separator bars

Horizontal separator bars shall border the top and bottom of each row of the symbol. The height of the separator bars

shall be 1X minimum, 4X maximum and shall be constant throughout the symbol. The very top and bottom

separators shall be at least 81X long, indicating the extent of the quiet zones. The interior separators shall be 70X

long as shown in Figure 2.
4.4 Transmitted data

All encoded data characters are included in the data transmission. The mode character, code characters, shift

characters, function characters (see Annex D for transmission of FNC1), pad characters and the two check

characters are not transmitted. When required the "Code 16K" symbology identifier (see Annex E) shall be

transmitted.
4.5 Dimensions
"Code 16K" shall use the following nominal dimensions:

a) minimum width of a module (X) should be defined by the application specification. Selection of the X dimension

should be made having regard to the availability of suitable bar code printing and reading equipment;

b) g is the height of the separator bar, as a multiple of X ;

c) quiet zones: the leading quiet zone should be at least 10X wide and the trailing quiet zone should be at least 1X

wide;
d) row height (Y dimension): minimum 8X.

The dimensions of a "Code 16K" symbol, including quiet zones, may be calculated as follows:

a) symbol width: the physical width is equal to 81X. This is the sum of 10X minimum left quiet zone, 70X in the bar

and spaces and 1X minimum right quiet zone;

b) symbol height: the physical height of a symbol is proportional to the number of rows required for the message,

as given in the formula:
H = X[r(h+g)+g]
where
H is the height of the symbol in mm;
h is the height of the row bars, in multiple of X;
r is the number of rows required for message (2 to 16);
X is the nominal narrow element width in mm;
g is the height of separator bar.
4.6 Reference decode algorithm
4.6.1 Introduction

Bar code reading systems are designed to read imperfect symbols to the extent that practical algorithms permit. This

section describes the reference decode algorithm used in the computation of decodability value described in

EN ISO/IEC 15416.
---------------------- Page: 16 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.6.2 Start and stop characters

The algorithm to decode the start and stop characters contains the following steps:

a) Calculate the three width measurements p, e and e as shown in Figure 5.
1 2

b) Convert measurements e and e to normalized values E and E which represent the integer module width (E )

1 2 1 2 i
of these measurements. The following method is used for the i-th value:
if 1,5p/7 i i
if 2,5p/7 i i
if 3,5p/7 i i
if 4,5p/7 i i
otherwise the character is in error.

c) Look up the character in a decode table using the two values E and E as the key. The table should indicate the

1 2

character value 0-7 and whether it is a start or a stop character or whether it is in error. The first start or stop

character decoded will be used to define the direction of the scan. The direction will be used to determine the

location of the symbol characters in the row.

If the character is in error or the start or stop pairing is not valid, then the row is in error.

Figure 5 – Decode measurements
4.6.3 Symbol characters

a) Calculate the eight width measurements p, e1, e2, e3, e4, b1, b2, and b3 as shown in Figure 5.

---------------------- Page: 17 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)

b) Convert measurements e1, e2, e3, and e4 to normalized values E1, E2, E3, and E4 which represent the

integer module width (Ei) of these measurements. The following method is used for the i-th value:

if 1,5p/11 if 2,5p/11 if 3,5p/11 if 4,5p/11 if 5,5p/11 if 6,5p/11 otherwise the character is in error.

c) Look up the character in a decode table using the four values E1, E2, E3 and E4 as the key.

d) Retrieve the character self-checking value V that is equal to the sum of the modules widths for the spaces as

defined for that character.
e) Verify that:
(V-1,75)p/11 otherwise the character is in error.

This calculation indirectly uses character parity to detect all decode errors caused by single non systematic one-

module edge error.

Using these five steps, decode each character. If any of the symbol characters is in error, the row scan is invalid.

4.6.4 Symbol decode

When a row is decoded without error, store it as one of the "Code 16K" possible rows according to the start and stop

values. If a row is decoded with a number which has already been found and in which the data decoded is different,

reject all previous rows decoded for the symbol.

When row number one is decoded, determine the number of rows from the starting symbol character. When all the

rows in the symbol are decoded, calculate and verify the two check characters. If a check character is in error, reject

all the row decodes.
4.6.5 Message decode

After all of the characters have been decoded, translate the symbol characters into the appropriate data characters

from code set A, B, or C according to the mode, code characters and shift characters used in the symbol.

4.6.6 Additional checks

Perform checks for quiet zones, character to character widths, the 1X guard bar and absolute timing counts to reduce

the occurrence of erroneous row decode.
---------------------- Page: 18 ----------------------
SIST EN 12323:2005
EN 12323:2005 (E)
4.7 User-defined application parameters
4.7.1 Introduction
Application standards shall define parameters of "Cod
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.