• No results found

Format Flags section

In document GS1 EPC Tag Data Standard 1.6 (Page 167-169)

structure

I.4 Format Flags section

4099

The default layout of memory, under the Packed Objects access method, consists of a 4100

leading DSFID, immediately followed by an ID List Packed Object (at the next byte 4101

boundary), then optionally additional ID List Packed Objects (each beginning at the next 4102

byte boundary), and terminated by a zero-valued octet at the next byte boundary 4103

(indicating that no additional Packed Objects are encoded). This section defines the valid 4104

Format Flags patterns that may appear at the expected start of a Packed Object to 4105

override the default layout if desired (for example, by changing the Packed Object’s 4106

format, or by inserting padding patterns to align the next Packed Object on a word or 4107

block boundary). The set of defined patterns are shown in Table I 4-1. 4108

Table I 4-1: Format Flags 4109

Bit Pattern Description Additional Info See Section 0000 0000 Termination Pattern No more packed objects follow I.4.1

LLLLLL xx First octet of an IDLPO For any LLLLLL > 3 I.5 0000 Format Flags starting

pattern

(if the full EBV-6 is non-zero) I.4.2

0000 10NA IDLPO with:

N = 1: non-default Info A = 1: Addendum Present If N = 1: allows multiple ID tables If A = 1: Addendum ptr(s) at end of Object Info section

I.4.3

0000 01xx Inter-PO pattern A Directory Pointer, or padding I.4.4 0000 0100 Signifies a padding octet No padding length indicator

follows

I.4.4

0000 0101 Signifies run-length padding

An EBV-8 padding length follows

I.4.4

Bit Pattern Description Additional Info See Section 0000 0111 Directory pointer Followed by EBV-8 pattern I.4.4

0000 11xx ID Map Packed Object I.4.2

0000 0001 0000 0010 0000 0011

[Invalid] Invalid pattern

I.4.1 Data Terminating Flag Pattern

4110

A pattern of eight or more ‘0’ bits at the expected start of a Packed Object denotes that no 4111

more Packed Objects are present in the remainder of memory. 4112

NOTE: Six successive ‘0’ bits at the expect start of a Packed Object would (if interpreted 4113

as a Packed Object) indicate an ID List Packed Object of length zero. 4114

I.4.2 Format Flag section starting bit patterns

4115

A non-zero EBV-6 with a leading pattern of “0000” is used as a Format Flags section 4116

Indication Pattern. The additional bits following an initial ‘0000’ format Flag Indicating 4117

Pattern are defined as follows: 4118

• A following two-bit pattern of ‘10’ (creating an initial pattern of ‘000010’) indicates 4119

an IDLPO with at least one non-default optional feature (see I.4.3) 4120

• A following two-bit pattern of ‘11’ indicates an IDMPO, which is a Packed Object 4121

using an ID Map format instead of ID List-format The ID Map section (see I.9) 4122

immediately follows this two-bit pattern. 4123

• A following two-bit pattern of ‘01’ signifies an External pattern (Padding pattern or 4124

Pointer) prior to the start of the next Packed Object (see I.4.4) 4125

A leading EBV-6 Object Length of less than four is invalid as a Packed Objects length. 4126

NOTE: the shortest possible Packed Object is an IDLPO, for a data system using 4127

four bits per ID Value, encoding a single ID Value. This Packed Object has a 4128

total of 14 fixed bits. Therefore, a two-octet Packed Object would only contain 4129

two data bits, and is invalid. A three-octet Packed Object would be able to 4130

encode a single data item up to three digits long. In order to preserve “3” as an 4131

invalid length in this scenario, the Packed Objects encoder shall encode a leading 4132

Format Flags section (with all options set to zero, if desired) in order to increase 4133

the object length to four. 4134

4135

I.4.3 IDLPO Format Flags

4136

The appearance of ‘000010’ at the expected start of a Packed Object is followed by two 4137

additional bits, to form a complete IDLPO Format Flags section of “000010NA”, where: 4138

• If the first additional bit ‘N’ is ‘1’, then a non-default format is employed for the 4139

IDLPO Object Info section. Whereas the default IDLPO format allows for only a 4140

single ID List (utilizing the registration’s default Base ID Table), the optional non- 4141

default IDLPO Object Info format supports a sequence of one or more ID Lists, and 4142

each such list begins with identifying information as to which registered table it 4143

represents (see I.5.1). 4144

• If the second additional bit ‘A’ is ‘1’, then an Addendum subsection is present at the 4145

end of the Object Info section (see I.5.6). 4146

I.4.4 Patterns for use between Packed Objects

4147

The appearance of ‘000001’ at the expected start of a Packed Object is used to indicate 4148

either padding or a directory pointer, as follows: 4149

• A following two-bit pattern of ‘11’ indicates that a Directory Packed Object Pointer 4150

follows the pattern. The pointer is one or more octets in length, in EBV-8 format. 4151

This pointer may be Null (a value of zero), but if non-zero, indicates the number of 4152

octets from the start of the pointer to the start of a Directory Packed Object (which if 4153

editable, shall be the first in its “chain”). For example, if the Format Flags byte for a 4154

Directory Pointer is encoded at byte offset 1, the Pointer itself occupies bytes 4155

beginning at offset 2, and the Directory starts at byte offset 9, then the Dir Ptr encodes 4156

the value “7” in EBV-8 format. A Directory Packed Object Pointer may appear 4157

before the first Packed Object in memory, or at any other position where a Packed 4158

Object may begin, but may only appear once in a given data carrier memory, and (if 4159

non-null) must be at a lower address than the Directory it points to. The first octet 4160

after this pointer may be padding (as defined immediately below), a new set of 4161

Format Flag patterns, or the start of an ID List Packed Object. 4162

• A following two-bit pattern of ‘00’ indicates that the full eight-bit pattern of 4163

‘00000100’ serves as a padding byte, so that the next Packed Object may begin on a 4164

desired word or block boundary. This pattern may repeat as necessary to achieve the 4165

desired alignment. 4166

• A following two-bit pattern of ‘01’ as a run-length padding indicator, and shall be 4167

immediately followed by an EBV-8 indicating the number of octets from the start of 4168

the EBV-8 itself to the start of the next Packed Object (for example, if the next 4169

Packed Object follows immediately, the EBV-8 has a value of one). This mechanism 4170

eliminates the need to write many words of memory in order to pad out a large 4171

memory block. 4172

• A following two-bit pattern of ‘10’ is Reserved. 4173

In document GS1 EPC Tag Data Standard 1.6 (Page 167-169)