ГОСТ Р ИСО/МЭК 8825-4-2006
Группа П80
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
ПРАВИЛА КОДИРОВАНИЯ АСН.1
Часть 4
Правила XML кодирования (XER)
Information technology. ASN.1 encoding rules. Part 4. XML Encoding Rules (XER)
ОКС 35.100.60
ОКП 50 1300
Дата введения 2008-07-01
Предисловие
Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. N 184-ФЗ "О техническом регулировании", а правила применения национальных стандартов Российской Федерации - ГОСТ Р 1.0-2004 "Стандартизация в Российской Федерации. Общие положения"
Сведения о стандарте
1 ПОДГОТОВЛЕН Государственным образовательным учреждением высшего профессионального образования Московским государственным технологическим университетом "Станкин" на основе собственного аутентичного перевода стандарта, указанного в пункте 4
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 461 "Информационно-коммуникационные технологии в образовании (ИКТО)"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 27 декабря 2006 г. N 420-ст
4 Настоящий стандарт идентичен международному стандарту ИСО/МЭК 8825-4:2002 "Информационная технология. Правила кодирования АСН.1. Правила XML кодирования (XER)" (ISO/IEC 8825-4:2002 "Information technology - ASN.1 encoding rules XML Encoding Rules (XER)").
Наименование настоящего стандарта изменено относительно наименования указанного международного стандарта для приведения в соответствие с ГОСТ Р 1.5-2004 (пункт 3.5).
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении В
5 ВВЕДЕН ВПЕРВЫЕ
Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячно издаваемых информационных указателях "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет
Введение
Перспективы создания информационного общества и масштабы развития единой образовательной информационной среды (ЕОИС) обусловливают необходимость разработки комплекса национальных стандартов Российской Федерации по информационно-коммуникационным технологиям в образовании (ИКТО). Разработку комплекса национальных стандартов Российской Федерации по ИКТО осуществляет ТК 461 по следующим направлениям:
- общесистемные и основополагающие нормативные документы по стандартизации ИКТО;
- взаимосвязь открытых систем в образовании;
- автоматизированные информационные системы управления отраслью и образовательными учреждениями;
- образовательные среды и информационные ресурсы;
- обеспечение функциональной безопасности ИКТО.
Разрабатываемый ТК 461 комплекс национальных стандартов Российской Федерации гармонизирован с международными стандартами в области менеджмента качества (ИСО ТК 176) и информационных технологий (ИСО/МЭК СТК1), в том числе:
- системной и программной инженерии (ИСО/МЭК СТК1 ПК7);
- телекоммуникаций и информационного обмена между системами (ИСО/МЭК СТК1 ПК6);
- управления и обмена данными (ИСО/МЭК СТК1 ПК32);
- описания документов и языков обработки (ИСО/МЭК СТК1 ПК34);
- информационных технологий в обучении, образовании и тренинге (ИСО/МЭК СТК1 ПК36).
Настоящий национальный стандарт содержит аутентичный текст международного стандарта ИСО/МЭК 8825-4, устанавливающего правила кодирования, которые могут быть применены к значениям типов АСН.1, принятых в нотации, определенной в ИСО/МЭК 8824-1 и ИСО/МЭК 8824-2. Международные стандарты ИСО/МЭК 8824 (части 1-4) и ИСО/МЭК 8825 (части 1-5) определяют требования к информационному обмену между равноправными приложениями, и на их основе должны разрабатываться требования к информационным средам и системам образования, науки, государственного сектора, промышленности и других сфер деятельности.
Абстрактная синтаксическая нотация версии 1 (АСН.1), используемая для формирования сообщений при информационном обмене между равноправными приложениями, определяется международными стандартами ИСО/МЭК 8824-1 - ИСО/МЭК 8824-4.
Использование правил кодирования создает синтаксис передачи для таких значений. В спецификации правил кодирования подразумевается, что они также могут использоваться для декодирования.
Существует более чем один набор правил кодирования, которые могут быть применены к значениям типа АСН.1. Настоящий стандарт определяет два набора правил кодирования, которые используют расширяемый язык разметки (XML). Их общее наименование "Правила XML кодирования (XER) для АСН.1", и они производят XML документ, соответствующий W3C XML 1.0: "Базовые правила XML кодирования" и "Канонические правила XML кодирования", так как существует только один способ кодирования значений АСН.1, использующий данные правила кодирования (канонические правила кодирования в основном применяются для приложений, использующих возможности, связанные с защитой, например цифровую подпись).
В настоящем стандарте под XML кодированием следует понимать кодирование на языке XML.
1 Область применения
Настоящий стандарт устанавливает набор базовых правил XML кодирования (XER), которые могут быть использованы для получения синтаксиса перехода для значений типов, определенных в ИСО/МЭК 8824-1 и ИСО/МЭК 8824-2. Настоящий стандарт также определяет набор канонических правил XML кодирования, который предусматривает ограничения на базовые правила XML кодирования и производит уникальное кодирование для любого данного значения АСН.1. Спецификации данных правил кодирования предусматривают то, что они также могут использоваться для декодирования.
Настоящие правила кодирования:
- используются во время связи;
- предназначены для использования в случаях, когда отображение и/или обработка значений при помощи доступных XML средств (типа браузеров) являются определяющими в выборе правил кодирования;
- позволяют расширить абстрактный синтаксис путем добавления дополнительных значений для всех форм расширяемости, описанных в ИСО/МЭК 8824-1.
2 Нормативные ссылки
Настоящий стандарт содержит положения, имеющие ссылки на нижеследующие рекомендации и международные стандарты. Во время издания указанные версии имели силу. Все рекомендации и международные стандарты допускаются к пересмотру, и стороны соглашений, основанных на данном стандарте, имеют возможность применения самого последнего издания рекомендаций и стандартов, перечисленных ниже. Члены МЭК и ИСО утверждают реестр действующих международных стандартов. Бюро телекоммуникационной стандартизации, международного союза по телекоммуникациям поддерживает список действующих в настоящее время рекомендаций МСЭ-Т.
2.1 Идентичные рекомендации и международные стандарты
В настоящем стандарте использованы нормативные ссылки на следующие рекомендации МСЭ-Т и международные стандарты:
Рекомендация МСЭ-Т Х.680 (2002) (ИСО/МЭК 8824-1:2002) Информационные технологии - абстрактная синтаксическая нотация версии 1 (АСН.1): Спецификация основной нотации
Рекомендация МСЭ-Т Х.681 (2002) (ИСО/МЭК 8824-2:2002) Информационные технологии - абстрактная синтаксическая нотация версии 1 (АСН.1): Спецификация информационного объекта
Рекомендация МСЭ-Т Х.682 (2002) (ИСО/МЭК 8824-3:2002) Информационные технологии - абстрактная синтаксическая нотация версии 1 (АСН.1): Спецификация ограничений
Рекомендация МСЭ-Т Х.683 (2002) (ИСО/МЭК 8824-4:2002) Информационные технологии - абстрактная синтаксическая нотация версии 1 (АСН.1): Параметризация АСН.1 спецификаций
Рекомендация МСЭ-Т Х.690 (2002) (ИСО/МЭК 8825-1:2002) Информационные технологии - Правила кодирования АСН.1: Спецификация базовых правил кодирования (BER), канонических правил кодирования (CER) и отличительных правил кодирования (DER)
Рекомендация МСЭ-Т Х.693 (2002) (ИСО/МЭК 8825-2:2002) Информационные технологии - Правила кодирования АСН.1: Спецификация правил уплотненного кодирования (PER)
2.2 Дополнительные ссылки
ИСО/МЭК 10646-1:1993 Информационные технологии - Универсальный многооктетный кодовый набор символов (UCS) - Часть 1: Архитектура и основная многоязычная матрица
ИСО/МЭК 10646-1:1993/Изм.2:1996 Информационные технологии - Универсальный многооктетный кодовый набор символов (UCS) - Часть 1: Архитектура и основная многоязычная матрица - Изменение 2: UCS Формат преобразования 8 (UTF-8)
W3C XML 1.0:2000 Расширяемый язык разметки (XML) 1.0 (второе издание), рекомендации W3C, Copyright
3 Термины и определения
В настоящем стандарте применяют следующие термины с соответствующими определениями.
3.1 Базовые правила кодирования
В настоящем стандарте применяют следующие термины по ИСО/МЭК 8825-1:
a) значение данных;
b) динамическое соответствие;
c) кодирование (значений данных);
d) получатель;
e) отправитель;
f) статическое соответствие.
3.2 Дополнительные термины и определения
В настоящем стандарте применяют следующие дополнительные термины с соответствующими определениями:
3.2.1 АСН.1 схема (ASN.1 schema): Описание содержания и структуры данных, использующее определение типов АСН.1.
Примечание - АСН.1 схема дает возможность применять правила кодирования для двоичного кодирования значений типа АСН.1 или кодирование, использующее XML.
3.2.2 каноническое кодирование (canonical encoding): Полное кодирование абстрактного значения, осуществляемое применением правил кодирования, которые не предоставляют возможности выбора вариантов, зависящих от реализации. Такие правила приводят к определению 1-1 отображения между однозначным и уникальным кодированием и значениями в абстрактном синтаксисе.
3.2.3 правильный XML документ (для АСН.1 схемы) (valid XML document (for an ASN.1 schema)): XML документ, который правильно сформирован (см. W3C XML 1.0) и содержание которого соответствует XER спецификации правил кодирования XML для типов АСН.1, заданный АСН.1 схемой.
3.2.4 XML документ (XML document): Последовательность символов, которая соответствует W3C XML 1.0 определению документа.
4 Сокращения
В настоящем стандарте применяют следующие сокращения:
АСН.1 (ASN.1) - абстрактная синтаксическая нотация версии 1;
PDU - единица обмена данными в соответствии с протоколом;
UCS - универсальный многооктетный набор кодированных символов;
UTC - универсальное глобальное время (по Гринвичу);
UTF-8 - UCS формат преобразования, 8-битовая форма;
XML - расширяемый язык разметки;
XER - правила XML кодирования.
5 Нотация
Настоящий стандарт ссылается на нотацию, установленную ИСО/МЭК 8824-1, раздел 5.
6 Правила кодирования
6.1 Настоящий стандарт определяет два набора правил кодирования:
- базовые правила XML кодирования (BASIC-XER);
- канонические правила XML кодирования (CANONICAL-XER).
Примечание - Если настоящий стандарт использует обозначение "XER" без уточнения, то подразумевают оба набора правил кодирования BASIC-XER и CANONICAL-XER.
6.2 Первый набор правил кодирования BASIC-XER в общем случае не производит канонического кодирования.
6.3 Второй набор правил кодирования CANONICAL-XER производит каноническое кодирование. Данный набор правил кодирования определяется как ограничение возможности выбора, зависящего от реализации в BASIC-XER кодировании.
Примечание 1 - Любая реализация, соответствующая CANONICAL-XER для кодирования, совместима с BASIC-XER для кодирования. Любая реализация, соответствующая BASIC-XER для декодирования, совместима с CANONICAL-XER для декодирования. Следовательно, кодирование, произведенное в соответствии с CANONICAL-XER, есть кодирование, разрешенное BASIC-XER.
Примечание 2 - CANONICAL-XER производит кодирование при необходимости проверки достоверности абстрактного значения.
6.4 Если тип данных, закодированный по CANONICAL-XER, содержит типы EMBEDDED PDV, EXTERNAL или CHARACTER STRING, то внешнее кодирование перестает быть каноническим, если кодирование, используемое для всех типов EMBEDDED PDV, EXTERNAL или CHARACTER STRING, не является каноническим.
7 Соответствие
7.1 Динамическое соответствие базовых правил XML кодирования определено в разделе 8, динамическое соответствие для канонических правил XML кодирования - в разделе 9.
7.2 Статическое соответствие точно определено настоящим стандартом, предписывающим использование одного или более правил кодирования.
7.3 Альтернативное кодирование разрешено базовыми правилами XML кодирования как опция кодера. Декодеры, соответствующие правилам кодирования XER, должны поддерживать все альтернативы.
7.4 Канонические правила XML кодирования не разрешают альтернативного кодирования для кодирования АСН.1 значений.
8 Базовые правила XML кодирования
8.1 Основные принципы полного XER кодирования
8.1.1 Согласованное XER кодирование представляет собой правильный XML документ, который должен состоять из:
а) XML пролога (может быть пустым), как определено в 8.2;
б) элемента XML документа, который представляет собой законченное кодирование типа "single ASN.1 type", как определено в 8.3.
8.1.2 Спецификация по 8.2-8.4 полностью определяет XER кодирование.
Примечание - Другие конструкции W3C XML 1.0, например обработка команд и комментарии, не допустимы согласно 8.2-8.4 и не могут использоваться в XER кодировании.
8.1.3 XML документ должен быть кодирован с использованием UTF-8 для получения "строки октетов", которая формирует кодирование, в соответствии с настоящим стандартом. АСН.1 идентификатор объекта для этих правил кодирования определен в разделе 10.
8.1.4 В случае если настоящий стандарт использует термин "разделитель" ("white-space"), подразумевается использование одного или более из символов: HORIZONTAL TABULATION (9), LINE FEED (10), CARRIAGE RETURN (13), SPACE (32). Цифры в круглых скобках - десятичные значения символов по ИСО/МЭК 10646-1. Номер и выбор символа, который составляет разделитель, - опция кодера.
8.2 XML пролог
8.2.1 XML пролог должен:
а) быть пустым или
б) состоять из следующих последовательностей символов, расположенных по порядку, и, как опция кодера, последовательность может быть завершена разделителем (см. 8.1.4);
<?xml
version="1.0"
encoding="UTF-8"?>
8.2.2 Последовательности символов в 8.2.1 не должны содержать разделитель, но должны быть разделены одним символом SPACE (32).
8.3 Элемент XML документа
8.3.1 Элемент XML документа должен быть "XMLTypedValue", как определено в ИСО/МЭК 8824-1, пункт 15.2, с изменениями и ограничениями, указанными в следующих подпунктах.
8.3.2 Лексический элемент АСН.1 "comment" (см. ИСО/МЭК 8824-1, пункт 11.6) не должен присутствовать. Если XER кодирование содержит пару смежных дефисов: "/*" или "*/", это должно интерпретироваться как часть данных, а не как АСН.1 разделители комментариев.
8.3.3 В случаях если ИСО/МЭК 8824-1 допускает использование разделителя АСН.1 между лексическими элементами, символы должны быть ограничены разделителями, определенными в 8.1.4.
8.3.4 Значение "XMLIntegerValue", определенное в ИСО/МЭК 8824-1, пункт 18.9, должно быть только "SignedNumber" (числом со знаком).
8.3.5 Значение "XMLBitStringValue", определенное в ИСО/МЭК 8824-1, пункт 21.9, не должно быть "XMLIdentifierList".
8.3.6 Значение "XMLExternalValue", определенное ИСО/МЭК 8824-1, пункт 34, должно быть заменено на "XMLExternalValue" по 8.4.
8.4 Кодирование типа EXTERNAL
8.4.1 Получение значения "XMLExternalValue", используемого для XER кодирования внешнего типа, должно быть значением "XMLValue" для кодирования типов "последовательности", определенных в ИСО/МЭК 8825-2, пункт 26.1, со значением, определенным в 26.2-26.4 указанного стандарта.
Примечание - XER кодирование типа "EXTERNAL" неэквивалентно XML нотации значений, определенной в ИСО/МЭК 8824-1.
8.4.2 Допускается применять ИСО/МЭК 8825-2, пункты 26.5-26.8, но пункт 26.6 должен быть заменен 8.4.3 настоящего стандарта.
8.4.3 Если значение данных - значение типа "single ASN.1 type" и кодирующие правила для значения этих данных определены в настоящем стандарте, то реализация сообщений должна использовать выбранный тип "single ASN.1 type".
8.4.4 Допускается применять ИСО/МЭК 8825-2, пункты 26.9-26.11, но пункт 26.6 должен быть заменен на 8.4.5 настоящего стандарта. Примечание по 26.9 ИСО/МЭК 8825-2 применимо.
8.4.5 Если выбирают тип кодирования "single-ASN.1-type", то тип АСН.1 должен быть "XMLTypedValue" типа кодирования "EXTERNAL" со значением, эквивалентным значению данных, которые будут кодированы.
9 Канонические правила XML кодирования
В случае если "XMLTypedValue" содержит возможности выбора, настоящий раздел допускает определение строго одного варианта выбора для получения уникального кодирования. Условия настоящего раздела определяют канонические правила XML кодирования.
9.1 Общие правила для канонического XML кодирования
9.1.1 XML пролог должен быть пустым (см. 8.2.1).
9.1.2 Все лексические элементы, формирующие "XMLTypedValue", не должны иметь между собой разделитель (см. ИСО/МЭК 8824-1, подпункт 11.1.4).
Примечание - Это правило гарантирует, что цифровая подпись документа может быть легко сгенерирована без учета любой возможной вставки разделителя между лексическими элементами "XMLTypedValue".
9.1.3 ESC-последовательности, описанные в ИСО/МЭК 8824-1, подпункт 11.15.8, не используют.
9.1.4 Если нотация XML значений разрешает использовать пустой XML тег (см. ИСО/МЭК 8824-1, пункты 15.5, 16.8), то должен использоваться этот пустой тег.
9.2 Действительные значения
9.2.1 Действительное значение нуля должно быть кодировано как "0".
9.2.2 Для всех других действительных значений ограничения, применяемые к "realnumber" (см. ИСО/МЭК 8824-1, пункт 11.9), определяют следующие подпункты.
9.2.3 Значение "Realnumber" должно быть нормализовано так, чтобы его целая часть состояла из одной цифры, отличной от нуля. Десятичная точка должна присутствовать и должна сопровождаться дробной частью, содержащей как минимум одну цифру (может быть нулем). Дробная часть не должна содержать замыкающие нули, следующие после первой цифры.
9.2.4 Дробная часть значения "Realnumber" должна сопровождаться "Е" (не "е") и показателем степени (может быть нулем).
Примечание - Использование ведущих нулей в показателе степени запрещено ИСО/МЭК 8824-1, пункт 11.9.
9.2.5 Знак "+" не должен присутствовать ни перед целой частью значения "Realnumber", ни перед показателем степени.
9.3 Значение "битовая строка"
9.3.1 Если "XMLTypedValue" можно использовать вместо "XMLBitStringValue" (см. ИСО/МЭК 8824-1, пункт 21.9), как определено в ИСО/МЭК 8824-1, пункт 21.10, то его следует использовать. В противном случае "xmlbstring" может использоваться только без разделителей.
9.3.2 Если тип битовой строки - "NamedBitList", то не должно быть битов с замыкающими нулями (см. ИСО/МЭК 8824-1, пункт 21.7).
9.4 Значение "строка октетов"
Если "XMLTypedValue" можно использовать вместо "XMLOctetStringValue" (см. ИСО/МЭК 8824-1, пункт 22.3), как определено в ИСО/МЭК 8824-1, пункт 22.4, то его следует использовать. В противном случае "xmlhstring" может использоваться только без разделителей и все символы должны быть в верхнем регистре.
9.5 Значение "последовательность"
Все компоненты последовательности, имеющие значение "по умолчанию" и набор абстрактных значений к значениям "по умолчанию" должны иметь кодированные значения "по умолчанию", представленные в виде текста. Эти компоненты всегда кодируются.
9.6 Значение "множество"
9.6.1 Тип "множество" должен содержать элементы в его "RootComponentTypeList", отсортированные в каноническом порядке (как определено в ИСО/МЭК 8824-1, пункт 8.6). В целях определения порядка кодирования, в случае если имеется компонент с типом выбора "без применения тегов", он должен быть упорядочен также, как и в случае с тегом, равным наименьшему тегу в "RootAlternativeTypeList" этого типа выбора или любого вложенного типа выбора "без применения тегов".
9.6.2 Элементы типа "множество", встречающиеся в "RootComponentTypeList", кодируют в порядке окончательной сортировки. После кодирования элементов из "RootComponentTypeList" (если имеются) элементы множества, входящие в "ExtensionAdditionList", должны быть кодированы в порядке, в котором они определены (пример такого упорядочения элементов представлен в ИСО/МЭК 8825-2, пункт 20).
9.6.3 Все компоненты множества, имеющие значение "по умолчанию" и набор абстрактных значений к значениям "по умолчанию", должны иметь кодированные значения "по умолчанию", представленные в виде текста. Эти компоненты всегда кодируются.
9.7 Значение "множество-из"
9.7.1 Порядок элементов "XMLSetOfValue" (см. ИСО/МЭК 8824-1, пункт 27.3) должен быть определен сортировкой символьных строк, которые представляют собой CANONICAL-XER кодирование для каждого элемента, в соответствии с 9.7.2, 9.7.3.
9.7.2 Порядок сортировки для символьных строк определен использованием 32-битного значения символов (по ИСО/МЭК 10646-1), причем символы с меньшим кодовым значением предшествуют символам с большим кодовым значением.
9.7.3 Условный символ-заполнитель используют для определения порядка сортировки. Этот символ предшествует всем другим символам. При определении, какую из строк, "А" или "В", ставить ранее, ставят более короткую строку, дополняя ее условным символом-заполнителем в конце строки (если необходимо). Строку "А" ставят ранее строки "В", только если символ в строке "А" превосходит (см. 9.7.2) соответствующий символ в строке "В", причем сравнивают значения первых символов, с которых эти строки начинают различаться.
9.8 Значение "идентификатор объекта"
Значение "XMLObjIdComponent" (см. ИСО/МЭК 8824-1, пункт 31.3) должно быть "XMLNumberForm".
9.9 Значение "относительный идентификатор объекта"
Значение "XMLRelativeOIDComponent" (см. ИСО/МЭК 8824-1, пункт 32.3) должно быть "XMLNumberForm".
9.10 Обобщенное время
9.10.1 Кодирование значения типа "GeneralizedTime" должно заканчиваться символом "Z" (см. ИСО/МЭК 8824-1, пункт 42.3).
9.10.2 Строка, отображающая секунды, должна присутствовать всегда.
9.10.3 Если присутствует строка, отображающая доли секунды, то в ней пропускают завершающие нули. Если дробная часть соответствует 0, то ее пропускают вместе с десятичной точкой.
Например, секунды, представленные строкой "26.000", кодируют как "26". Секунды, представленные строкой "26.5200", кодируют как "26.52".
9.10.4 Если имеется десятичная точка, она должна быть представлена в виде ".".
9.10.5 Полночь (GMT) кодируют как строку вида:
"YYYYMMDD000000Z",
где "YYYYMMDD" отображают день, следующий за полуночью.
Например, следующие кодирования являются правильными:
"19920521000000Z"
"19920622123421Z"
"19920722132100.3Z"
Следующие кодирования являются неправильными:
"19920520240000Z" (полночь представлена некорректно)
"19920622123421.0Z" (ложные замыкающие нули)
"19920722132100.30Z" (ложные замыкающие нули)
9.11 Универсальное синхронизированное время
9.11.1 Кодирование типа "UTCTime" должно заканчиваться символом "Z" (см. ИСО/МЭК 8824-1, пункт 43.3).
9.11.2 Строка, отображающая секунды, должна присутствовать всегда.
9.11.3 Полночь (GMT) кодируют как строку вида:
"YYMMDD000000Z",
где "YYMMDD" представляют день, следующий за полночью.
Например, следующие кодирования являются правильными:
"920521000000Z"
"920622123421Z"
"920722132100Z"
Следующие кодирования являются неправильными:
"920520240000Z" (полночь представлена некорректно)
"9207221321Z" (секунды "00" пропущены)
10 Значения "идентификатор объекта", ссылки на правила кодирования
10.1 Допускается ссылаться и применять правила кодирования настоящего стандарта, если есть необходимость определить однозначное представление символьной строки для значений типа "single ASN.1 type".
10.2 Для идентификации правил кодирования, в соответствии с настоящим стандартом, предназначены следующие значения идентификатора объекта и дескриптора объекта:
- для BASIC-XER: | ||
{joint-iso-itu-t ACH1 (1) xml-encoding (5) basic (0)} | ||
"Basic XML encoding of a single ACH.1 type" | ||
- для CANONICAL-XER: | ||
{joint-iso-itu-t ACH1 (1) xml-encoding (5) canonical (1)} | ||
"Canonical XML encoding of a single ACH.1 type" |
Приложение А
(справочное)
Примеры кодирования
Настоящее приложение иллюстрирует применение правил XML кодирования, а также содержит XML разметку представления записи (гипотетической) данных о персонале, которая определяется с использованием АСН.1.
А.1 АСН.1 описание структуры записи
Ниже представлена структура гипотетической кадровой записи данных с использованием АСН.1, определенной в ИСО/МЭК 8824-1 и идентичной описанной в ИСО/МЭК 8825-1 (приложение А):
PersonnelRecord :: = [APPLICATION 0] IMPLICIT SET { | ||||||||
name | Name, | |||||||
title | [0] VisibleString, | |||||||
number | EmployeeNumber, | |||||||
dateOfHire | [1] Date, | |||||||
nameOfSpouse | [2] Name, | |||||||
children | [3] IMPLICIT | |||||||
SEQUENCE OF Childlnformation DEFAULT {}} | ||||||||
Childlnformation :: = SET | ||||||||
{ name | Name, | |||||||
dateOfBirth | [0] Date} | |||||||
Name :: = [APPLICATION 1] IMPLICIT SEQUENCE | ||||||||
{ givenName | VisibleString, | |||||||
initial | VisibleString, | |||||||
familyName | VisibleString} | |||||||
EmployeeNumber :: = [APPLICATION 2] IMPLICIT INTEGER | ||||||||
Date :: = [APPLICATION 3] IMPLICIT VisibleString - YYYYMMDD |
Примечание - Теги используются только для сравнения с примером предыдущей версии ИСО/МЭК 8824-1 и не влияют на XML кодирование.
А.2 АСН.1 описание значений записи
Ниже представлены значения кадровой записи данных "John Smith's" с использованием основной нотации значений АСН.1:
{ name | {givenName "John", initial "P", familyName "Smith"}, | |||||||
title | "Director", | |||||||
number | 51, | |||||||
dateOfHire | "19710917", | |||||||
nameOfSpouse {givenName "Mary", initial "T", familyName "Smith"}, | ||||||||
children | ||||||||
{{name {givenName "Ralph", initial "T", familyName "Smith"}, | ||||||||
dateOfBirth "19571111"}, | ||||||||
{ name {givenName "Susan", initial "B", familyName "Jones"}, | ||||||||
dateOfBirth "19590717" }}} |
A.3 Базовое XML представление значения записи
Представление значения записи, приведенной выше (после применения базовых правил XML кодирования), предполагает пустой пролог.
Длина этого кодирования в BASIC-XER имеет 653 октета без всех разделителей. Для сравнения: та же запись, кодированная с UNALIGNED вариантом PER (см. ИСО/МЭК 8825-1), имеет 84 октета, с ALIGNED вариантом PER - 94 октета, с BER (см. ИСО/МЭК 8825-2), используя форму определенной длины, - не менее чем 136 октетов и с BER, используя форму неопределенной длины, - не менее чем 161 октет.
<PersonnelRecord> | ||||||||
<name> | ||||||||
<givenName>John</givenName> | ||||||||
<initial>P</initial> | ||||||||
<familyName>Smith</familyName> | ||||||||
</name> | ||||||||
<title>Director</title> | ||||||||
<number>51 </number> | ||||||||
<dateOfHire>19710917</dateOfHire> | ||||||||
<nameOfSpouse> | ||||||||
<givenName>Mary</givenName> | ||||||||
<initial>T</initial> | ||||||||
</nameOfSpouse> | ||||||||
<children> | ||||||||
<Childlnformation> | ||||||||
<name> | ||||||||
<givenName>Ralph</givenName> | ||||||||
<initial>T</initial> | ||||||||
<familyName>Smith</familyName> | ||||||||
</name> | ||||||||
<dateOfBirth>19571111</dateOfBirth> | ||||||||
</Childlnformation> | ||||||||
<Childlnformation> | ||||||||
<name> | ||||||||
<givenName>Susan</givenName> | ||||||||
<initial>B</initial> | ||||||||
<fam8ilyName>Jones</familyName> | ||||||||
</name> | ||||||||
<dateOfBirth>19590717</dateOfBirth> | ||||||||
</Childlnformation> | ||||||||
</children> | ||||||||
</PersonnelRecord> |
A.4 Каноническое XML представление значения этой записи
Ниже представлено значение записи, приведенной выше (после применения канонических правил XML кодирования):
<PersonnelRecord><name><givenName>John</givenName><initial>P</initial><familyName<Smith</familyName> </name><number>51</number><title>Director</title><dateOfHire>19710917</dateOfHire><nameOfSpouse><given Name>Mary</givenName><initial>T</initial><familyName>Smith</familyName></nameOfSpouse><children><Childl- nformation><name><givenName>Ralph</givenName><initial>T</initial><familyName>Smith</familyName></name> <dateOfBirth>19571111</dateOfBirth></Childlnformation><Childlnformation><name><givenName>Susan</givenName> <initial>B</initial><familyName>Jones</familyName></name><dateOfBirth>19590717</dateOfBirth></Childlnformation> </children></PersonnelRecord> |
Приложение В
(справочное)
Сведения о соответствии национальных стандартов Российской Федерации
ссылочным международным стандартам
Таблица В.1
Обозначение ссылочного международного стандарта | Обозначение и наименование соответствующего национального стандарта Российской Федерации |
ИСО 9000:2000 | ГОСТ Р ИСО 9000-2001 Система менеджмента качества. Основные положения и словарь |
ИСО/МЭК 8824-1:2002 | ГОСТ Р ИСО/МЭК 8824-1-2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации |
ИСО/МЭК 8824-2:2002 | ГОСТ Р ИСО/МЭК 8824-2-2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 2. Спецификация информационного объекта |
ИСО/МЭК 8824-3:2002 | * |
ИСО/МЭК 8824-4:2002 | * |
ИСО/МЭК 8825-1:2002 | ГОСТ Р ИСО/МЭК 8825-1-2003 Информационная технология. Правила кодирования АСН.1. Часть 1. Спецификация базовых (BER), канонических (CER) и отличительных (DER) правил кодирования |
ИСО/МЭК 8825-2:2002 | ГОСТ Р ИСО/МЭК 8825-2-2003 Информационная технология. Правила кодирования АСН.1. Часть 2. Спецификация правил уплотненного кодирования (PER) |
ИСО/МЭК 10646-1:1993 | * |
Рекомендации МСЭ-Т Х.680 (2002) | * |
Рекомендации МСЭ-Т Х.681 (2002) | * |
Рекомендации МСЭ-Т Х.682 (2002) | * |
Рекомендации МСЭ-Т Х.683 (2002) | * |
Рекомендации МСЭ-Т Х.690 (2002) | * |
Рекомендации МСЭ-Т Х.693 (2002) | * |
* Соответствующий межгосударственный стандарт отсутствует. До его принятия рекомендуется использовать перевод на русский язык данного международного стандарта. Перевод данного международного стандарта находится в Федеральном информационном фонде технических регламентов и стандартов. |
Электронный текст документа
и сверен по:
, 2007