ГОСТ Р ИСО/МЭК 19831—2017
Ссылки в JSON и в XML имеют точку расширения, которая допускает наличие дополнительной ин
формации (например, целевой Ресурс, который будет включен по значению), если данная информация
поддерживается. Для удобства представления JSON и XML в соответствии с вышеуказанным, не вклю
чают в себя неявные возможные расширения, которые допускают атрибуты целевого Ресурса. Поэтому
более точно данные представления могут быть записаны следующим образом:
Для JSON:
"myVolume": {*href*: string,...}
для XML.
cmyVolume href = "xs:anyURr>xs:any‘ </myVolume>
Однако для сокращения точки расширения исключены из сериализации Ресурсов.
5.5.7 тар (отображение)
Атрибуттар представляет собой «ключ/значение». В рамках атрибута каждый ключ должен ис
пользоваться только один раз. Ключи являются чувствительными к регистру.
Если значение атрибута типа «отображение» равно пустому отображению, то этот атрибут не
должен быть представлен в сериализации.
5.5.8 structure (структура)
Атрибуты данного типа являются составными атрибутами, состоящими из ряда вложенных атри
бутов. Для каждого атрибута данного типа существует дополнительная таблица, определяющая вло
женные атрибуты.
Вложенную структуру можно считать определением составного типа. Структуры могут иметь или
не иметь наименований. Примеры структуры, имеющей наименование, приведены в таблице 2.
Таблица 2 — Структура, имеющая наименование
Наименование
summary
Атрибут
Тип
О писание
low
integer
Число произошедшихсобытий с незначительной степенью важности
medium
integer
Число произошедшихсобытийсо среднейстепенью важности
high
integer
Число произошедших событий с высокойстепеньюважности
critical
integer
Число произошедших событий с критической степенью важности
Сориализация JSON:
В JSON наименование структуры (т. е. типа, который она представляет) не появляется никогда.
Другими словами, имеет ли структура наименование или нет. не имеет значения. Атрибут «Systemlnci-
dents» типа summary (см. выше), сериализован следующим образом:
"systemlncidents*: {
"low*: number,
"medium*: number.
"high": number.
"critical", number
)
Сериализация XML:
В XML наименование структуры (т.е. Наименование типа, который она представляет) не появля
ется никогда. Другими словами, имеет ли структура наименование или нет, не имеет значения. Пре
дыдущий пример «Systemlncidents» сериализован так. чтобы атрибуты структуры стали атрибутами
элемента-обертки XML<Systemlncidents>:
<systemlncidents low = *xs:integer" medium = "xs:integer" high = "xs:integer" critical = "xs.integer”/»
Примечание — В случае большого количества атрибутов атомарного типа в структуре они могут быть
такжепредставлены какдочерниеэлементыXMLдлялучшейчитаемости.Допускаютсяоба варианта,однакоодна
структурадолжна быть сериализованаодним и тем жеобразом во всех Ресурсах.
5.5.9 byte[] (массив байтов)
Произвольная совокупность байтов для представления блоков двоичных данных. Любые огра
ничения к данному типу для любого конкретного атрибута установлены в определении этого атрибута
21