ГОСТ Р ИСО/МЭК 40220—2015
4 Модель данных SOAP
Модель данных SOAP представляет определенные приложением структуры данных и значения
в виде ориентированного помеченного графа. Компоненты этого графа описаны в следующих подраз
делах.
Модель данных SOAP предназначена обеспечить отображение данных, не основанных на язы
ке XML. в представлении для передачи по каналам данных. Использование модели данных SOAP,
соответствующего кодирования SOAP (см. раздел 5) и/или представления SOAP RPC (см. раздел
6) НЕ ОБЯЗАТЕЛЬНО. Приложения, данные которых уже представлены в XML. могут не
использовать модель данных SOAP. Так как модель данных SOAP не является обязательной, данная
спецификация не требует, чтобы реализация узла SOAP поддерживала модель данных SOAP,
кодирование SOAP и/или представление SOAP RPC.
4.1 Ребра графа
Ребро графа исходит из узла графа и заканчивается в узле графа. Ребро, исходящее из узла
графа, называется исходящим ребром данного узла графа. Ребро, заканчивающееся в узле графа, на
зывается входящим ребром данного узла графа. Ребро МОЖЕТ исходить и заканчиваться в одном и том
же узле графа. У ребра МОЖЕТ быть только начальный узел графа, такое ребро является только исхо
дящим. У ребра МОЖЕТ быть только завершающий узел графа, такое ребро является только входящим.
Исходящие ребра узла графа МОГУТ различаться меткой или позицией. Позиция задает полный
порядок таких ребер. Таким образом, если какие-либо исходящие ребра данного узла различаются по
зицией, то все исходящие ребра этого узла различаются позицией.
4.1.1 Мотки ребер
Метка ребра — квалифицированное имя XML. Две метки ребра равны тогда и только тогда, когда
полные имена XML равны, то есть когда выполняются оба следующих утверждения:
1 Значения локальных имен совпадают.
2 Выполнено одно или оба из следующих утверждений:
1 У обоих имен отсутствуют значения пространства имен.
2 У обоих имен присутствуют значения пространства имен, и эти значения совпадают.
В 4.3 описано, как метки ребер и позиции ребер используются для различения элементов закоди
рованных значений. Дополнительная информация о сравнении квалифицированных имен XML пред
ставлена в стандарте «Схема XML» (XML Schema Part 2].
4.2 Узлы графа
Количество исходящих ребер узла графа может быть больше или равно нулю. У узла графа,
не имеющего исходящих ребер, может быть необязательное дополнительное лексическое значение.
У всех узлов графа имеется необязательное дополнительное имя типа, представленное
значением типа xs:QName из пространства имен «http:/Avww.w3.org/2001/XML Schema» (см. (XML
Schema Part 2]).
4.2.1 Одно- и многоссылочные узлы
Узел графа может быть односсылочным и многоссылочным. У односсылочного узла имеется
единственное входящее ребро. У многоссылочного узла число входящих ребер более одного.
4.3 Значения
Простое значение представляется как узел графа с лексическим значением.
Составное значение представляется как узел графа с нулевым или ббльшим количеством исходя
щих ребер следующим образом:
1 Узел графа, исходящие ребра которого отличаются исключительно метками, называется «струк тура».
Исходящие ребра структуры ДОЛЖНЫ быть маркированы различающимися именами (см. 4.1.1). 2 Узел
графа, исходящие ребра которого отличаются исключительно позицией, называется «мас
сив». Исходящие ребра массива НЕ ДОЛЖНЫ быть помечены.
5 Кодирование SOAP
Кодирование SOAP обеспечивает средство кодирования экземпляров данных, которые соответ
ствуют модели данных, описанной в разделе 4. Это кодирование МОЖЕТ использоваться для пере-
3