ГОСТ Р ИСО/МЭК 18000-7—2012
команду с помощью маркера как повторную попытку. См. ниже раздел о ситуациях с повторными опе
рациями с базами данных;
b
)в ответе на последнюю команду серии команд с учетом ограничений, наложенных командами
«Table Add Records», «Table Update Records», «Table Update Records Fields» или командой «Table Get
Data» предшествующей серии, радиочастотная метка должна вернуть однобайтовый маркер со специ
альным значением «0x00». Специальное значение информирует УСО, что радиочастотная метка счи
тает. что серия команд завершена;
c)радиочастотная метка должна поддерживать существование множества независимых мар
керов чтения и может поддерживать существование множества независимых маркеров записи. Радио
частотная метка должна поддерживать, как минимум, два независимых маркера чтения.
Маркер чтения генерируется при получении команды «Table Get Data» и используется в после
довательности команд «Table Read Fragment». Маркер записи генерируется при получении команд за
писи таблиц и используется в последовательности команд «Table Write Fragment». Командами записи в
таблицы являются «Table Add Records», «Table Update Records» и «Table Update Records Fields».
Поддержка нескольких независимых маркеров чтения означает, что процедуры, связанные с коман
дами «Table Get Data» или «Table Read Fragment», использующими разные маркеры, не связаны друг с
другом, даже если два маркера связаны с одной и той же таблицей. Поддержка множества независи мых
маркеров записи означает, что выполнение команды записи таблицы («Table Add Records». «Table Update
Records» и «Table Update Fields») с одним маркером не будет влиять на операции любой другой команды
записи таблицы с другим маркером при условии, что два маркера связаны с разными табли цами. Подача
любой команды записи в таблицу приводит к отмене значений всех ранее установленных для этой
таблицы маркеров чтения и записи.
Старшие четыре бита первого байта маркера указывают его длину без первого байта, т.е. их ну
левое значение соответствует длине маркера в 1 байт (см. команду «Table Write Fragment»). Полностью
нулевое значение маркера «0x00» зарезервировано как указатель условия конца итераций. Структура
поля маркера показана ниже в таблице 82.
Т а б л и ц а 82 — Структура маркера
Длина маркера NДанные маркера
Значение N в битах — 7—4 (Значение N = 0—15) Четыре младших бита байта длины маркера, затем
N байтов
Команды работы с таблицами делятся на команды чтения и записи. К командам чтения относятся
команды «Table Get Data», «Table Get Properties», «Table Query» и «Table Read Fragment»; команды
записи включают в себя команды «Table Create», «Table Add Records», «Table Update Records», «Table
Update Fields», «Table Delete Record» и «Table Write Fragment». Для всех команд записи таблиц требует ся
организация повторной записи данных в метку при любой ошибке первичной команды записи.
Особые ситуации — повторные операции с базами данных
Для команд «Table Create», «Table Add Records», «Table Delete Records», «Table Read Fragment»
и «Table Write Fragment» необходим определенный порядок действий по обработке ошибок на тот слу
чай. если УСО не был получен ответ об успешном выполнении команды, и поэтомутребуется
повторить команду. Повторный пакет команды должен полностью копировать первичный, используя
точно те же значения идентификатора сеанса, кода команды, субкода команды, идентификатора
последователь ности или маркера запроса, идентификатора таблицы (если используется) и данных
(если они исполь зуются). Радиочастотная метка должна определить, является ли запрос повтором
предшествовавшей команды путем сравнения с ранее полученным пакетом команды. Если
радиочастотная метка опреде ляет. что запрос является повтором ранее выполненной и успешной
команды по работе с базой данных, то она должна повторно отправить тот же ответ, что и на успешно
выполненную предыдущую команду. Подробности см. в описаниях команд «Table Add Records».
«Table Delete Records», «Table Read Frag ment» и «Table Write Fragment». Следует иметь в виду, что
прочие команды обращения к базе данных также могут требовать повторения, и эти повторные
обращения должны поддерживаться.
6.3.10.1 Команда «Table Create»
Для создания таблицы радиочастотной метке передается команда «Table Create», показанная
в таблице 83.
35