ГОСТ Р 54997—2012
Элемент высокого уровня должен кодироваться таким же образом, как и нормальный элемент
(согласно 4.4 настоящего стандарта) за исключением того, что element_data_bytesдолженбыть закоди
рован в следующем порядке:
- атрибуты:
- строковая маркерная таблица (если есть);
- значение contentID «по умолчанию» (если есть);
- дочерние элементы;
- контент CDATA.
4.5 Атрибуты
4.5.1 Кодирование атрибута
Кодирование атрибутов выполняется в соответствиисданными, представленными в таблице 5.
Т а б л и ц а
5 — Структура атрибута. Кодирование атрибута
СинтаксисКоличество битовТип
attribute)) {
attrlbute_tag
8uimsbf
attributeJength
If (attnbutejength *= 0xFE){
8uimsbf
extended_attrlbuteJength
)
If (attnbutejength *■ OxFF) {
16uimsbf
extended_attrlbuteJength
)
for <l=0; l<attnbute_length or
extended_attribute_length; •♦♦) {
24uimsbf
atlribute_data_byte
>
)
8uimsbf
attributejag: Это поле однозначно определяет атрибут в родительском элементе. Возможные
значения определены в соответствии с приложением В. Атрибуты с тегами, которые не определены
здесь, зарезервированы для будущего использования и недолжны обрабатываться приемниками.
attributeJength: Это полеуказываетнаколичествобайтовданных, содержащихсяв этом атрибу
те. Диапазон значенийот0x00до OxFD(от0до 253). Если вполезаписано значениеOxFEили OxFF.тогда
длину атрибута определитдополнительное поле extended_attributeJength.
extended_attributeJength: Это поле указывает на количество байтовданных, содержавшихся в
этом атрибуте.
attribute_data_byte: Эти байты содержат строки (согласно 4.6.1 настоящего стандарта), или
перечисленноезначениеданных (согласно4.7 настоящегостандарта), или тип общихданных (согласно
4.8 настоящего стандарта).
П р и м е ч а н и е — Любые ссылки объекта должны быть расширены.
4.5.2 Атрибуты «по умолчанию».
В тех случаях, когда атрибут имеет значение «по умолчанию», он недолжен кодироваться, так как
приемникдолжен всегда автоматически использовать значение «по умолчанию».
4.6 CDATA и строки
4.6.1 Кодирование
Все CDATA или текстовые строки, кроме текстовыхатрибутов, должны быть закодированы в соот
ветствии с таблицей 6.
5