ГОСТ Р ИСО/МЭК 40220—2015
-ДОЛЖЕН генерировать отказ SOAP «env:Sender» с дополнительным кодом (subcode)
enc:MissinglD, если сообщение содержит информационный объект-атрибут ref. но не содержит ника
кого соответствующего информационного объекта-атрибута id (см. 5.1.5.3);
- ДОЛЖЕН генерировать отказ SOAP «env:Sender» с дополнительным кодом enc:DuplicatelD. если
сообщение содержит два или более информационных объекта-атрибута id с одним и тем же значе
нием (см. 5.1.5.3);
- МОЖЕТ генерировать отказ SOAP «env:Sender» с дополнительным кодом enc;UntypedValue,
если свойство «имя типа» закодированного узла графа не указано.
6 Представление SOAP RPC
Одна из целей протокола SOAP состоит в том, чтобы упростить обмен сообщениями, которые
легко отображаются на определения и вызовы методов и процедур в обычных языках программирова
ния. Для этого данный раздел определяет универсальное представление запросов и ответов вызова
удаленной процедуры (RPC). Данный раздел не определяет фактические привязки ни к каким опреде
ленным языкам программирования. Данное универсальное представление полностью независимо от
платформы, и, благодаря значительным усилиям. SOAP стал совместимым с сетью Интернет.
Как упомянуто в разделе 4, использование и реализация представления SOAP RPC НЕ ОБЯЗА
ТЕЛЬНЫ.
Информационный объект-атрибут SOAP encodingStyle (ИСО/МЭК 40210, пункт 8.1.1] использу
ется для указания стиля кодирования представления RPC. Кодирование, определенное таким образом,
ДОЛЖНО поддерживать требования, изложенные в разделе 4. Стиль кодирования, определенный в
разделе 5. поддерживает такие конструкции и поэтому подходит для использования в представлении
SOAP RPC.
Представление SOAP RPC не основывается ни на каких привязках протокола SOAP. Когда ис
пользуется привязка SOAP к HTTP, вызов RPC легко отображается на запрос HTTP, и ответ RPC ото
бражается на ответ HTTP (см. раздел 9). Однако, представление SOAP RPC не ограничено привязкой
SOAP к HTTP.
Чтобы вызвать RPC. необходима следующая информация:
- адрес целевого узла SOAP;
- имя процедуры или имя метода;
- идентификационные данные и значения любых параметров, которые должны быть переданы
процедуре или методу. Параметрам, используемым для идентификации Веб-ресурсов, СЛЕДУЕТ от
личаться от параметров, представляющих данные или управляющую информацию (см. 6.1.1),
-значения для свойств, требуемых используемой привязкой. Например. «GET» или «POST» для
свойства «http^/
www.w3.org/2003/05/soap/features.^eb-method/Method»
(см. 8.4);
- дополнительные данные заголовка.
SOAP RPC использует привязку протокола для обеспечения механизма переноса URI цепового
узла SOAP. Для HTTP протокола URI запроса указывает на ресурс, к которому обращен вызов. Кроме
требования на правильность URI, SOAP не устанавливает ограничений на форму идентификатора (см.
RFC 3986 (RFC 3986] для получения дополнительной информации по URI). В 6.1.1 далее обсуждается
использование URI для идентификации ресурсов RPC.
Представление SOAP RPC использует шаблоны обмена сообщениями «запрос-ответ» и «ответ
SOAP» (см. 8.2 и 8.3). Представление SOAP RPC МОЖЕТ использоваться с другими шаблонами обме на
сообщениями, но это выходит за рамки данной спецификации.
6.1 Использование RPC в сети Интернет
СЛЕДУЕТ руководствоваться нижеизложенными принципами при развертывании приложений
SOAP RPC в сети Интернет.
6.1.1 Идентификация ресурсов RPC
В сети Интернет ресурсы идентифицируются с помощью URI, но, согласно общим соглашениям
в программировании, идентификационная информация передается процедурам в параметрах или в
именах самих процедур. Например, вызов:
updateQuantitylnStock (PartNumber = «123», NewQuantity = «200»)
7