Information technology - Automatic identification and data capture techniques - Bar code symbology - QR Code

Technologies de l'information — Techniques d'identification automatique et de capture de données — Symboles de codes à barres — Code QR

General Information

Status
Withdrawn
Publication Date
21-Jun-2000
Withdrawal Date
21-Jun-2000
Current Stage
9599 - Withdrawal of International Standard
Start Date
31-Aug-2006
Completion Date
30-Oct-2025
Ref Project

Relations

Standard
ISO/IEC 18004:2000 - Information technology -- Automatic identification and data capture techniques -- Bar code symbology -- QR Code
English language
114 pages
sale 15% off
Preview
sale 15% off
Preview

Frequently Asked Questions

ISO/IEC 18004:2000 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - Automatic identification and data capture techniques - Bar code symbology - QR Code". This standard covers: Information technology - Automatic identification and data capture techniques - Bar code symbology - QR Code

Information technology - Automatic identification and data capture techniques - Bar code symbology - QR Code

ISO/IEC 18004:2000 is classified under the following ICS (International Classification for Standards) categories: 01.080.50 - Graphical symbols for use on information technology and telecommunications technical drawings and in relevant technical product documentation; 35.040 - Information coding; 35.040.50 - Automatic identification and data capture techniques. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC 18004:2000 has the following relationships with other standards: It is inter standard links to ISO/IEC 18004:2006. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

You can purchase ISO/IEC 18004:2000 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.

Standards Content (Sample)


INTERNATIONAL ISO/IEC
STANDARD 18004
First edition
2000-06-15
Information technology — Automatic
identification and data capture
techniques — Bar code symbology — QR
Code
Technologies de l'information — Techniques d'identification automatique et
de capture de données — Symboles de codes à barres — Code QR
Reference number
©
ISO/IEC 2000
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but shall not
be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this
file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat accepts no liability in this
area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters
were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In the unlikely event
that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO/IEC 2000
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means, electronic
or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISO's member body
in the country of the requester.
ISO copyright office
Case postale 56 � CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.ch
Web www.iso.ch
Printed in Switzerland
ii © ISO/IEC 2000 – All rights reserved

Contents Page
Foreword.v
Introduction.vi
1 Scope .1
2 Conformance.1
3 Normative references .1
4 Terms and definitions .2
5 Symbols (and abbreviated terms).3
6 Conventions .4
6.1 Module positions .4
6.2 Byte notation.4
6.3 Version references.4
7 Symbol description .4
7.1 Basic characteristics.4
7.2 Summary of additional features.5
7.3 Symbol structure .6
7.3.1 Symbol Versions and sizes .6
7.3.2 Finder pattern.13
7.3.3 Separators .13
7.3.4 Timing Pattern.13
7.3.5 Alignment Patterns.13
7.3.6 Encoding region.13
7.3.7 Quiet zone.13
8 Requirements.14
8.1 Encode procedure overview.14
8.2 Data analysis.15
8.3 Modes.16
8.3.1 Extended Channel Interpretation (ECI) Mode .16
8.3.2 Numeric Mode .16
8.3.3 Alphanumeric Mode .16
8.3.4 8-bit Byte Mode .16
8.3.5 Kanji Mode.16
8.3.6 Mixing modes.17
8.3.7 Structured Append Mode.17
8.3.8 FNC1 Mode .17
8.4 Data encodation.17
8.4.1 Extended Channel Interpretation (ECI) Mode .18
8.4.2 Numeric Mode .19
8.4.3 Alphanumeric Mode .21
8.4.4 8-bit Byte Mode .22
8.4.5 Kanji Mode.24
8.4.6 Mixing modes.25
8.4.7 FNC1 Modes .25
8.4.8 Terminator .27
8.4.9 Bit stream to codeword conversion.27
8.5 Error correction.33
8.5.1 Error correction capacity.33
8.5.2 Generating the error correction codewords .45
8.6 Constructing the final message codeword sequence .45
© ISO/IEC 2000 – All rights reserved iii

8.7 Codeword placement in matrix.46
8.7.1 Symbol character representation.46
8.7.2 Function pattern placement.46
8.7.3 Symbol character placement.46
8.8 Masking.50
8.8.1 Mask Patterns.50
8.8.2 Evaluation of masking results.52
8.9 Format Information .53
8.10 Version Information .54
9 Structured Append .55
9.1 Basic principles .55
9.2 Symbol Sequence Indicator.56
9.3 Parity Data .56
10 Symbol printing and marking .57
10.1 Dimensions.57
10.2 Human-readable interpretation.57
10.3 Marking guidelines .57
11 Symbol quality .57
11.1 Obtaining the test image.57
11.2 Symbol quality parameters.57
11.2.1 Decode .57
11.2.2 Symbol Contrast .58
11.2.3 "Print" growth .58
11.2.4 Axial Nonuniformity.58
11.2.5 Unused Error Correction.58
11.3 Overall symbol grade .58
11.4 Process control measurements .59
12 Decoding procedure overview .59
13 Reference decode algorithm for QR Code .60
14 Autodiscrimination capability.65
15 Transmitted data .65
15.1 Symbology Identifier .65
15.2 Extended Channel Interpretations .65
15.3 FNC1.66
Annex A (normative) Error detection and correction generator polynomials .67
Annex B (normative) Error correction decoding steps .74
Annex C (normative) Format Information .76
Annex D (normative) Version Information .78
Annex E (normative) Position of Alignment Patterns.81
Annex F (normative) Symbology Identifier.83
Annex G (informative) Symbol encoding example.84
Annex H (informative) Optimisation of bit stream length.86
Annex I (informative) User guidelines for printing and scanning of QR Code symbols.88
Annex J (informative) Autodiscrimination .90
Annex K (informative) Matrix code print quality guideline.91
Annex L (informative) Process control techniques .95
Annex M (informative) Characteristics of Model 1 QR Code symbols.97
iv © ISO/IEC 2000 – All rights reserved

Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission)
form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC
participate in the development of International Standards through technical committees established by the
respective organization to deal with particular fields of technical activity. ISO and IEC technical committees
collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in
liaison with ISO and IEC, also take part in the work.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 3.
In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting.
Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote.
Attention is drawn to the possibility that some of the elements of this International Standard may be the subject of
patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
International Standard ISO/IEC 18004 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information
technology, Subcommittee SC 31, Automatic identification and data capture techniques, in collaboration with AIM
1)
Inc. .
Annexes A to F form a normative part of this International Standard. Annexes G to M are for information only.
1) AIM Inc., 634 Alpha Drive, Pittsburgh, PA 15238-2802, U.S.A.
© ISO/IEC 2000 – All rights reserved v

Introduction
QR Code is a matrix symbology consisting of an array of nominally square modules arranged in an overall square
pattern, including a unique finder pattern located at three corners of the symbol and intended to assist in easy
location of its position, size and inclination. A wide range of sizes of symbol is provided for together with four levels
of error correction. Module dimensions are user-specified to enable symbol production by a wide variety of
techniques. QR Code Model 1 is the original specification for QR Code; QR Code Model 2 is an enhanced form of
the symbology with additional features and can be auto-discriminated from Model 1. Since Model 2 is the
recommended model for new, open systems application of QR Code, this International Standard describes Model 2
fully, and specifies the features in which Model 1 QR Code differs from Model 2 in an annex.
vi © ISO/IEC 2000 – All rights reserved

INTERNATIONAL STANDARD ISO/IEC 18004:2000(E)
Information technology — Automatic identification and data
capture techniques — Bar code symbology — QR Code
1 Scope
This International Standard specifies the requirements for the symbology known as QR Code. It specifies the QR
Code Model 2 symbology characteristics, data character encodation, symbol formats, dimensional characteristics,
error correction rules, reference decoding algorithm, production quality requirements, and user-selectable
application parameters, and defines in an annex the features of Model 1 symbols which differ from Model 2.
2 Conformance
QR Code symbols (and equipment designed to produce or read QR Code symbols) shall be considered as meeting
this specification if they meet the requirements defined for either QR Code Model 2 or Model 1. It should be noted,
however, that Model 2 is the form of the symbology recommended for new and open systems applications.
3 Normative references
The following normative documents contain provisions which, through reference in this text, constitute provisions of
this International Standard. For dated references, subsequent amendments to, or revisions of, any of these
publications do not apply. However, parties to agreements based on this International Standard are encouraged to
investigate the possibility of applying the most recent editions of the normative documents indicated below. For
undated references, the latest edition of the normative document referred to applies. Members of ISO and IEC
maintain registers of currently valid International Standards.
ISO/IEC 15424, Information technology — Automatic identification and data capture techniques — Data
carrier/symbology identifiers.
ISO/IEC 15416, Information technology — Automatic identification and data capture techniques — Bar code print
quality test specifications — Linear symbols.
EN 1556, Bar Coding — Terminology.
JIS X 0201, JIS 8-bit Character Set for Information Interchange.
JIS X 0208-1997, Japanese Graphic Character Set for Information Interchange.
ANSI X3.4, Coded Character Sets — 7-bit American National Standard Code for Information Interchange (7-bit
ASCII).
AIM International Technical Specification, Extended Channel Interpretations: Part 1: Identification scheme and
protocol (referred to as "AIM ECI specification").
© ISO/IEC 2000 – All rights reserved 1

4 Terms and definitions
For the purposes of this International Standard, the terms and definitions given in EN 1556 and the following apply.
4.1
Alignment Pattern
fixed reference pattern in defined positions in a matrix symbology, which enables the decode software to re-
synchronise the coordinate mapping of the image modules in the event of moderate amounts of distortion of the
image
4.2
Character Count Indicator
bit sequence which defines the data string length in a mode
4.3
ECI designator
six-digit number identifying a specific ECI assignment
4.4
encoding region
region of the symbol not occupied by function patterns and available for encodation of data and error correction
codewords
4.5
Extended Channel Interpretation (ECI)
protocol used in some symbologies that allows the output data stream to have interpretations different from that of
the default character set
4.6
Extension Pattern
in Model 1 symbols, a function pattern which does not encode data
4.7
Format Information
function pattern containing information on the error correction level applied to the symbol and on the masking
pattern used, essential to enable the remainder of the encoding region to be decoded
4.8
function pattern
overhead component of the symbol required for location of the symbol or identification of its characteristics to assist
in decoding
4.9
Mask Pattern Reference
three-bit identifier of the masking patterns applied to the symbol
4.10
masking
process of XORing the bit pattern in the encoding region with a masking pattern to provide a symbol with more
evenly balanced numbers of dark and light modules and reduced occurrence of patterns which would interfere with
fast processing of the image
4.11
mode
method of representing a defined character set as a bit string
2 © ISO/IEC 2000 – All rights reserved

4.12
Mode Indicator
four-bit identifier indicating in which mode the next data sequence is encoded
4.13
Padding Bit
0 bit, not representing data, used to fill empty positions of the final codeword after the Terminator in a data bit string
4.14
Position Detection Pattern
one of three identical components of the Finder Pattern
4.15
Remainder Bit
0 bit, not representing data, used to fill empty positions of the symbol encoding region after the final symbol
character, where the encoding region does not divide exactly into eight-bit symbol characters
4.16
Remainder Codeword
Pad Codeword used to fill empty codeword positions to complete the symbol if the total number of data and error
correction codewords does not exactly fill its nominal capacity
NOTE The Remainder codewords come after the error correction codewords.
4.17
segment
sequence of data encoded according to the rules of one ECI or encodation mode
4.18
Separator
function pattern of all light modules, one module wide, separating the Position Detection Patterns from the rest of
the symbol
4.19
Terminator
bit pattern 0000 used to end the bit string representing data
4.20
Timing Pattern
alternating sequence of dark and light modules enabling module coordinates in the symbol to be determined
4.21
Version
size of the symbol represented in terms of its position in the sequence of permissible sizes from 21 � 21 modules
(Version 1) to 177� 177 (Version 40) modules
NOTE May also indicate the error correction level applied to the symbol.
4.22
Version Information
in Model 2 symbols, a function pattern containing information on the symbol version together with error correction
bits for this data
5 Symbols (and abbreviated terms)
Mathematical symbols used in formulae and equations are defined after the formula or equation in which they
appear.
© ISO/IEC 2000 – All rights reserved 3

For the purposes of this specification, the mathematical operations which follow shall apply:
div is the integer division operator
mod is the integer remainder after division
XOR is the exclusive-or logic function whose output is one only when its two inputs are not equivalent. It is
represented by the symbol�.
6 Conventions
6.1 Module positions
For ease of reference, module positions are defined by their row and column coordinates in the symbol, in the form
(i, j) where i designates the row (counting from the top downwards) and j the column (counting from left to right) in
which the module is located, with counting commencing at 0. Module (0, 0) is therefore located at the upper left
corner of the symbol.
6.2 Byte notation
Byte contents are shown as hexadecimal values.
6.3 Version references
Symbol versions are referred to in the form Version V-E where V identifies the version number (1 - 40) and E
indicates the error correction level (L, M, Q, H).
7 Symbol description
The clauses and subclauses of this International Standard define the specifications applicable to Model 2 QR Code
symbols. Unless indicated otherwise in Annex M they also apply to Model 1 symbols.
7.1 Basic characteristics
QR Code is a matrix symbology with the following characteristics:
a) Encodable character set:
1) numeric data (digits 0- 9);
2) alphanumeric data (digits 0- 9; upper case letters A-Z; nine other characters: space, $ % * + - . / : );
3) 8-bit byte data (JIS 8-bit character set (Latin and Kana) in accordance with JIS X 0201);
4) Kanji characters (Shift JIS character set in accordance with JIS X 0208 Annex 1 Shift Coded
Representation. Note that Kanji characters in QR Code can have values 8140 -9FFC and E040 -
HEX HEX HEX
EBBF , which can be compacted into 13 bits.)
HEX
b) Representation of data:
A dark module is a binary one and a light module is a binary zero.
c) Symbol size (not including quiet zone):
21� 21 modules to 177� 177 modules (Versions 1 to 40, increasing in steps of 4 modules per side)
4 © ISO/IEC 2000 – All rights reserved

d) Data characters per symbol (for maximum symbol size – Version 40-L):
1) numeric data: 7 089 characters
2) alphanumeric data: 4 296 characters
3) 8-bit byte data: 2 953 characters
4) Kanji data: 1 817 characters
e) Selectable error correction:
Four levels of error correction allowing recovery of:
L7%
M 15%
Q 25%
H 30%
of the symbol codewords.
f) Code type:
Matrix
g) Orientation independence:
Yes
Figure 1 illustrates a Version 1 QR Code symbol.
Figure 1 — Example of QR Code symbol
7.2 Summary of additional features
The following additional features are either inherent or optional in QR Code:
a) Structured append (optional)
This allows files of data to be represented logically and continuously in up to 16 QR Code symbols. These
may be scanned in any sequence to enable the original data to be correctly reconstructed.
© ISO/IEC 2000 – All rights reserved 5

b) Masking (inherent)
This enables the ratio of dark to light modules in the symbol to be approximated to 1:1 whilst minimizing the
occurrence of arrangements of adjoining modules which would impede efficient decoding.
c) Extended Channel Interpretations (optional)
This mechanism enables data using character sets other than the default encodable set (e.g. Arabic, Cyrillic,
Greek) and other data interpretations (e.g. compacted data using defined compression schemes) or other
industry-specific requirements to be encoded.
7.3 Symbol structure
Each QR Code symbol shall be constructed of nominally square modules set out in a regular square array and
shall consist of a encoding region and function patterns, namely finder, separator, timing patterns, and alignment
patterns. Function patterns shall not be used for the encodation of data. The symbol shall be surrounded on all
four sides by a quiet zone border. Figure 2 illustrates the structure of a Version 7 QR Code symbol.
Quiet Zone
Position Detection
Patterns
Separators for Position Function
Detection Patterns
Patterns
Symbol
Timing Patterns
Alignment Patterns
Format Information
Encoding
Version Information
Region
Data and Error
Correction Codewords
Figure 2 — Structure of a QR Code symbol
7.3.1 Symbol Versions and sizes
There are forty sizes of QR Code symbol referred to as Version 1, Version 2 . Version 40. Version 1 measures 21
modules � 21 modules, Version 2 measures 25 modules � 25 modules and so on increasing in steps of 4 modules
per side up to Version 40 which measures 177 modules � 177 modules. Figures 3 to 8 illustrate the structure of
Versions 1, 2, 6, 7, 14, 21 and 40.
6 © ISO/IEC 2000 – All rights reserved

Data and EC Codewords
Format Information and its
Error Correction codes
Version Information and its
Error Correction codes
Remainder Bits
25 modules
21 modules
5 modules
modules
Version 1 Version 2
Figure 3 — Version 1 and 2 symbols
© ISO/IEC 2000 – All rights reserved 7

41 modules
modules
Version 6
Figure 4 — Version 6 symbol
8 © ISO/IEC 2000 – All rights reserved

45 modules
modules
Version 7
Figure 5 — Version 7 symbol
© ISO/IEC 2000 – All rights reserved 9

73 modules
modules
Version 14
Figure 6 — Version 14 symbol
10 © ISO/IEC 2000 – All rights reserved

101 modules
modules
Version 21
Figure 7 — Version 21 symbol
© ISO/IEC 2000 – All rights reserved 11

177 modules
modules
Version 40
Figure 8 — Version 40 symbol
12 © ISO/IEC 2000 – All rights reserved

7.3.2 Finder pattern
The finder pattern shall consist of three identical Position Detection Patterns located at the upper left, upper right
and lower left corners of the symbol respectively as illustrated in Figure 2. Each Position Detection Pattern may be
viewed as three superimposed concentric squares and is constructed of dark 7 � 7 modules, light 5 � 5 modules
and dark 3 � 3 modules. The ratio of module widths in each Position Detection Pattern is 1:1:3:1:1 as illustrated in
Figure 9. The symbol is preferentially encoded so that similar patterns have a low probability of being encountered
elsewhere in the symbol, enabling rapid identification of a possible QR Code symbol in the field of view.
Identification of the three Position Detection Patterns comprising the finder pattern then unambiguously defines the
location and orientation of the symbol in the field of view.
1:1: 3 :1:1
A: 3 modules
A B C
B: 5 modules
C: 7 modules
Figure 9 — Structure of Position Detection Pattern
7.3.3 Separators
A one-module wide Separator is placed between each Position Detection Pattern and Encoding Region, as
illustrated in Figure 2, and is constructed of all light modules.
7.3.4 Timing Pattern
The horizontal and vertical Timing Patterns respectively consist of a one module wide row or column of alternating
dark and light modules, commencing and ending with a dark module. The horizontal Timing Pattern runs across
row 6 of the symbol between the separators for the upper Position Detection Patterns; the vertical Timing Pattern
similarly runs down column 6 of the symbol between the separators for the left-hand Position Detection Patterns.
They enable the symbol density and version to be determined and provide datum positions for determining module
coordinates.
7.3.5 Alignment Patterns
Each Alignment Pattern may be viewed as three superimposed concentric squares and is constructed of dark 5 � 5
modules, light 3� 3 modules and a single central dark module. The number of Alignment Patterns depends on the
symbol version and they shall be placed in all Model 2 symbols of Version 2 or larger in positions defined in Annex
E.
7.3.6 Encoding region
This region shall contain the symbol characters representing data, those representing error correction codewords,
the Version Information and Format Information. Refer to 8.7.1 for details of the symbol characters. Refer to 8.9
for details of the Format Information. Refer to 8.10 for details of the Version Information
7.3.7 Quiet zone
This is a region 4X wide which shall be free of all other markings, surrounding the symbol on all four sides. Its
nominal reflectance value shall be equal to that of the light modules.
© ISO/IEC 2000 – All rights reserved 13

8 Requirements
8.1 Encode procedure overview
This section provides an overview of the steps required to convert input data to a QR Code symbol.
Step 1 Data analysis
Analyze the input data stream to identify the variety of different characters to be encoded. QR Code supports the
Extended Channel Interpretation feature, enabling data differing from the default character set to be encoded. QR
Code includes several modes (see 8.3) to allow different sub-sets of characters to be converted into symbol
characters in efficient ways. Switch between modes as necessary in order to achieve the most efficient conversion
of data into a binary string. Select the required Error Detection and Correction Level. If the user has not specified
the symbol version to be used, select the smallest version that will accommodate the data. A complete list of
symbol versions and capacities is shown in Table 1.
Step 2 Data encodation
Convert the data characters into a bit stream in accordance with the rules for the mode in force, as defined in 8.4.1
to 8.4.5, inserting Mode Indicators as necessary to change modes at the beginning of each new mode segment,
and a Terminator at the end of the data sequence. Split the resulting bit stream into 8-bit codewords. Add Pad
Characters as necessary to fill the number of data codewords required for the version.
Step 3 Error correction coding
Divide the codeword sequence into the required number of blocks (as defined in Tables 13 to 22) to enable the
error correction algorithms to be processed. Generate the error correction codewords for each block, appending
the error correction codewords to the end of the data codeword sequence.
Step 4 Structure final message
Interleave the data and error correction codewords from each block as described in 8.6 (step 3) and add remainder
bits as necessary.
Step 5 Module placement in matrix
Place the codeword modules in the matrix together with the Finder Pattern, Separators, Timing Pattern, and
Alignment Patterns.
Step 6 Masking
Apply the masking patterns in turn to the encoding region of the symbol. Evaluate the results and select the
pattern which optimizes the dark/light module balance and minimizes the occurrence of undesirable patterns.
Step 7 Format and Version Information
Generate the Format and (where applicable) Version Information and complete the symbol.
14 © ISO/IEC 2000 – All rights reserved

Table 1 — Data capacity of all versions of QR Code
Function Format and
Version No. of Data capacity Remainder
Data
pattern Version
a
Modules/
modules [codewords]
Bits
modules (B) Information
except (C)
side (A) (E)
modules (C) 2
(D=A -B-C)
1 21 202 31 208 26 0
2 25 235 31 359 44 7
3 29 243 31 567 70 7
4 33 251 31 807 100 7
5 37 259 31 1 079 134 7
6 41 267 31 1 383 172 7
7 45 390 67 1 568 196 0
8 49 398 67 1 936 242 0
9 53 406 67 2 336 292 0
10 57 414 67 2 768 346 0
11 61 422 67 3 232 404 0
12 65 430 67 3 728 466 0
13 69 438 67 4 256 532 0
14 73 611 67 4 651 581 3
15 77 619 67 5 243 655 3
16 81 627 67 5 867 733 3
17 85 635 67 6 523 815 3
18 89 643 67 7 211 901 3
19 93 651 67 7 931 991 3
20 97 659 67 8 683 1 085 3
21 101 882 67 9 252 1 156 4
22 105 890 67 10 068 1 258 4
23 109 898 67 10 916 1 364 4
24 113 906 67 11 796 1 474 4
25 117 914 67 12 708 1 588 4
26 121 922 67 13 652 1 706 4
27 125 930 67 14 628 1 828 4
28 129 1 203 67 15 371 1 921 3
29 133 1 211 67 16 411 2 051 3
30 137 1 219 67 17 483 2 185 3
31 141 1 227 67 18 587 2 323 3
32 145 1 235 67 19 723 2 465 3
33 149 1 243 67 20 891 2 611 3
34 153 1 251 67 22 091 2 761 3
35 157 1 574 67 23 008 2 876 0
36 161 1 582 67 24 272 3 034 0
37 165 1 590 67 25 568 3 196 0
38 169 1 598 67 26 896 3 362 0
39 173 1 606 67 28 256 3 532 0
40 177 1 614 67 29 648 3 706 0
a
All codewords shall be 8 bits in length.
8.2 Data analysis
Analyze the input data string to determine its content and select the default or other appropriate ECI and the
appropriate mode to encode each sequence as described in 8.4. Each mode in sequence from Numeric mode to
© ISO/IEC 2000 – All rights reserved 15

Kanji mode progressively requires more bits per character. It is possible to switch from mode to mode within a
symbol in order to minimize the bit stream length for data, parts of which can more efficiently be encoded in one
mode than other parts, e.g. numeric sequences followed by alphanumeric sequences. It is in theory most efficient
to encode data in the mode requiring the fewest bits per data character, but as there is some overhead in the form
of Mode Indicator and Character Count Indicator associated with each mode change, it may not always result in the
shortest overall bit stream to change modes for a small number of characters. Guidance on this is given in Annex
H. Also, because the capacity of symbols increases in discrete steps from one version to the next, it may not
always be necessary to achieve the maximum conversion efficiency in every case.
8.3 Modes
The modes defined below are based on the character values and assignments associated with the default ECI.
When any other ECI is in force, the byte values rather than the specific character assignments shall be used to
select the optimum data compaction mode. For example, Numeric Mode would be appropriate if there is a
sequence of data byte values within the range 30 to 39 inclusive. In this case the compaction is carried out
HEX HEX
using the default numeric or alphabetic equivalents of the byte values.
8.3.1 Extended Channel Interpretation (ECI) Mode
The Extended Channel Interpretation (ECI) protocol allows the output data stream to have interpretations different
from that of the default character set. The ECI protocol is defined consistently across a number of symbologies.
Four broad types of interpretation are supported in QR Code:
a) international character sets (or code pages)
b) general purpose interpretations such as encryption or compaction
c) user-defined interpretations for closed systems.
d) control information for structured append in unbuffered mode
The ECI protocol is fully defined in the AIM ECI specification. The protocol provides a consistent method to specify
particular interpretations of byte values before printing and after decoding.
The default interpretation for QR Code is ECI 000020 representing the JIS8 and Shift JIS character sets.
8.3.2 Numeric Mode
Numeric mode encodes data from the decimal digit set (0- 9) (ASCII values 30 to 39 ) at a normal density of
HEX HEX
3 data characters per 10 bits.
8.3.3 Alphanumeric Mode
Alphanumeric Mode encodes data from a set of 45 characters, i.e. 10 numeric digits (0- 9) (ASCII values 30 to
HEX
39 ), 26 alphabetic characters (A- Z) (ASCII values 41 to 5A ) , and 9 symbols (SP, $, %, *, +, -, ., /, :)
HEX HEX HEX
(ASCII values 20 ,24 ,25 ,2A ,2B ,2Dto2F ,3A respectively). Normally, two input characters
HEX HEX HEX HEX HEX HEX HEX
are represented by 11 bits.
8.3.4 8-bit Byte Mode
The 8-bit byte mode handles the 8-bit Latin/Kana character set in accordance with JIS X 0201 (character values
00 to FF ). In this mode data is encoded at a density of 8 bits/character.
HEX HEX
8.3.5 Kanji Mode
The Kanji mode handles Kanji characters in accordance with the Shift JIS system based on JIS X 0208. The Shift
JIS values are shifted from the JIS X 0208 values. Refer to JIS X 0208 Annex 1 Shift Coded Representation for
detail. Each two-byte character value is compacted to a 13 bit binary codeword.
16 © ISO/IEC 2000 – All rights reserved

8.3.6 Mixing modes
The QR Code symbol may contain sequences of data in a combination of any of the modes described in 8.3.1 to
8.3.5
Refer to Annex H for guidance on selecting the most efficient way of representing a given input data string in Mixing
Mode.
8.3.7 Structured Append Mode
Structured Append mode is used to split the encodation of the data from a message over a number of QR Code
symbols. All of the symbols require to be read and the data message can be reconstructed in the correct
sequence. The Structured Append header is encoded in each symbol to identify the length of the sequence and the
symbol’s position in it, and verify that all the symbols read belong to the same message. Refer to 9 for details of
encodation in Structured Append mode.
8.3.8 FNC1 Mode
FNC1 mode is used for messages containing data formatted either in accordance with the UCC/EAN Application
Identifiers standard or in accordance with a specific industry standard previously agreed with AIM International.
8.4 Data encodation
Input data is converted into a bit stream consisting of an ECI header if the initial ECI is other than the default ECI,
followed by one or more segments each in a separate mode. In the default ECI, the bit stream commences with
the first Mode Indicator.
The ECI header (if present) shall comprise:
� ECI Mode Indicator (4 bits)
� ECI Designator (8, 16 or 24 bits)
The remainder of the bit stream is then made up of segments each comprising:
� Mode Indicator (4 bits)
� Character Count Indicator
� Data bit stream.
The ECI header shall begin with the first (most significant) bit of the ECI Mode Indicator and end with the final (least
significant) bit of the ECI Designator. Each Mode segment shall begin with the first (most significant) bit of the
Mode Indicator and end with the final (least significant) bit of the data bit stream. There shall be no explicit
separator between segments as their length is defined unambiguously by the rules for the mode in force and the
number of input data characters.
To encode a sequence of input data in a given mode, the steps defined in sections 8.4.1 to 8.4.6 shall be followed.
Tabl
...

Questions, Comments and Discussion

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

Loading comments...