Information technology — International symbology specification — MaxiCode

This specification defines the requirements for the symbology known as MaxiCode. MaxiCode is a fixed-size matrix symbology which is made up of offset rows of hexagonal modules arranged around a unique finder pattern. This specification specifies the MaxiCode symbology characteristics, data character encodation, symbol formats, dimensions and print quality requirements, error correction rules, decoding algorithm, and user-selectable application parameters. MaxiCode includes special encodation modes for use in destination sortation symbols by carriers in the transport industry.

Technologies de l'information — Spécification internationale des symboles — MaxiCode

General Information

Status
Published
Publication Date
03-May-2000
Current Stage
9060 - Close of review
Completion Date
02-Dec-2030
Ref Project
Standard
ISO/IEC 16023:2000 - Information technology -- International symbology specification -- MaxiCode
English language
44 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ISO/IEC 16023:2000 - Information technology -- International symbology specification -- MaxiCode
English language
44 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)


INTERNATIONAL ISO/IEC
STANDARD 16023
First edition
2000-05-01
Information technology — International
symbology specification — MaxiCode
Technologies de l'information — Spécification internationale des
symboles — MaxiCode
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 734 10 79
E-mail copyright@iso.ch
Web www.iso.ch
Printed in Switzerland
ii © ISO/IEC 2000 – All rights reserved

Contents
Introduction . 1
1 Scope . 1
2 Normative References . 1
3 Definitions and Mathematical Symbols . 1
3.1 Definitions . 1
3.1.1 Codeword . 1
3.1.2 Extended Channel Interpretation (ECI) . 1
3.1.3 Mode Indicator . 1
3.1.4 Module. 2
3.2 Mathematical Symbols and Operations . 2
4 Requirements . 2
4.1 Symbology Characteristics . 2
4.1.1 Basic Characteristics . 2
4.1.2 Summary of Additional Features . 3
4.2 Symbol Description . 4
4.2.1 Symbol Structure . 4
4.2.2 Symbol Character and Module Sequence . 5
4.3 General Encodation Procedures . 6
4.4 Character Assignments . 7
4.4.1 Codeword Representation . 7
4.4.2 Default Character Interpretation . 7
4.4.3 Code Sets . 7
4.4.4 Symbology Control Characters . 8
4.5 User Considerations for Encoding Data in a MaxiCode Symbol . 9
4.5.1 User Selection of Error Correction Level . 9
4.5.2 User Selection of Mode . 9
4.5.3 User Selection of Extended Channel Interpretation . 10
4.5.4 User Selection of Structured Append .10
4.5.5 User Assessment of Encodation Capacity . 10
4.6 Extended Channel Interpretation . 10
4.6.1 ECI and Modes 2 and 3 . 10
4.6.2 Encodation Modes and ECIs . 10
4.6.3 Encoding ECIs in MaxiCode . 11
4.6.4 ECIs and Structured Append . 11
4.6.5 Post-Decode Protocol . 11
4.7 Message Structure . 11
4.7.1 Primary Message . 11
4.7.2 Secondary Message . 11
4.7.3 Structuring the Data . 12
4.8 Modes . 12
4.8.1 Mode 0: Obsolete . 12
4.8.2 Mode 1: Obsolete . 12
4.8.3 Modes 2 and 3: Structured Carrier Message . 12
4.8.4 Mode 4: Standard Symbol . 13
4.8.5 Mode 5: Full EEC. 13
4.8.6 Mode 6: Reader Programming . 13
4.8.7 Mode Indicators . 13
© ISO/IEC 2000 – All rights reserved iii

4.9 Structured Append . 13
4.9.1 Basic Principles . 13
4.9.2 Structured Append and Modes 2 and 3 . 13
4.9.3 Structured Append in Modes 4 to 6 . 14
4.9.4 Buffered and Unbuffered Operation .14
4.10 Error Detection and Correction . 14
4.10.1 Enhanced Error Correction (EEC) in the Primary Message . 14
4.10.2 Error Correction in the Secondary Message . 14
4.10.3 Generating the Error Correction Codewords . 14
4.10.4 Error Correction Capacity . 15
4.11 Dimensions . 15
4.11.1 Symbol Dimensions . 15
4.11.2 Hexagonal Module Dimensions . 15
4.11.3 Dark Hexagon Dimensions and Tolerances . 16
4.11.4 Finder Pattern Dimensions . 16
4.11.5 Quiet Zones . 17
4.11.6 Overall Symbol Size . 17
4.11.7 Practical Printing Guidance . 17
4.12 User Guidelines . 17
4.12.1 Human Readable Interpretation . 17
4.12.2 Autodiscrimination Capability . 17
4.13 Symbol Quality . 17
4.13.1 Obtaining the Test Image . 17
4.13.2 Symbol Quality Parameters . 17
4.13.3 Overall Symbol Grade . 19
4.13.4 Process Control Measurements . 19
4.14 Reference Decode Algorithm . 19
4.15 Transmitted Data . 22
4.15.1 Basic Interpretation . 22
4.15.2 Protocol for Extended Channel Interpretation . 22
4.15.3 Symbology Identifier . 22
4.15.4 Transmitted Data Example . 23
Annexe A (Normative) . 24
MaxiCode Basic Character Encodation: Default Character Set . 24
Annexe B (Normative) . 26
Mode 2 and Mode 3: Structured Carrier Message . 26
B.1 The Structure of the Primary Message . 26
B.2 Modes 2 and 3 Messages Beginning with "[)>RS01GS" . 27
B.2.1 Encoding . 27
B.2.2 Decoding . 27
B.3 Modes 2 and 3 Messages Not Beginning with "[)>RS01GS" . 28
B.3.1 Encoding . 28
B.3.2 Decoding . 28
B.4 Modes 2 and 3 and Structured Append . 28
B.4.1 Encoding Considerations . 28
B.4.2 Decoding Considerations . 28
Annexe C (Normative) . 29
iv © ISO/IEC 2000 – All rights reserved

2D Matrix Bar Code Print Quality - Guideline . 29
C.1 Obtaining the Test Image . 29
C.2 Assessing Symbol Parameters . 29
C.2.1 Decode . 29
C.2.2 Symbol Contrast . 30
C.2.3 “Print” Growth . 30
C.2.4 Grid Nonuniformity . 30
C.2.5 Unused Error Correction . 31
C.3 Overall Symbol Grade . 31
Annexe D (Normative) . 31
Error Correction Algorithm . 31
Annexe E (Normative) . 32
Symbology Identifiers . 32
Annexe F (Informative) . 32
Use of Numeric Shift, Shift , Latch, and Lock-In Characters . 32
F.1 Numeric Shift . 32
F.2 Switching from Code Set A to Code Set B . 33
F.3 Switching from Code Set B to Code Set A . 33
F.4 Using Lock-In to Latch to Code Sets C, D or E . 33
F.5 Illustrative Example . 33
Annexe G (Informative) . 34
User Assessment of Encodation Capacity . 34
Annexe H (Informative) . 35
A MaxiCode Encoding Example . 35
Annexe J (Informative) . 38
Practical Printing Considerations . 38
J.1 12 dots per Millimeter . 38
J.2 8 dots per Millimeter . 39
J.3 Generic Rules for Other Pixel Sizes . 40
J.4 Determining the Hexagon Font for a Given Dot Pitch . 40
Annexe K (Informative) . 41
Autodiscrimination Compatibility . 41
Annexe L (Informative) . 42
Useful Process Control Techniques . 42
L.1 Symbol Contrast . 42
L.2 Symbol Size . 42
L.2.1 Checking Print Growth . 42
L.2.2 Checking Finder Position and Orientation Patterns . 42
L.2.3 Checking Overall Symbol Size . 42
L.3 Symbol Distortion . 43
L.4 Print Growth and Defects . 43
© ISO/IEC 2000 – All rights reserved v

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 16023 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information
technology, Subcommittee SC 31, Automatic identification and data capture techniques.
International Standard ISO/IEC 16023 was prepared by AIM International (as ANSI/AIM BC10) and was adopted,
under a special “fast-track procedure”, by Joint Technical Committee ISO/IEC JTC 1, Information technology,in
parallel with its approval by national bodies of ISO and IEC.
Annexes A to E form a normative part of this International Standard. Annexes F to L are for information only.
vi © ISO/IEC 2000 – All rights reserved

INTERNATIONAL STANDARD ISO/IEC 16023:2000(E)
Information technology — International symbology
specification — MaxiCode
ISO/IEC
Introduction
8859-1 Information Processing - 8-bit
MaxiCode is a fixed-size matrix symbology which is
Single-byte Coded Graphic
made up of offset rows of hexagonal modules
Character Sets - Part 1 (Latin
arranged around a unique finder pattern.
Alphabet Number 1)
Manufacturers of bar code equipment and users
Guideline on Mode 0 for MaxiCode - AIM USA
of the technology require publicly available standard
ECI Assignments Document - AIM International.
symbology specifications to which they can refer
when developing equipment and application
standards. The publication of Symbology
3 Definitions and Mathematical
Specifications is designed to achieve this.
Symbols
1 Scope
3.1 Definitions
This specification defines the requirements for the
For the purposes of this Standard the following
symbology known as MaxiCode. It specifies the
definitions in EN1556 (Terminology) shall apply:
MaxiCode symbology characteristics, data character
encodation, symbol formats, dimensions and print
algorithm, application standard, ASCII,
quality requirements, error correction rules,
autodiscrimination, binary, bit, CCD, code page,
decoding algorithm, and user-selectable application
code set, data character, data codeword, data
parameters.
region, data separator character, decode
algorithm, decoder, error correction, finder
2 Normative References pattern, human readable character, latch
character, leading zeros, matrix symbology,
This specification incorporates provisions from other
modulo, numeric, omnidirectional, orientation
publications. These normative references are cited
pattern, overhead, pad character, pixel, quiet
at the appropriate places in the text and the
zone, reference decode algorithm, Reed-
publications are listed below. The latest edition of
Solomon error correction, scanner, shift
the publication referred to applies.
characters, structured append, symbol character,
symbology, symbology identifier, X-dimension
EN796 Bar Coding : Symbology Identifiers
The following definitions also apply to this
EN1556 Bar Coding : Terminology
specification. Although some of the terms below are
defined in EN1556, the definitions which follow
ANSI
below are more appropriate for this specification.
X3.182 Bar Code Print Quality - Guideline
(Same as EN1635 - Bar Coding :
3.1.1 Codeword
Test Specifications for Bar Code
A symbol character value. An intermediate level of
Symbols)
coding between source data and the graphical
encodation in the symbol.
ANSI
X3.4 Coded Character Sets - 7-bit
3.1.2 Extended Channel Interpretation (ECI)
American National Standard Code
A protocol used by some symbologies that allows
for Information Interchange (7-bit
the output data stream to have interpretations other
ASCII)
than that of the default character set.
(equivalent to the US national
version of ISO 646)
3.1.3 Mode Indicator
A group of modules, in MaxiCode, used to define
ISO 3166 Codes for the Representation on
the symbol structure, for example to specify the level
Names of Countries
of error correction employed in the symbol.
© ISO/IEC 2000 – All rights reserved 1

3.1.4 Module ii. values 128-255 in accordance with ISO
A single cell in a matrix symbology used to encode 8859-1: Latin Alphabet No. 1
one bit of data. In MaxiCode the module is a regular
hexagonal shape. 2. Numeric compaction allows 9 digits to be
compacted in six codewords.
3. Various symbology control characters, for
3.2 Mathematical Symbols and Operations
code switching and other control purposes,
For the purposes of this specification the
are included.
mathematical symbols which follow shall apply:
b. Codeword set:
c codeword
H vertical distance from the center of a module
1. The codeword set of 64 (2 ) values is used
in the top row to the center of a module in the
as an intermediate encodation layer
bottom row
between the data characters and symbol
L distance from the center of the left-most
characters. The codewords form the basis
module to the center of the right-most
for error correction calculations.
module in the top row
m message character
2. The codewords have the values 0-63;
n total number of data codewords
000000 to 111111 in binary notation.
s symbol character
Within each symbol character the most
V vertical height of a module
significant bit is the lowest numbered
W center to center distance between adjacent
module as shown in Figures 1 and 5.
modules
X horizontal width of a module
c. Representation of codewords in a MaxiCode
Y vertical distance from the center line of
symbol:
modules in one row to the center line of
modules in an adjacent row
1. Each codeword is represented by 6 modules
which are hexagonal in shape.
For the purposes of this specification the
mathematical operations which follow shall apply:
2. Information is represented in each module
as a binary bit.  A dark module is a one and
div is the integer division operator
a light module is a zero.
mod is the integer remainder after division
3. Generally the six modules are arranged in
three rows of two modules, each ordered
4 Requirements
from upper right to lower left. Figure 1
4.1 Symbology Characteristics
identifies the modules of a typical symbol
4.1.1 Basic Characteristics
character.
MaxiCode is a matrix symbology with the following
basic characteristics:
4. Because of the structure of the MaxiCode
symbol, symbol characters 1 - 9 and 137 -
a. Encodable character set:
144 have a different arrangement (See
Figure 4).
1. The default character set allows 256
international characters to be encoded:
i. values 0-127, in accordance with ANSI
X3.4, i.e. all 128 ASCII characters
2 © ISO/IEC 2000 – All rights reserved

f. Error correction:
50 or 66 codewords per MaxiCode symbol.
2 1 2
g. Code type: matrix
MSB
MSB
h. Orientation independence: Yes
43 4
6 6 4.1.2 Summary of Additional Features
LSB LSB
The following summary is of additional features
which are inherent or optional in MaxiCode:
LSB = Least Significant Bit a. Finder Pattern: (Inherent) MaxiCode symbols
MSB = Most Significant Bit
have a central unique finder pattern, of three
concentric dark rings, which is used to locate
Figure 1: Typical Symbol Character of a
the MaxiCode symbol within a field of view
MaxiCode Symbol
(see Section 4.2.1.1). The finder pattern and
fixed symbol size makes the MaxiCode
symbology suitable for high speed scanning
d. Symbol size:
applications.
1. Each MaxiCode symbol is of a fixed size,
b. Error Correction: (Inherent) MaxiCode
having 884 hexagonal modules arranged in
symbols have error correction codewords,
33 rows around a central finder pattern.
based on Reed-Solomon error correction
Each row consists of a maximum of 30
algorithms, which can be used not only to
modules.
detect errors but to correct erroneously
decoded or missing codewords (see Section
2. Each symbol, including the quiet zone, is of
4.5.1). A user may select one of two error
a fixed physical size, nominally 28.14mm
correction levels.
wide x 26.91mm high.
c. Modes: (Inherent) This mechanism allows
3. 864 modules (144 symbol characters) are
various structures of the symbol. Seven modes
available for data encodation and error
are specified (including 2 obsolete modes, see
correction. Two modules are unused.
Section 4.8).
4. Non-data overhead:
d. Extended Channel Interpretations: (Optional)
This mechanism enables characters from other
i. 18 modules for orientation per symbol
character sets (e.g. Arabic, Cyrillic, Greek,
Hebrew) and other data interpretations or
ii. equivalent of 90 modules for the finder
industry-specific requirements to be
pattern
represented.
e. Maximum data capacity:
e. Structured Append: (Optional) This allows
files of data to be represented in up to 8
1. Alphanumeric characters: 93
MaxiCode symbols. The original data can be
2. Numeric characters: 138
correctly reconstructed regardless of the order
in which the symbols are scanned (see Section
4.9).
© ISO/IEC 2000 – All rights reserved 3

4.2 Symbol Description
4.2.1 Symbol Structure
Each MaxiCode symbol consists of a central finder
pattern surrounded by a square array of offset rows
of hexagonal modules. The 33 rows in the symbol
alternate between 30 and 29 modules in width. The
symbol shall be surrounded on all four sides by a
quiet zone border. Figure 2 illustrates a MaxiCode
symbol.
4.2.1.1 Finder Pattern
The finder pattern is made up of 3 dark concentric
rings and 3 included light areas, centered on the
“THIS IS A 93 CHARACTER CODE SET A
virtual module specified in Section 4.11.4. Figure 3
MESSAGE THAT FILLS A MODE 4,
shows the finder pattern relative to the adjacent
UNAPPENDED, MAXICODE SYMBOL.”
module pattern.
4.2.1.2 Orientation Patterns
Figure 2: MaxiCode Symbol (Actual Size)
The orientation information is provided by 6 patterns
of 3 modules. The precise location of the
Orientation Patterns are given in Figures 3 - 5.
B B W
B
W W
B = black or dark modules of the
orientation pattern
B
W = white or light modules of the
BW
W B
orientation pattern
B
= virtual hexagon
BW B
B W B
Figure 3: MaxiCode Symbol Construction - Finder Pattern and Orientation Modules
4 © ISO/IEC 2000 – All rights reserved

c. Modules 1 to 120, i.e. 20 symbol characters, specify the rules and procedures.
shall contain information from the Primary Message,
including data, error correction and mode 1. For transportation applications, determine if a
information. Modules 121 to 864, i.e. 124 symbol structured carrier message is appropriate; if so,
characters, shall contain information from the special encoding rules apply to the primary
Secondary Message. message.
The two rightmost modules in the top row are not
utilized (See Figure 5). They shall be encoded as 2. Data from a 256 character set may be encoded
dark modules. in MaxiCode. This data needs to be presented
in a data stream reading from left to right.
4.3 General Encodation Procedures
3. Each character of data is translated into a
The following steps are required to convert data into
codeword (0-63). Additional codewords are
the encoded form represented in a MaxiCode
symbol. The following sections of this specification
122 121 128 127 134 140 139 146 145 152 151 158 157 164 170 169 176 175 182 181 188 187 194 200 199
133 163 193
124 123 130 129 136 135 142 141 148 147 154 153 160 159 166 165 172 171 178 177 184 183 190 189 196 195 202 201 817
126 125 132 131 138 137 144 143 150 149 156 155 162 161 168 167 174 173 180 179‘186 185 192 191 198 197 204 203 819 818
284 283 278 277 272 271 266 265 260 259 254 253 248 247 242 241 236 235 230 229 224 223 218 217 212 211 206 205 820
286 285 280 279 274 273 268 267 262 261 256 255 250 249 243 238 237 232 231 226 225 220 219 214 213 208 207 822 821
264 263 258 257 252 251 246 245 240 239 234 233 228 227 222 221 216 215 210 209 823
288287 282 281 276 275 270 269
290 289 296 295 302 301 308 307 314 313 320 319 326 325 332 331 338 337 344 343 350 349 356 355 362 361 368 367 825 824
292 291 298 297 304 303 310 309 316 315 322 321 328 327 334 333 340 339 346 345 352 351 358 357 364 363 370 369 826
294 293 300 299 306 305 312 311 318317 324 323 330 329 336 335 342 341 348 347 354 353 360 359 366 365 372 371 828 827
14 13 38 37 3 45 44 110 109 386 385 380 379 374 373 829
410 409 404 403 398 397 392 391 80 79 BB W
412 411 406 405 400 399 394 393 82 81 41 16 15 40 39 4 46 112 111 388 387 382 381 376 375 831 830
B WW
6 5 48 47 114 113 390 389 384 383 378 377 832
414 413 408 407 402 401 396 395 84 83 42
416 415 422 421 428 427 104 103 56 55 17 21 20 86 85 434 433 440 439 446 445 834 833
418 417 424423 430 429 106 105 58 57 23 22 88 87 436 435 442 441 448 447 835
420 419 426 425 432 431 108 107 60 59 24 90 89 438 437 444 443 450 449 837 836
482 481 476 475 470 469 49 31
1 54 53 464 463 458 457 452 451 838
B
484 483 478 477 472 471 50 466 465 460 459 454 453 840 839
B B
W W
486 485 480 479 474 473 52 51 32
2 43 468 467 462 461 456 455 841
B
488 487 494 493 500 499 98 97 62 61 27 92 91 506 505 512 511 518 517 843 842
490 489 496 495 502 501 100 99 64 63 29 28 94 93 508 507 514 513 520 519 844
492491 498 497 504 503 102 66 65 18 19 30 96 95 510 509 516 515 522 521 846 845
560 559 554 553 548 547 542 541 74 73 33
11 68 67 116 115 536 535 530 529 524 523 847
562 561 556 555 550 549 544 543 76 75 8 7 36 35 12 70 69 118 117 538 537 532 531 526 525 849 848
B W B
564 563 558 557 552 551 546 545 78 77 34 9 26 25 72 71 120 119 540 539 534 533 528 527 850
B B
W
566 565 572 571 578 577 584 583 590 589 596 595 602 601 608 607 614 613 620 619 626 625 632 631 638 637 644 643 852 851
568 567 574 573 580 579 586 585 592
591 598 597 604 603 610 609 616 615 622 621 628 627 634 633 640 639 646 645 853
570 569 576 575 582 581 588 587 594 593
600 599 606 605 612 611 618 617 624 623 630 629 636 635 642 641 648 647 855 854
728 727 722 721 716 715 710 709 704 703 698 697 692 691 686 685 680 679 674 673 668 667 662 661 656 655 650 649 856
729 705
730 724 723 718 717 712 711 706 700699 694 693 688 6875682 681 676 675 670 669 664 663 658 657 652 651 858 857
732 731 726725 720 719 714 713 708 707 702 701 696 695 690 689 684 683 678 677 672671 666 665 660 659 654 653 859
734 733 740 739 746 745 752 751 758 757 764 763 770 769 776 775 782 781 788 787 794 793 800 799 806 805 812 811 861 860
736 735 742 741 748 747 754 753 760 759 766 765 772 771 778 777 784 783 790 789 796 795 802 801 808 807 814 813 862
738 737 744 743 750 749 756 755 762 761 768 767 774 773 780 779 786 785 792 791 798 797 804 803 810 809 816 815 864 863
Figure 5: MaxiCode Module Sequence
6 © ISO/IEC 2000 – All rights reserved

inserted in the process to switch between MaxiCode range from 0 to 63. The binary
subsets of character sets. equivalent of the codeword (i.e. 000000 to 111111)
shall be directly represented in six hexagonal
4. The user or application selects one of two modules in the MaxiCode symbol.
error correction levels. The sequence of modules in a codeword is
normally represented in a MaxiCode symbol
5. Pad characters are added as needed to fill out character as illustrated in Figure 1, and the entire
the capacity of the symbol. data shall follow the module pattern sequence as
defined in Figure 5.
6. The codeword stream is subdivided into two
messages: Primary and Secondary. 4.4.2 Default Character Interpretation
The default character interpretation for character
7. The error correction codewords are generated values 0 to 127 shall conform to ANSI X3.4. The
for the Primary Message and for the default character interpretation for character values
Secondary Message. The result of this process 128 to 255 shall conform to ISO 8859-1: Latin
expands the codeword stream by the number Alphabet No. 1. The graphical representation of
of error correction codewords, either 50 or 66. data characters shown throughout this document
complies with the default interpretation. This
8. The codeword stream is converted into two bit interpretation can be changed using Extended
streams for the Primary and Secondary Channel Interpretation (ECI) escape sequences, see
Messages. Section 4.6. The default interpretation corresponds
to ECI 000003.
9. The primary and secondary bit streams are
mapped bit by bit to the sequence of hexagonal 4.4.3 Code Sets
modules in the MaxiCode symbol (See Figure 4.4.3.1 Code Set A
5). Code Set A is the default code set at the start of
every MaxiCode symbol.
Code Set A contains all the standard uppercase
alphabetic characters, the numerals 0 to 9, 15
4.4 Character Assignments
common punctuation symbols, the space character,
MaxiCode has a 64 codeword set which is used to
and the control characters [CR], [FS], [GS] and [RS]
encode up to 256 different character values, to
used for data syntax. In addition, it contains 8
provide numeric compaction and to encode
symbology control characters.
particular structured messages (see Section 4.7.3, for
a description of Modes 2 and 3). The rules for
4.4.3.2 Code Set B
encoding data are defined in the following sections.
Code Set B contains all the lowercase alphabetic
In order to encode all 256 characters, five Code
characters and additional punctuation characters. In
Sets (A to E) are defined. Annexe A shows the
addition, it includes the control characters [FS],
encodable character set and the arrangement of
[GS], [RS], and [DEL] used for data syntax and 12
characters in the five Code Sets. Characters are
symbology control characters.
grouped into Code Sets according to likely use.
Code Set A contains the characters assessed to be
4.4.3.3 Code Set C
most commonly used; in many applications it may
Code Set C contains multilingual uppercase
not be necessary to switch from this basic character
alphabetic characters and additional punctuation and
set. To select other data characters, it is necessary to
other graphic characters. It also includes the control
use Latch and Shift characters (see Section 4.4.4.1 to
characters [FS], [GS] and [RS] used for data syntax
4.4.4.5).
and 10 of the characters (values 128 to 137) not
assigned a graphic representation in ISO 8859. In
4.4.1 Codeword Representation
addition, it includes 7 symbology control characters.
The codewords, or symbol character values, in
© ISO/IEC 2000 – All rights reserved 7

4.4.3.4 Code Set D control characters. Annexe F provides guidance on
Code Set D contains multilingual lowercase optimum use of Latch, Shift, and Lock-In characters.
alphabetic characters, and additional punctuation. It
also includes the control characters [FS], [GS] and 4.4.4.1 Latch Characters
[RS] used for data syntax and 11 characters (values A Latch Character may be used to switch from one
138 to 148) not assigned a graphical interpretation in Code Set to another Code Set. All codewords which
ISO 8859. In addition, it includes 7 symbology follow a Latch Character shall be interpreted
control characters. according to the new Code Set. The Code Set
remains in effect until another Latch Character or
4.4.3.5 Code Set E shift is encountered.
Code Set E contains the 31 ASCII control Latch Characters are in all code sets, but are only
characters, currency indicators and other graphical used to switch to Code Sets A or B.
symbols. It includes 11 characters (values 149 to
159) which do not have a graphical representation in 4.4.4.2 Shift Characters
ISO 8859. In addition, it has 9 symbology control A Shift Character is used to switch from one Code
characters. Set to another Code Set for the single character
following the Shift Character. Subsequent character
4.4.4 Symbology Control Characters encodation shall revert to the Code Set defined prior
MaxiCode has 15 symbology control characters to the Shift Character.
which are special non-data characters with no ASCII Shift Characters are in all code sets. When in
character equivalents. These characters are used to Code Sets A or B it is possible to shift to all others.
instruct the decoder to perform certain functions or
to send specific data to the host computer as
described in Section 4.4.4.1 to 4.4.4.8. Table 1
defines the complete list of assigned symbology
Function Name Short Name Codeword Value in Refer to Section
and Purpose Code Set
AB C D E
Latch: to switch to and remain in a Latch A 63 58 58 58 4.4.4.1
new code set Latch B 63 63 63 63
Shift: to switch to a new code set Shift A 59 4.4.4.2
for one character and to return Shift B 59
Shift C 60 60 60 60
Shift D 61 61 61 61
Shift E 62 62 62 62
Lock-In: to extend a shift to behave Lock-In C 60 4.4.4.3
as a latch and remain in a new CodeLock-In D 61
Set Lock-In E 62
Double Shift: to shift for two characters 2 Shift A 56 4.4.4.4
Triple Shift: to shift for three characters 3 Shift A 57 4.4.4.5
Numeric Shift: to compact numeric NS 31 31 31 31 31 4.4.4.6
strings efficiently
Extended Channel Interpretation: to ECI 27 27 27 27 27 4.4.4.7
switch to a new Extended Channel
Interpretation
Pad: to fill out a symbol and to signalPad 33 33 284.4.4.8
structured append 55 29
Table 1: MaxiCode Symbology Control Characters
8 © ISO/IEC 2000 – All rights reserved

4.4.4.3 Lock-In Character
4.5 User Considerations for Encoding Data in
A Lock-In Character, following a Shift Character for
a MaxiCode Symbol
the same Code Set has the effect of behaving as a
A MaxiCode symbol has a fixed number of modules
Latch Character. The Code Set remains in effect
and codewords. The 144 codewords can be used to
until a Latch Character is invoked.
encode the mode, data, symbology control functions,
and error correction. It is also possible to use
4.4.4.4 Double Shift Characters
structured append to c
...


INTERNATIONAL ISO/IEC
STANDARD 16023
First edition
2000-05-01
Information technology — International
symbology specification — MaxiCode
Technologies de l'information — Spécification internationale des
symboles — MaxiCode
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 734 10 79
E-mail copyright@iso.ch
Web www.iso.ch
Printed in Switzerland
ii © ISO/IEC 2000 – All rights reserved

Contents
Introduction . 1
1 Scope . 1
2 Normative References . 1
3 Definitions and Mathematical Symbols . 1
3.1 Definitions . 1
3.1.1 Codeword . 1
3.1.2 Extended Channel Interpretation (ECI) . 1
3.1.3 Mode Indicator . 1
3.1.4 Module. 2
3.2 Mathematical Symbols and Operations . 2
4 Requirements . 2
4.1 Symbology Characteristics . 2
4.1.1 Basic Characteristics . 2
4.1.2 Summary of Additional Features . 3
4.2 Symbol Description . 4
4.2.1 Symbol Structure . 4
4.2.2 Symbol Character and Module Sequence . 5
4.3 General Encodation Procedures . 6
4.4 Character Assignments . 7
4.4.1 Codeword Representation . 7
4.4.2 Default Character Interpretation . 7
4.4.3 Code Sets . 7
4.4.4 Symbology Control Characters . 8
4.5 User Considerations for Encoding Data in a MaxiCode Symbol . 9
4.5.1 User Selection of Error Correction Level . 9
4.5.2 User Selection of Mode . 9
4.5.3 User Selection of Extended Channel Interpretation . 10
4.5.4 User Selection of Structured Append .10
4.5.5 User Assessment of Encodation Capacity . 10
4.6 Extended Channel Interpretation . 10
4.6.1 ECI and Modes 2 and 3 . 10
4.6.2 Encodation Modes and ECIs . 10
4.6.3 Encoding ECIs in MaxiCode . 11
4.6.4 ECIs and Structured Append . 11
4.6.5 Post-Decode Protocol . 11
4.7 Message Structure . 11
4.7.1 Primary Message . 11
4.7.2 Secondary Message . 11
4.7.3 Structuring the Data . 12
4.8 Modes . 12
4.8.1 Mode 0: Obsolete . 12
4.8.2 Mode 1: Obsolete . 12
4.8.3 Modes 2 and 3: Structured Carrier Message . 12
4.8.4 Mode 4: Standard Symbol . 13
4.8.5 Mode 5: Full EEC. 13
4.8.6 Mode 6: Reader Programming . 13
4.8.7 Mode Indicators . 13
© ISO/IEC 2000 – All rights reserved iii

4.9 Structured Append . 13
4.9.1 Basic Principles . 13
4.9.2 Structured Append and Modes 2 and 3 . 13
4.9.3 Structured Append in Modes 4 to 6 . 14
4.9.4 Buffered and Unbuffered Operation .14
4.10 Error Detection and Correction . 14
4.10.1 Enhanced Error Correction (EEC) in the Primary Message . 14
4.10.2 Error Correction in the Secondary Message . 14
4.10.3 Generating the Error Correction Codewords . 14
4.10.4 Error Correction Capacity . 15
4.11 Dimensions . 15
4.11.1 Symbol Dimensions . 15
4.11.2 Hexagonal Module Dimensions . 15
4.11.3 Dark Hexagon Dimensions and Tolerances . 16
4.11.4 Finder Pattern Dimensions . 16
4.11.5 Quiet Zones . 17
4.11.6 Overall Symbol Size . 17
4.11.7 Practical Printing Guidance . 17
4.12 User Guidelines . 17
4.12.1 Human Readable Interpretation . 17
4.12.2 Autodiscrimination Capability . 17
4.13 Symbol Quality . 17
4.13.1 Obtaining the Test Image . 17
4.13.2 Symbol Quality Parameters . 17
4.13.3 Overall Symbol Grade . 19
4.13.4 Process Control Measurements . 19
4.14 Reference Decode Algorithm . 19
4.15 Transmitted Data . 22
4.15.1 Basic Interpretation . 22
4.15.2 Protocol for Extended Channel Interpretation . 22
4.15.3 Symbology Identifier . 22
4.15.4 Transmitted Data Example . 23
Annexe A (Normative) . 24
MaxiCode Basic Character Encodation: Default Character Set . 24
Annexe B (Normative) . 26
Mode 2 and Mode 3: Structured Carrier Message . 26
B.1 The Structure of the Primary Message . 26
B.2 Modes 2 and 3 Messages Beginning with "[)>RS01GS" . 27
B.2.1 Encoding . 27
B.2.2 Decoding . 27
B.3 Modes 2 and 3 Messages Not Beginning with "[)>RS01GS" . 28
B.3.1 Encoding . 28
B.3.2 Decoding . 28
B.4 Modes 2 and 3 and Structured Append . 28
B.4.1 Encoding Considerations . 28
B.4.2 Decoding Considerations . 28
Annexe C (Normative) . 29
iv © ISO/IEC 2000 – All rights reserved

2D Matrix Bar Code Print Quality - Guideline . 29
C.1 Obtaining the Test Image . 29
C.2 Assessing Symbol Parameters . 29
C.2.1 Decode . 29
C.2.2 Symbol Contrast . 30
C.2.3 “Print” Growth . 30
C.2.4 Grid Nonuniformity . 30
C.2.5 Unused Error Correction . 31
C.3 Overall Symbol Grade . 31
Annexe D (Normative) . 31
Error Correction Algorithm . 31
Annexe E (Normative) . 32
Symbology Identifiers . 32
Annexe F (Informative) . 32
Use of Numeric Shift, Shift , Latch, and Lock-In Characters . 32
F.1 Numeric Shift . 32
F.2 Switching from Code Set A to Code Set B . 33
F.3 Switching from Code Set B to Code Set A . 33
F.4 Using Lock-In to Latch to Code Sets C, D or E . 33
F.5 Illustrative Example . 33
Annexe G (Informative) . 34
User Assessment of Encodation Capacity . 34
Annexe H (Informative) . 35
A MaxiCode Encoding Example . 35
Annexe J (Informative) . 38
Practical Printing Considerations . 38
J.1 12 dots per Millimeter . 38
J.2 8 dots per Millimeter . 39
J.3 Generic Rules for Other Pixel Sizes . 40
J.4 Determining the Hexagon Font for a Given Dot Pitch . 40
Annexe K (Informative) . 41
Autodiscrimination Compatibility . 41
Annexe L (Informative) . 42
Useful Process Control Techniques . 42
L.1 Symbol Contrast . 42
L.2 Symbol Size . 42
L.2.1 Checking Print Growth . 42
L.2.2 Checking Finder Position and Orientation Patterns . 42
L.2.3 Checking Overall Symbol Size . 42
L.3 Symbol Distortion . 43
L.4 Print Growth and Defects . 43
© ISO/IEC 2000 – All rights reserved v

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 16023 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information
technology, Subcommittee SC 31, Automatic identification and data capture techniques.
International Standard ISO/IEC 16023 was prepared by AIM International (as ANSI/AIM BC10) and was adopted,
under a special “fast-track procedure”, by Joint Technical Committee ISO/IEC JTC 1, Information technology,in
parallel with its approval by national bodies of ISO and IEC.
Annexes A to E form a normative part of this International Standard. Annexes F to L are for information only.
vi © ISO/IEC 2000 – All rights reserved

INTERNATIONAL STANDARD ISO/IEC 16023:2000(E)
Information technology — International symbology
specification — MaxiCode
ISO/IEC
Introduction
8859-1 Information Processing - 8-bit
MaxiCode is a fixed-size matrix symbology which is
Single-byte Coded Graphic
made up of offset rows of hexagonal modules
Character Sets - Part 1 (Latin
arranged around a unique finder pattern.
Alphabet Number 1)
Manufacturers of bar code equipment and users
Guideline on Mode 0 for MaxiCode - AIM USA
of the technology require publicly available standard
ECI Assignments Document - AIM International.
symbology specifications to which they can refer
when developing equipment and application
standards. The publication of Symbology
3 Definitions and Mathematical
Specifications is designed to achieve this.
Symbols
1 Scope
3.1 Definitions
This specification defines the requirements for the
For the purposes of this Standard the following
symbology known as MaxiCode. It specifies the
definitions in EN1556 (Terminology) shall apply:
MaxiCode symbology characteristics, data character
encodation, symbol formats, dimensions and print
algorithm, application standard, ASCII,
quality requirements, error correction rules,
autodiscrimination, binary, bit, CCD, code page,
decoding algorithm, and user-selectable application
code set, data character, data codeword, data
parameters.
region, data separator character, decode
algorithm, decoder, error correction, finder
2 Normative References pattern, human readable character, latch
character, leading zeros, matrix symbology,
This specification incorporates provisions from other
modulo, numeric, omnidirectional, orientation
publications. These normative references are cited
pattern, overhead, pad character, pixel, quiet
at the appropriate places in the text and the
zone, reference decode algorithm, Reed-
publications are listed below. The latest edition of
Solomon error correction, scanner, shift
the publication referred to applies.
characters, structured append, symbol character,
symbology, symbology identifier, X-dimension
EN796 Bar Coding : Symbology Identifiers
The following definitions also apply to this
EN1556 Bar Coding : Terminology
specification. Although some of the terms below are
defined in EN1556, the definitions which follow
ANSI
below are more appropriate for this specification.
X3.182 Bar Code Print Quality - Guideline
(Same as EN1635 - Bar Coding :
3.1.1 Codeword
Test Specifications for Bar Code
A symbol character value. An intermediate level of
Symbols)
coding between source data and the graphical
encodation in the symbol.
ANSI
X3.4 Coded Character Sets - 7-bit
3.1.2 Extended Channel Interpretation (ECI)
American National Standard Code
A protocol used by some symbologies that allows
for Information Interchange (7-bit
the output data stream to have interpretations other
ASCII)
than that of the default character set.
(equivalent to the US national
version of ISO 646)
3.1.3 Mode Indicator
A group of modules, in MaxiCode, used to define
ISO 3166 Codes for the Representation on
the symbol structure, for example to specify the level
Names of Countries
of error correction employed in the symbol.
© ISO/IEC 2000 – All rights reserved 1

3.1.4 Module ii. values 128-255 in accordance with ISO
A single cell in a matrix symbology used to encode 8859-1: Latin Alphabet No. 1
one bit of data. In MaxiCode the module is a regular
hexagonal shape. 2. Numeric compaction allows 9 digits to be
compacted in six codewords.
3. Various symbology control characters, for
3.2 Mathematical Symbols and Operations
code switching and other control purposes,
For the purposes of this specification the
are included.
mathematical symbols which follow shall apply:
b. Codeword set:
c codeword
H vertical distance from the center of a module
1. The codeword set of 64 (2 ) values is used
in the top row to the center of a module in the
as an intermediate encodation layer
bottom row
between the data characters and symbol
L distance from the center of the left-most
characters. The codewords form the basis
module to the center of the right-most
for error correction calculations.
module in the top row
m message character
2. The codewords have the values 0-63;
n total number of data codewords
000000 to 111111 in binary notation.
s symbol character
Within each symbol character the most
V vertical height of a module
significant bit is the lowest numbered
W center to center distance between adjacent
module as shown in Figures 1 and 5.
modules
X horizontal width of a module
c. Representation of codewords in a MaxiCode
Y vertical distance from the center line of
symbol:
modules in one row to the center line of
modules in an adjacent row
1. Each codeword is represented by 6 modules
which are hexagonal in shape.
For the purposes of this specification the
mathematical operations which follow shall apply:
2. Information is represented in each module
as a binary bit.  A dark module is a one and
div is the integer division operator
a light module is a zero.
mod is the integer remainder after division
3. Generally the six modules are arranged in
three rows of two modules, each ordered
4 Requirements
from upper right to lower left. Figure 1
4.1 Symbology Characteristics
identifies the modules of a typical symbol
4.1.1 Basic Characteristics
character.
MaxiCode is a matrix symbology with the following
basic characteristics:
4. Because of the structure of the MaxiCode
symbol, symbol characters 1 - 9 and 137 -
a. Encodable character set:
144 have a different arrangement (See
Figure 4).
1. The default character set allows 256
international characters to be encoded:
i. values 0-127, in accordance with ANSI
X3.4, i.e. all 128 ASCII characters
2 © ISO/IEC 2000 – All rights reserved

f. Error correction:
50 or 66 codewords per MaxiCode symbol.
2 1 2
g. Code type: matrix
MSB
MSB
h. Orientation independence: Yes
43 4
6 6 4.1.2 Summary of Additional Features
LSB LSB
The following summary is of additional features
which are inherent or optional in MaxiCode:
LSB = Least Significant Bit a. Finder Pattern: (Inherent) MaxiCode symbols
MSB = Most Significant Bit
have a central unique finder pattern, of three
concentric dark rings, which is used to locate
Figure 1: Typical Symbol Character of a
the MaxiCode symbol within a field of view
MaxiCode Symbol
(see Section 4.2.1.1). The finder pattern and
fixed symbol size makes the MaxiCode
symbology suitable for high speed scanning
d. Symbol size:
applications.
1. Each MaxiCode symbol is of a fixed size,
b. Error Correction: (Inherent) MaxiCode
having 884 hexagonal modules arranged in
symbols have error correction codewords,
33 rows around a central finder pattern.
based on Reed-Solomon error correction
Each row consists of a maximum of 30
algorithms, which can be used not only to
modules.
detect errors but to correct erroneously
decoded or missing codewords (see Section
2. Each symbol, including the quiet zone, is of
4.5.1). A user may select one of two error
a fixed physical size, nominally 28.14mm
correction levels.
wide x 26.91mm high.
c. Modes: (Inherent) This mechanism allows
3. 864 modules (144 symbol characters) are
various structures of the symbol. Seven modes
available for data encodation and error
are specified (including 2 obsolete modes, see
correction. Two modules are unused.
Section 4.8).
4. Non-data overhead:
d. Extended Channel Interpretations: (Optional)
This mechanism enables characters from other
i. 18 modules for orientation per symbol
character sets (e.g. Arabic, Cyrillic, Greek,
Hebrew) and other data interpretations or
ii. equivalent of 90 modules for the finder
industry-specific requirements to be
pattern
represented.
e. Maximum data capacity:
e. Structured Append: (Optional) This allows
files of data to be represented in up to 8
1. Alphanumeric characters: 93
MaxiCode symbols. The original data can be
2. Numeric characters: 138
correctly reconstructed regardless of the order
in which the symbols are scanned (see Section
4.9).
© ISO/IEC 2000 – All rights reserved 3

4.2 Symbol Description
4.2.1 Symbol Structure
Each MaxiCode symbol consists of a central finder
pattern surrounded by a square array of offset rows
of hexagonal modules. The 33 rows in the symbol
alternate between 30 and 29 modules in width. The
symbol shall be surrounded on all four sides by a
quiet zone border. Figure 2 illustrates a MaxiCode
symbol.
4.2.1.1 Finder Pattern
The finder pattern is made up of 3 dark concentric
rings and 3 included light areas, centered on the
“THIS IS A 93 CHARACTER CODE SET A
virtual module specified in Section 4.11.4. Figure 3
MESSAGE THAT FILLS A MODE 4,
shows the finder pattern relative to the adjacent
UNAPPENDED, MAXICODE SYMBOL.”
module pattern.
4.2.1.2 Orientation Patterns
Figure 2: MaxiCode Symbol (Actual Size)
The orientation information is provided by 6 patterns
of 3 modules. The precise location of the
Orientation Patterns are given in Figures 3 - 5.
B B W
B
W W
B = black or dark modules of the
orientation pattern
B
W = white or light modules of the
BW
W B
orientation pattern
B
= virtual hexagon
BW B
B W B
Figure 3: MaxiCode Symbol Construction - Finder Pattern and Orientation Modules
4 © ISO/IEC 2000 – All rights reserved

c. Modules 1 to 120, i.e. 20 symbol characters, specify the rules and procedures.
shall contain information from the Primary Message,
including data, error correction and mode 1. For transportation applications, determine if a
information. Modules 121 to 864, i.e. 124 symbol structured carrier message is appropriate; if so,
characters, shall contain information from the special encoding rules apply to the primary
Secondary Message. message.
The two rightmost modules in the top row are not
utilized (See Figure 5). They shall be encoded as 2. Data from a 256 character set may be encoded
dark modules. in MaxiCode. This data needs to be presented
in a data stream reading from left to right.
4.3 General Encodation Procedures
3. Each character of data is translated into a
The following steps are required to convert data into
codeword (0-63). Additional codewords are
the encoded form represented in a MaxiCode
symbol. The following sections of this specification
122 121 128 127 134 140 139 146 145 152 151 158 157 164 170 169 176 175 182 181 188 187 194 200 199
133 163 193
124 123 130 129 136 135 142 141 148 147 154 153 160 159 166 165 172 171 178 177 184 183 190 189 196 195 202 201 817
126 125 132 131 138 137 144 143 150 149 156 155 162 161 168 167 174 173 180 179‘186 185 192 191 198 197 204 203 819 818
284 283 278 277 272 271 266 265 260 259 254 253 248 247 242 241 236 235 230 229 224 223 218 217 212 211 206 205 820
286 285 280 279 274 273 268 267 262 261 256 255 250 249 243 238 237 232 231 226 225 220 219 214 213 208 207 822 821
264 263 258 257 252 251 246 245 240 239 234 233 228 227 222 221 216 215 210 209 823
288287 282 281 276 275 270 269
290 289 296 295 302 301 308 307 314 313 320 319 326 325 332 331 338 337 344 343 350 349 356 355 362 361 368 367 825 824
292 291 298 297 304 303 310 309 316 315 322 321 328 327 334 333 340 339 346 345 352 351 358 357 364 363 370 369 826
294 293 300 299 306 305 312 311 318317 324 323 330 329 336 335 342 341 348 347 354 353 360 359 366 365 372 371 828 827
14 13 38 37 3 45 44 110 109 386 385 380 379 374 373 829
410 409 404 403 398 397 392 391 80 79 BB W
412 411 406 405 400 399 394 393 82 81 41 16 15 40 39 4 46 112 111 388 387 382 381 376 375 831 830
B WW
6 5 48 47 114 113 390 389 384 383 378 377 832
414 413 408 407 402 401 396 395 84 83 42
416 415 422 421 428 427 104 103 56 55 17 21 20 86 85 434 433 440 439 446 445 834 833
418 417 424423 430 429 106 105 58 57 23 22 88 87 436 435 442 441 448 447 835
420 419 426 425 432 431 108 107 60 59 24 90 89 438 437 444 443 450 449 837 836
482 481 476 475 470 469 49 31
1 54 53 464 463 458 457 452 451 838
B
484 483 478 477 472 471 50 466 465 460 459 454 453 840 839
B B
W W
486 485 480 479 474 473 52 51 32
2 43 468 467 462 461 456 455 841
B
488 487 494 493 500 499 98 97 62 61 27 92 91 506 505 512 511 518 517 843 842
490 489 496 495 502 501 100 99 64 63 29 28 94 93 508 507 514 513 520 519 844
492491 498 497 504 503 102 66 65 18 19 30 96 95 510 509 516 515 522 521 846 845
560 559 554 553 548 547 542 541 74 73 33
11 68 67 116 115 536 535 530 529 524 523 847
562 561 556 555 550 549 544 543 76 75 8 7 36 35 12 70 69 118 117 538 537 532 531 526 525 849 848
B W B
564 563 558 557 552 551 546 545 78 77 34 9 26 25 72 71 120 119 540 539 534 533 528 527 850
B B
W
566 565 572 571 578 577 584 583 590 589 596 595 602 601 608 607 614 613 620 619 626 625 632 631 638 637 644 643 852 851
568 567 574 573 580 579 586 585 592
591 598 597 604 603 610 609 616 615 622 621 628 627 634 633 640 639 646 645 853
570 569 576 575 582 581 588 587 594 593
600 599 606 605 612 611 618 617 624 623 630 629 636 635 642 641 648 647 855 854
728 727 722 721 716 715 710 709 704 703 698 697 692 691 686 685 680 679 674 673 668 667 662 661 656 655 650 649 856
729 705
730 724 723 718 717 712 711 706 700699 694 693 688 6875682 681 676 675 670 669 664 663 658 657 652 651 858 857
732 731 726725 720 719 714 713 708 707 702 701 696 695 690 689 684 683 678 677 672671 666 665 660 659 654 653 859
734 733 740 739 746 745 752 751 758 757 764 763 770 769 776 775 782 781 788 787 794 793 800 799 806 805 812 811 861 860
736 735 742 741 748 747 754 753 760 759 766 765 772 771 778 777 784 783 790 789 796 795 802 801 808 807 814 813 862
738 737 744 743 750 749 756 755 762 761 768 767 774 773 780 779 786 785 792 791 798 797 804 803 810 809 816 815 864 863
Figure 5: MaxiCode Module Sequence
6 © ISO/IEC 2000 – All rights reserved

inserted in the process to switch between MaxiCode range from 0 to 63. The binary
subsets of character sets. equivalent of the codeword (i.e. 000000 to 111111)
shall be directly represented in six hexagonal
4. The user or application selects one of two modules in the MaxiCode symbol.
error correction levels. The sequence of modules in a codeword is
normally represented in a MaxiCode symbol
5. Pad characters are added as needed to fill out character as illustrated in Figure 1, and the entire
the capacity of the symbol. data shall follow the module pattern sequence as
defined in Figure 5.
6. The codeword stream is subdivided into two
messages: Primary and Secondary. 4.4.2 Default Character Interpretation
The default character interpretation for character
7. The error correction codewords are generated values 0 to 127 shall conform to ANSI X3.4. The
for the Primary Message and for the default character interpretation for character values
Secondary Message. The result of this process 128 to 255 shall conform to ISO 8859-1: Latin
expands the codeword stream by the number Alphabet No. 1. The graphical representation of
of error correction codewords, either 50 or 66. data characters shown throughout this document
complies with the default interpretation. This
8. The codeword stream is converted into two bit interpretation can be changed using Extended
streams for the Primary and Secondary Channel Interpretation (ECI) escape sequences, see
Messages. Section 4.6. The default interpretation corresponds
to ECI 000003.
9. The primary and secondary bit streams are
mapped bit by bit to the sequence of hexagonal 4.4.3 Code Sets
modules in the MaxiCode symbol (See Figure 4.4.3.1 Code Set A
5). Code Set A is the default code set at the start of
every MaxiCode symbol.
Code Set A contains all the standard uppercase
alphabetic characters, the numerals 0 to 9, 15
4.4 Character Assignments
common punctuation symbols, the space character,
MaxiCode has a 64 codeword set which is used to
and the control characters [CR], [FS], [GS] and [RS]
encode up to 256 different character values, to
used for data syntax. In addition, it contains 8
provide numeric compaction and to encode
symbology control characters.
particular structured messages (see Section 4.7.3, for
a description of Modes 2 and 3). The rules for
4.4.3.2 Code Set B
encoding data are defined in the following sections.
Code Set B contains all the lowercase alphabetic
In order to encode all 256 characters, five Code
characters and additional punctuation characters. In
Sets (A to E) are defined. Annexe A shows the
addition, it includes the control characters [FS],
encodable character set and the arrangement of
[GS], [RS], and [DEL] used for data syntax and 12
characters in the five Code Sets. Characters are
symbology control characters.
grouped into Code Sets according to likely use.
Code Set A contains the characters assessed to be
4.4.3.3 Code Set C
most commonly used; in many applications it may
Code Set C contains multilingual uppercase
not be necessary to switch from this basic character
alphabetic characters and additional punctuation and
set. To select other data characters, it is necessary to
other graphic characters. It also includes the control
use Latch and Shift characters (see Section 4.4.4.1 to
characters [FS], [GS] and [RS] used for data syntax
4.4.4.5).
and 10 of the characters (values 128 to 137) not
assigned a graphic representation in ISO 8859. In
4.4.1 Codeword Representation
addition, it includes 7 symbology control characters.
The codewords, or symbol character values, in
© ISO/IEC 2000 – All rights reserved 7

4.4.3.4 Code Set D control characters. Annexe F provides guidance on
Code Set D contains multilingual lowercase optimum use of Latch, Shift, and Lock-In characters.
alphabetic characters, and additional punctuation. It
also includes the control characters [FS], [GS] and 4.4.4.1 Latch Characters
[RS] used for data syntax and 11 characters (values A Latch Character may be used to switch from one
138 to 148) not assigned a graphical interpretation in Code Set to another Code Set. All codewords which
ISO 8859. In addition, it includes 7 symbology follow a Latch Character shall be interpreted
control characters. according to the new Code Set. The Code Set
remains in effect until another Latch Character or
4.4.3.5 Code Set E shift is encountered.
Code Set E contains the 31 ASCII control Latch Characters are in all code sets, but are only
characters, currency indicators and other graphical used to switch to Code Sets A or B.
symbols. It includes 11 characters (values 149 to
159) which do not have a graphical representation in 4.4.4.2 Shift Characters
ISO 8859. In addition, it has 9 symbology control A Shift Character is used to switch from one Code
characters. Set to another Code Set for the single character
following the Shift Character. Subsequent character
4.4.4 Symbology Control Characters encodation shall revert to the Code Set defined prior
MaxiCode has 15 symbology control characters to the Shift Character.
which are special non-data characters with no ASCII Shift Characters are in all code sets. When in
character equivalents. These characters are used to Code Sets A or B it is possible to shift to all others.
instruct the decoder to perform certain functions or
to send specific data to the host computer as
described in Section 4.4.4.1 to 4.4.4.8. Table 1
defines the complete list of assigned symbology
Function Name Short Name Codeword Value in Refer to Section
and Purpose Code Set
AB C D E
Latch: to switch to and remain in a Latch A 63 58 58 58 4.4.4.1
new code set Latch B 63 63 63 63
Shift: to switch to a new code set Shift A 59 4.4.4.2
for one character and to return Shift B 59
Shift C 60 60 60 60
Shift D 61 61 61 61
Shift E 62 62 62 62
Lock-In: to extend a shift to behave Lock-In C 60 4.4.4.3
as a latch and remain in a new CodeLock-In D 61
Set Lock-In E 62
Double Shift: to shift for two characters 2 Shift A 56 4.4.4.4
Triple Shift: to shift for three characters 3 Shift A 57 4.4.4.5
Numeric Shift: to compact numeric NS 31 31 31 31 31 4.4.4.6
strings efficiently
Extended Channel Interpretation: to ECI 27 27 27 27 27 4.4.4.7
switch to a new Extended Channel
Interpretation
Pad: to fill out a symbol and to signalPad 33 33 284.4.4.8
structured append 55 29
Table 1: MaxiCode Symbology Control Characters
8 © ISO/IEC 2000 – All rights reserved

4.4.4.3 Lock-In Character
4.5 User Considerations for Encoding Data in
A Lock-In Character, following a Shift Character for
a MaxiCode Symbol
the same Code Set has the effect of behaving as a
A MaxiCode symbol has a fixed number of modules
Latch Character. The Code Set remains in effect
and codewords. The 144 codewords can be used to
until a Latch Character is invoked.
encode the mode, data, symbology control functions,
and error correction. It is also possible to use
4.4.4.4 Double Shift Characters
structured append to c
...

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...