ISO/IEC 24724:2011
(Main)Information technology — Automatic identification and data capture techniques — GS1 DataBar bar code symbology specification
Information technology — Automatic identification and data capture techniques — GS1 DataBar bar code symbology specification
The GS1 DataBar family contains three types of linear symbologies to be used with the GS1 system. The first type has four variations (GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked and GS1 DataBar Stacked Omnidirectional). The stacked variations are two-row symbols. The second type comprises only one variation, namely GS1 DataBar Limited. The third type has two variations, a single row variation (GS1 DataBar Expanded) and a multi-row stacked variation (GS1 DataBar Expanded Stacked). The use of GS1 DataBar is intended to comply with the GS1 application guidelines as defined in the GS1 General Specifications. GS1 DataBar Omnidirectional and GS1 DataBar Stacked Omnidirectional encode a 14-digit GS1 item identification (often referred to as a Global Trade Item Number, or GTIN) in a linear symbol that can be scanned omnidirectionally by suitably programmed point-of-sale scanners. GS1 DataBar Truncated and GS1 DataBar Stacked encode a 14-digit GS1 item identification in a linear symbol and are not suitable for omnidirectional scanning. GS1 DataBar Limited encodes a 14-digit GS1 item identification with a leading digit of zero or one in a linear symbol for use on small items that will not be scanned at the point-of-sale. GS1 DataBar Expanded encodes GS1 item identification plus supplementary application identifier element strings such as weight and "best before" date in a linear symbol that can be scanned omnidirectionally by suitably programmed point-of-sale scanners. Any member of the GS1 DataBar family can be printed as a stand-alone linear symbol or as part of a GS1 Composite symbol with an accompanying two-dimensional (2D) component printed above the GS1 DataBar linear component. GS1 DataBar symbols are intended for encoding identification numbers and data supplementary to the identification. The administration of the numbering system by GS1 ensures that identification codes assigned to particular items are unique worldwide and that they and the associated supplementary data are defined in a consistent way. The major benefit for the users of the GS1 system is the availability of uniquely defined identification codes and supplementary data formats for use in their trading transactions. ISO/IEC 24724:2011 defines the requirements for the GS1 DataBar symbology family. It specifies the characteristics of the GS1 DataBar symbology family, data character encodation, symbol formats, dimensions, print quality requirements, error detection, and decoding algorithms. For GS1 Composite symbols, ISO/IEC 24723 defines the 2D component. GS1 DataBar was formerly known as "Reduced Space Symbology (RSS)" and is renamed to align with the name of the GS1 organization.
Technologies de l'information — Techniques automatiques d'identification et de capture des données — Spécifications de la symbologie des codes à barres GS1 DataBar
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 24724
Second edition
2011-04-01
Information technology — Automatic
identification and data capture
techniques — GS1 DataBar bar code
symbology specification
Technologies de l'information — Techniques automatiques
d'identification et de capture des données — Spécifications de la
symbologie des codes à barres GS1 DataBar
Reference number
©
ISO/IEC 2011
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 2011
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.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2011 – All rights reserved
Contents Page
Foreword .v
Introduction.vi
1 Scope.1
2 Normative references.1
3 Terms, definitions, abbreviated terms and mathematical operators .2
3.1 Terms and definitions .2
3.2 Abbreviated terms.3
3.3 Mathematical operators and notational conventions .3
4 Symbol description .3
4.1 Types of GS1 DataBar symbol .3
4.2 Symbology characteristics.4
4.3 Summary of additional features.4
4.4 Symbol structure.5
5 Symbol requirements for GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1
DataBar Stacked and GS1 DataBar Stacked Omnidirectional.5
5.1 Basic characteristics of GS1 DataBar Omnidirectional .5
5.2 Symbol structure of GS1 DataBar Omnidirectional.6
5.2.1 Symbol character structure.7
5.2.2 Symbol character value .7
5.2.3 Symbol value.8
5.2.4 Finder patterns .10
5.2.5 Reference decode algorithm .11
5.3 Variations for specific applications.14
5.3.1 GS1 DataBar Truncated .14
5.3.2 Two-row variations.14
6 Symbol requirements for GS1 DataBar Limited.15
6.1 Basic characteristics.15
6.2 Symbol structure.16
6.2.1 Symbol character structure.17
6.2.2 Symbol character value .17
6.2.3 Symbol value.18
6.2.4 Check character.19
6.2.5 Finder pattern .19
6.2.6 Reference decode algorithm .19
7 Symbol requirements for GS1 DataBar Expanded and GS1 DataBar Expanded Stacked.21
7.1 Basic characteristics of GS1 DataBar Expanded.21
7.2 Symbol structure.22
7.2.1 Overall symbol structure .22
7.2.2 Symbol character structure.23
7.2.3 Symbol character value .23
7.2.4 Symbol binary value.24
7.2.5 Data encodation.25
7.2.6 Check character.34
7.2.7 Finder pattern .35
7.2.8 GS1 DataBar Expanded Stacked .37
7.2.9 Reference decode algorithm .38
8 Symbol quality.40
8.1 Linear symbology parameters .40
© ISO/IEC 2011 – All rights reserved iii
8.2 Additional pass/fail criteria. 40
8.3 Stacked symbols. 40
9 Transmitted data. 41
10 Human readable interpretation. 41
11 Minimum and Maximum width of a module (X) . 41
12 Application-defined parameters. 41
Annex A (normative) Check digit calculation. 42
Annex B (normative) C-language element width encoder and decoder. 43
Annex C (normative) GS1 DataBar Limited check character element widths . 47
Annex D (normative) Splitting long GS1 DataBar Expanded or GS1 DataBar Expanded Stacked
symbols for GS1 emulation mode. 50
Annex E (informative) Symbol elements. 51
Annex F (informative) Encoding examples. 55
F.1 GS1 DataBar Omnidirectional and GS1 DataBar Truncated . 55
F.2 GS1 DataBar Limited . 57
F.3 GS1 DataBar Expanded. 58
Annex G (informative) C-language element width decoder . 60
Annex H (informative) Minimizing misreads. 63
H.1 General. 63
H.2 Voting. 64
H.3 Decoding by row. 64
H.4 Consistency checks. 64
H.5 GS1 DataBar Limited Decoding Considerations . 65
H.5.1 Original reference decode algorithm concerning guard bars. 65
H.5.2 Potential to misread UPC-A symbols . 65
H.5.3 Methods to prevent misreads of UPC-A symbols . 66
Annex I (informative) Printing considerations . 69
I.1 Guard pattern considerations . 69
I.2 Pixel-based printing . 69
I.3 Guidance to users of pixel-based printing software. 70
I.4 Process control considerations. 70
I.5 Separation of multiple symbols . 71
I.6 Printing the separator pattern . 71
Annex J (informative) GS1 DataBar Symbology — Summary of Characteristics . 72
Bibliography. 73
iv © ISO/IEC 2011 – 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 (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. In the field of information
technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of the joint technical committee is to prepare International Standards. 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 document may be the subject of patent
rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
ISO/IEC 24724 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 31, Automatic identification and data capture techniques.
This second edition cancels and replaces the first edition (ISO/IEC 24724:2006), which has been technically
revised.
© ISO/IEC 2011 – All rights reserved v
Introduction
GS1 DataBar was formerly known as “Reduced Space Symbology (RSS)” and is renamed to align with the
name of the GS1 organization.
The GS1 DataBar family contains three types of linear symbologies to be used with the GS1 system. The first
type has four variations (GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked and
GS1 DataBar Stacked Omnidirectional). The stacked variations are two-row symbols. The second type
comprises only one variation, namely GS1 DataBar Limited. The third type has two variations: a single row
variation (GS1 DataBar Expanded) and a multi-row stacked variation (GS1 DataBar Expanded Stacked). The
use of GS1 DataBar is intended to comply with the GS1 application guidelines as defined in the GS1 General
Specifications.
GS1 DataBar Omnidirectional and GS1 DataBar Stacked Omnidirectional encode a 14-digit GS1 item
identification (often referred to as a Global Trade Item Number, or GTIN) in a linear symbol that can be
scanned omnidirectionally by suitably programmed point-of-sale scanners. GS1 DataBar Truncated and GS1
DataBar Stacked encode a 14-digit GS1 item identification in a linear symbol and are not suitable for
omnidirectional scanning. GS1 DataBar Limited encodes a 14-digit GS1 item identification with a leading digit
of zero or one in a linear symbol for use on small items that will not be scanned at the point-of-sale. GS1
DataBar Expanded encodes GS1 item identification plus supplementary application identifier element strings
such as weight and “best before” date in a linear symbol that can be scanned omnidirectionally by suitably
programmed point-of-sale scanners.
Any member of the GS1 DataBar family can be printed as a stand-alone linear symbol or as part of a GS1
Composite symbol with an accompanying two-dimensional component printed above the GS1 DataBar linear
component.
GS1 DataBar symbols are intended for encoding identification numbers and data supplementary to the
identification. The administration of the numbering system by GS1 ensures that identification codes assigned
to particular items are unique worldwide and that they and the associated supplementary data are defined in a
consistent way. The major benefit for the users of the GS1 system is the availability of uniquely defined
identification codes and supplementary data formats for use in their trading transactions.
vi © ISO/IEC 2011 – All rights reserved
INTERNATIONAL STANDARD ISO/IEC 24724:2011(E)
Information technology — Automatic identification and data
capture techniques — GS1 DataBar bar code symbology
specification
1 Scope
This International Standard defines the requirements for the GS1 DataBar symbology family. It specifies the
characteristics of the GS1 DataBar symbology family, data character encodation, symbol formats, dimensions,
print quality requirements, error detection, and decoding algorithms.
For GS1 Composite symbols, ISO/IEC 24723 defines the two-dimensional component.
2 Normative references
The following referenced documents are indispensable for the application of this document. For dated
references, only the edition cited applies. For undated references, the latest edition of the referenced
document (including any amendments) applies.
ISO/IEC 646, Information technology — ISO 7-bit coded character set for information interchange
ISO 4217, Codes for the representation of currencies and funds
ISO/IEC 15416, Information technology — Automatic identification and data capture techniques — Bar code
print quality test specification — Linear symbols
ISO/IEC 15417, Information technology — Automatic identification and data capture techniques — Code 128
bar code symbology specification
ISO/IEC 15420, Information technology — Automatic identification and data capture techniques — EAN/UPC
bar code symbology specification
ISO/IEC 19762-1, Information technology — Automatic identification and data capture (AIDC) techniques —
Harmonized vocabulary — Part 1: General terms relating to AIDC
ISO/IEC 19762-2, Information technology — Automatic identification and data capture (AIDC) techniques —
Harmonized vocabulary — Part 2: Optically readable media (ORM)
ISO/IEC 24723, Information technology — Automatic identification and data capture techniques — GS1
Composite bar code symbology specification
© ISO/IEC 2011 – All rights reserved 1
3 Terms, definitions, abbreviated terms and mathematical operators
3.1 Terms and definitions
For the purposes of this document, the terms and definitions given in ISO/IEC 19762-1, ISO/IEC 19762-2 and
the following apply.
NOTE For terms which are defined below and in ISO/IEC 19762, the definitions given below apply.
3.1.1
2D component
two-dimensional portion of a GS1 Composite symbol, which encodes supplemental information about an item,
such as its lot number or expiration date
3.1.2
AI element string
character string containing an application identifier followed by its associated data field
3.1.3
encodation methods
compaction schemes used by GS1 DataBar Expanded and 2D components to encode commonly used AI
element strings in binary strings that are shorter than would be required using general data compaction for the
symbology
3.1.4
indicator digit
leading digit of a GTIN-14 item identification number used to differentiate multiple levels of packaging or to
indicate a variable measure item
3.1.5
linear component
linear portion of a GS1 Composite symbol, which encodes the primary identification of an item
3.1.6
linkage flag
indicator encoded in a GS1 DataBar or GS1-128 linear component to signal if a 2D component accompanies
the linear component
3.1.7
segment
minimum decodable portion of a bar code symbol, consisting, in GS1 DataBar, of a symbol character and its
adjacent finder pattern
3.1.8
GS1-128
subset, specified in GS1 General Specifications, of Code 128 as defined in ISO/IEC 15417
3.1.9
voting
decoding technique whereby decoded segment values are saved along with a count of the number of times
they have been decoded
NOTE Voting is used for decoding GS1 DataBar by segments such as when used with omnidirectional scanning.
2 © ISO/IEC 2011 – All rights reserved
3.2 Abbreviated terms
AI Application Identifier (see ISO/IEC 15418)
2D two-dimensional
3.3 Mathematical operators and notational conventions
For the purposes of this document, the following mathematical operators apply.
div integer division operator which discards the remainder
mod integer remainder after integer division
The following ISO notational conventions are used.
0,2 A comma between numbers represents a decimal value (e.g. 0,2 equals 2/10) except when used in
subscripts or as an (n,k) designation.
12 345 A space between digits indicates factors of a thousand.
4 Symbol description
4.1 Types of GS1 DataBar symbol
The GS1 DataBar symbology consists of the following three types:
First type of GS1 DataBar symbol that has the following four variations:
GS1 DataBar Omnidirectional
GS1 DataBar Truncated
GS1 DataBar Stacked
GS1 DataBar Stacked Omnidirectional
Second type of GS1 DataBar symbol that has the following one variation:
GS1 DataBar Limited
Third type of GS1 DataBar symbol that has the following two variations:
GS1 DataBar Expanded
GS1 DataBar Expanded Stacked
The first type of GS1 DataBar symbol contains four symbol characters in every symbol and has identical
character encodation rules and structure for all symbols of this type.
The second type of GS1 DataBar symbol is structurally different than the first type, containing two symbol
characters and uses different character encodation rules.
The third type has yet another distinct symbology structure and set of character encodation rules, and can
contain a variable number of symbol characters.
© ISO/IEC 2011 – All rights reserved 3
GS1 DataBar Omnidirectional, GS1 DataBar Stacked Omnidirectional, GS1 DataBar Expanded and GS1
DataBar Expanded Stacked are designed to be read in segments by omnidirectional scanners.
NOTE Annex J contains a summary of characteristics of the three types of GS1 DataBar symbology types.
4.2 Symbology characteristics
The characteristics of the GS1 DataBar symbology are:
a) Encodable character set:
1) GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked, GS1 DataBar
Stacked Omnidirectional and GS1 DataBar Limited: 0 through 9;
2) GS1 DataBar Expanded and GS1 DataBar Expanded Stacked: a subset of ISO/IEC 646, consisting
of the upper and lowercase letters, digits, and 20 selected punctuation characters in addition to the
special function character, FNC1.
b) Symbol character structure: different (n,k) symbol characters are used for each type of the symbology,
where each symbol character is n modules in width and is composed of k bars and k spaces.
c) Code type: continuous, linear bar code symbology.
d) Maximum numeric data capacity (including implied application identifiers where appropriate, but not
including any encoded FNC1 characters):
1) GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked, GS1 DataBar
Stacked Omnidirectional and GS1 DataBar Limited: application identifier “01” plus a 14-digit numeric
item identification;
2) GS1 DataBar Expanded and GS1 DataBar Expanded Stacked: 74 numeric or 41 alphabetic
characters (see note).
NOTE The GS1 DataBar Expanded data capacity depends on the encodation method. The maximum is
74 digits for (01) + other AIs, the maximum is 70 digits for any AIs, and the maximum is 77 digits for
(01) + (392x) + any AIs.
e) Error detection:
1) GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked, GS1 DataBar
Stacked Omnidirectional: mod 79 checksum;
2) GS1 DataBar Limited: mod 89 checksum;
3) GS1 DataBar Expanded and GS1 DataBar Expanded Stacked: mod 211 checksum.
f) Character self-checking: yes.
g) Bidirectionally decodable: yes.
4.3 Summary of additional features
The following is a summary of additional GS1 DataBar symbology features:
a) Data compaction: Each member of the family has data compaction methods optimized for the data strings
that they will encode. GS1 DataBar Expanded is optimized for specific combinations of application
identifiers that are commonly used.
4 © ISO/IEC 2011 – All rights reserved
b) Component linkage: All GS1 DataBar symbols include a linkage flag. If the linkage flag is clear, i.e. equal
to 0, then the GS1 DataBar symbol stands alone. If the linkage flag is set, i.e. equal to 1, then a 2D
component is associated with the GS1 DataBar family linear component and its separator pattern.
c) GS1-128 emulation: Readers set to the GS1-128 emulation mode transmit the data encoded within the
GS1 DataBar family symbol as if the data were encoded in one or more GS1-128 symbols.
4.4 Symbol structure
Each GS1 DataBar symbol contains outside guard patterns, symbol characters, and finder patterns. Every
symbol includes a method for error detection.
The guard patterns for the first and third types of GS1 DataBar symbols consist of two one-module wide
elements forming either a bar/space or a space/bar pair at each end of the symbol. GS1 DataBar Stacked and
GS1 DataBar Expanded Stacked symbols have guard patterns at the ends of each row of the symbol. GS1
DataBar Limited symbols has a different guard pattern requirement that is designed to prevent misreads. See
Annex I.1 regarding printing considerations for exterior guard pattern elements.
Every symbol has two or more symbol characters, each with an (n,k) structure. The symbol character values
are combined mathematically to form the explicitly encoded data.
The finder pattern is a set of elements selected to be identifiable by the decoder so that the symbol can be
recognized and the relative position of the elements can be determined. Each symbol contains one or more
finder patterns. The finder patterns also function as the check character and/or segment identifiers.
All GS1 DataBar symbols include a linkage flag. If the flag is set, the GS1 DataBar linear component and its
contiguous separator pattern shall be aligned with a 2D component in accordance with ISO/IEC 24723.
Normally the GS1 DataBar linear component, its contiguous separator pattern, and the 2D component are
printed at the same time, comprising a single GS1 Composite symbol. It is possible however, to preprint a
GS1 DataBar linear component with the linkage flag set in anticipation of a subsequent process in which the
2D component is added. Under such circumstances the separator pattern shall be printed with the GS1
DataBar linear component in accordance with ISO/IEC 24723.
Bars and spaces may not be inverted for any form of GS1 DataBar symbol. That is, bars must be dark and
spaces must be light. Scanners should not attempt to decode bar and space patterns as if they are inverted
because inverted GS1 DataBar symbols can be misread.
5 Symbol requirements for GS1 DataBar Omnidirectional, GS1 DataBar Truncated,
GS1 DataBar Stacked and GS1 DataBar Stacked Omnidirectional
5.1 Basic characteristics of GS1 DataBar Omnidirectional
GS1 DataBar Omnidirectional is a linear symbology capable of encoding 20 000 000 000 000
(2 × 10 ) values. These values are expressed as 14 digits. The first digit is a linkage flag. The following
13 digits are data characters. The 13 data characters plus an implied check digit form a GS1 14-digit item
identification number including a leading indicator digit. Values 10 000 000 000 000 and above indicate that
the linkage flag is set and therefore a 2D component is present, e.g. value 10 001 234 567 890 encodes item
00012345678905 with the linkage flag equal to 1.
GS1 DataBar Omnidirectional can be scanned and decoded in four segments and then reconstructed. This
facilitates omnidirectional scanning. Figure 1 illustrates a stand-alone GS1 DataBar Omnidirectional symbol
encoding the value 20012345678909 and having the linkage flag equal to 0.
© ISO/IEC 2011 – All rights reserved 5
Figure 1 — GS1 DataBar Omnidirectional symbol representing (01)20012345678909
NOTE The leading (01) is the implied application identifier and is not encoded in the symbol. The last digit, 9, is not
directly encoded in the symbol, but is a calculated mod 10 check digit. See Annex A for the check digit
calculation. Annex F Encoding examples contains a complete example of encoding a GS1 DataBar
Omnidirectional symbol.
5.2 Symbol structure of GS1 DataBar Omnidirectional
A GS1 DataBar Omnidirectional symbol, as shown in Figure 2, consists of eight regions (from left to right)
comprising 96 modules:
a) a one module space and one module bar left guard pattern
b) four spaces and four bars with 16 modules comprising symbol character 1, (n,k) = (16,4)
c) three spaces and two bars with 15 modules comprising the left finder pattern
d) four bars and four spaces with 15 modules comprising symbol character 2, (n,k) = (15,4) (right to left)
e) four bars and four spaces with 15 modules comprising symbol character 4, (n,k) = (15,4)
f) three bars and two spaces with 15 modules comprising the right finder pattern (right to left)
g) four spaces and four bars with 16 modules comprising symbol character 3, (n,k) = (16,4) (right to left)
h) a one module space and one module bar right guard pattern
NOTE The symbol character elements are ordered toward the adjacent finder.
symbol symbol symbol
symbol
left left right right
character character character character
guard finder finder guard
1 2 4 3
pattern pattern
(15,4) (16,4)
(16,4) (15,4)
Figure 2 — GS1 DataBar Omnidirectional symbol representing (01)04412345678909
The total symbol contains 46 elements (bars and spaces) comprising 96 modules. Table E.1 in Annex E lists
all 46 elements of a GS1 DataBar Omnidirectional symbol. A GS1 DataBar Omnidirectional symbol intended
for omnidirectional scanning shall have a height greater than or equal to 33X (33 modules).
No quiet zones are required. The first and last elements may appear wider than one module without affecting
the symbol if the adjacent background area is the same “color” (light on the left or dark on the right).
6 © ISO/IEC 2011 – All rights reserved
5.2.1 Symbol character structure
Each of the four symbol characters has an (n,k) structure. The value of n is 16 for the first and third (outside)
symbol characters and 15 for the second and fourth (inside) symbol characters. The value of k is 4.
In Figure 2 the arrows show the ordering of element numbers within each character. The elements of the first
and fourth symbol characters are ordered from left to right and the elements of the second and third
characters are ordered from right to left, so that the symbol character elements are always ordered toward the
adjacent finder.
Each symbol character contains two subsets of odd- and even-numbered elements. The terms odd and even
refer to the ordinal number of the elements in each subset. For example the odd-numbered subset consists of
the first, third, fifth and seventh elements in each symbol character starting with the element farthest from the
adjacent finder pattern. In symbol characters one and two, the odd elements are spaces and the even
elements are bars. In symbol characters three and four, the odd elements are bars and the even elements are
spaces.
5.2.2 Symbol character value
For each symbol character value, an algorithm assigns a pattern of element widths to the odd and even
subsets. The algorithm is given the number of elements, the number of modules, maximum element width,
and whether the subset can have all elements wider than one module. Annex B gives a C-language
implementation of the GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked and
GS1 DataBar Stacked Omnidirectional symbol character element generation algorithm.
5.2.2.1 Outside symbol character values
For the outside symbol characters 1 and 3, the valid even element combinations shall have at least one
single-module-wide element. The valid odd element subsets need not have a single-module-wide element.
The even element restriction insures that the symbol characters have unique edge-to-similar-edge (bar plus
space and space plus bar) module sums.
Table 1 shows the characteristics of the (16,4) subsets, listing the odd and even subset pairs in five groups.
Both subsets have an even number of modules. The widest element widths are specified so that the number
of modules in a pair of adjacent elements is never greater than nine. The total number of combinations of a
(16,4) character is 2 841. The (16,4) symbol character value V is calculated by:
D
V = (V × T ) + V + G
D ODD EVEN EVEN SUM
where T is the even subset total value, V is the odd subset value, V is the even subset value, and
EVEN ODD EVEN
G is the sum of the products of values for each previous group in Table 1. To encode a specific symbol
SUM
character of V :
D
V = (V – G ) div T
ODD D SUM EVEN
V = (V – G ) mod T
EVEN D SUM EVEN
For example a (16,4) symbol character with the value of 2 315 is to be encoded. From Table 1, the value of
the symbol character is in the range of Group 4, so G = 2 015 and T = 70. Using the above equations:
SUM EVEN
V = (2 315 – 2 015) div 70 = 300 div 70 = 4
ODD
V = (2 315 – 2 015) mod 70 = 300 mod 70 = 20
EVEN
The symbol character value 2 315 is in Group 4 (see Table 1). The symbol character is comprised of an odd
subset with 6 modules and a sequential value of V = 4 out of 10 (range 0 to 9) and an even subset with
ODD
10 modules and a sequential value of V = 20 out of 70 (range 0 to 69). Using the routines in Annex B, the
EVEN
odd element widths are {1 2 2 1} and the even element widths are {1 5 1 3} giving the symbol character
element widths of {1 1 2 5 2 1 1 3} as ordered towards the finder pattern (see Figure 2).
© ISO/IEC 2011 – All rights reserved 7
Table 1 — Outside symbol character (16,4) characteristics
Sum of Odd/even Odd/even Odd subset Even subset
Value range Group previous subset widest total values, total values,
groups, G modules elements T T
SUM ODD EVEN
0 to 160 1 0 12/4 8/1 161 1
161 to 960 2 161 10/6 6/3 80 10
961 to 2 014 3 961 8/8 4/5 31 34
2 015 to 2 714 4 2 015 6/10 3/6 10 70
2 715 to 2 840 5 2 715 4/12 1/8 1 126
5.2.2.2 Inside symbol character values
For the inside symbol characters 2 and 4, the valid odd element combinations shall have at least one single
module wide element. The valid even element subsets need not have a single-module-wide element. The odd
element restriction insures that the symbol characters have unique edge-to-similar-edge (bar plus space and
space plus bar) module sums.
Table 2 shows the characteristics of the (15,4) subsets, listing the odd and even subset pairs in four groups.
The odd subset has an odd number of modules and the even subset has an even number of modules. The
widest element widths are specified so that the number of modules in a pair of adjacent elements is never
greater than nine. The total number of combinations for a (15,4) character is 1 597. The range of allowed
values of the odd subset is restricted so that the innermost element (odd element number 1) will not exceed
4 modules.
Table 2 — Inside symbol character (15,4) characteristics
Sum of Odd/even Odd/even Odd subset Even subset
Value range Group previous subset widest total values, total values,
groups, G modules elements T T
SUM ODD EVEN
0 to 335 1 0 5/10 2/7 4 84
336 to 1 035 2 336 7/8 4/5 20 35
1 036 to 1 515 3 1 036 9/6 6/3 48 10
1 516 to 1 596 4 1 516 11/4 8/1 81 1
The (15,4) symbol character value V is calculated by:
D
V = (V × T ) + V + G
D EVEN ODD ODD SUM
where T is the odd subset total value, V is the even subset value, V is the odd subset value, and G
ODD EVEN ODD SUM
is the sum of the products of values for each previous group. To encode a specific symbol character of value
V :
D
V = (V – G ) div T
EVEN D SUM ODD
V = (V – G ) mod T
ODD D SUM ODD
Note that the significance of the even and odd subsets is reversed in these calculations compared to the
(16,4) outside symbol characters.
5.2.3 Symbol value
The value of the symbol is formed by combining the values of the left symbol character pairs and the right
symbol character pairs. The value of each symbol character pair is formed by combining the values of the
outside and inside symbol characters. The symbol character pairs and their range of values are listed in
Table 3.
8 © ISO/IEC 2011 – All rights reserved
Table 3 — Symbol character pair values
Outside symbol character Inside symbol character Symbol character pair
(n,k) values (V ) (n,k) values (V ) number of values value range
OUTSIDE INSIDE
(16,4) 2 841 (15,4) 1 597 4 537 077 0 to 4 537 076
The symbol character pair value V is calculated by:
PAIR
V = (1 597 × C ) + C
PAIR OUTSIDE INSIDE
where C and C are the symbol character values.
OUTSIDE INSIDE
To encode the pair value V into the outside and inside symbol characters C and C :
PAIR OUTSIDE INSIDE
C = V div V
OUTSIDE PAIR INSIDE
C = V mod V
INSIDE PAIR INSIDE
For example, if the symbol character pair value V is 1 971 265, then C and C are:
PAIR
OUTSIDE INSIDE
C = 1 971 265 div 1 597 = 1 234
OUTSIDE
C = 1 971 265 mod 1 597 = 567
INSIDE
The symbol value is calculated by combining the values of the left and right symbol character pair values. The
calculation is:
V = (4 537 077 × V ) + V
SYMBOL LPAIR RPAIR
where V is the symbol value and V and V are the left and right symbol character pair values.
SYMBOL LPAIR RPAIR
To encode the symbol value V into the left and right symbol character pairs V and V :
SYMBOL LPAIR RPAIR
V = V div 4 537 077
LPAIR SYMBOL
V = V mod 4 537 077
RPAIR SYMBOL
For example, if the symbol V is 1 234 567 890, Then the value of the left pair V and the value of the
SYMBOL
LPAIR
right pair V are:
RPAIR
V = 1 234 567 890 div 4 537 077 = 272
LPAIR
V = 1 234 567 890 mod 4 537 077 = 482 946
RPAIR
Combining the values of the symbol characters generates 20 585 067 703 929 values, however, only the first
20 000 000 000 000 values (0 to 19 999 999 999 999) are used. The high-order digit is the 2D component
linkage flag: 0 for a stand-alone GS1 DataBar Omnidirectional, GS1 DataBar Truncated, GS1 DataBar
Stacked, GS1 or GS1 DataBar Stacked Omnidirectional and 1 if a 2D component adjoins the GS1 DataBar
Omnidirectional, GS1 DataBar Truncated, GS1 DataBar Stacked or GS1 DataBar Stacked Omnidirectional
primary symbol. This flag is stripped from the remaining 13 digits to form the item identification. An implied
mod-10 check digit is calculated and added to the end to form the GTIN-14 identification number. A leading
application identifier prefix 01 is added to the transmitted data, immediately after the mandatory transmitted
symbology identifier, ]e0 or ]C1.
© ISO/IEC 2011 – All rights reserved 9
5.2.4 Finder patterns
The symbol has two finder patterns that also encode the symbol checksum. Each finder pattern can encode
nine values. The finder patterns are positioned between the first and second symbol characters and between
the fourth and third symbol characters. Since a finder pattern is adjacent to all four symbol characters, the
symbol can be scanned in four segments. Each segment will contain a symbol character and a finder pattern.
5.2.4.1 Finder pattern structure
The two finder patterns each consist of 5 elements comprising 15 modules. The left finder pattern starts and
ends with a space and the right finder pattern starts and ends with a bar. Finder pattern elements are
numbered from the outside to the inside of the symbol as shown in Figure 2.
The sum of the modules in the elements 2 and 3 is 10 to 12, while the sum of the modules in elements 4 and 5
is 2. The ratio of the wide element pair (2 and 3) to the total width of the four adjacent elements (2 through 5)
is in the range of 10:12 to 12:14. This ratio is used for the first step in the recognition logic for the finder
pattern. Table 4 lists the finder pattern element widths for the nine encoded values.
Table 4 — Finder pattern values and element widths
Element Widths (numbered from outside to inside)
Finder
Value
1 2 3 4 5
0 3 8 2 1 1
1 3 5 5 1 1
2 3 3 7 1 1
3 3 1 9 1 1
4 2 7 4 1 1
5 2 5 6 1 1
6 2 3 8 1 1
7 1 5 7 1 1
8 1 3 9 1 1
Finder pairs 8,0 and 0,8 are not used as 0 and 8 can be transformed into a reverse of the other with a single
1-X edge error. The remaining 79 possible pairs encode a mod 79 checksum value.
5.2.4.2 Checksum calculation
The two finder pattern values, C and C , each have nine possible values. Finder pattern value pairs 0,8
LEFT RIGHT
and 8,0 are not valid. This leaves a total of (9 × 9) - 2 or 79 combinations. The checksum value is equal to the
mod 79 residue of the weighted sum of the widths of the elements in the symbol characters.
The mod 79 checksum value is calculated by:
(W E + W E +…+ W E + W E +…+ W E ) mod 79
1,1 1,1 1,2 1,2 1,8 1,8 2,1 2,1 4,8 4,8
where W E is the product of the weight for symbol character N at ordinal element position M, from
N,M N,M
Table 5, and the module width of element M in symbol character N. The weights are successive powers of
three mod 79.
10 © ISO/IEC 2011 – All rights reserved
Table 5 — Checksum calculation element weights
Symbol character element ordinal positions
Data
Character
1 2 3 4 5 6 7 8
1 1 3 9 27 2 6 18 54
2 4 12 36 29 8 24 72 58
3 16 48 65 37 32 17 51 74
4 64 34 23 69 49 68 46 59
Encoding the two finder pattern values uses the following procedure:
temp = check value
if temp is greater than or equal to 8, then temp = temp + 1
if temp is greater than or equal to 72, then temp = temp + 1
C = temp div 9
LEFT
C = temp mod 9
RIGHT
See Annex F.1 for a complete example of check
...








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