ГОСТ Р ИСО/МЭК 40220—2015
Приложения МОГУТ обрабатывать вызовы с недостающими параметрами, но также МОГУТ не
обрабатывать такие вызовы и возвращать отказы.
6.2.2 Ответ RPC
Ответ RPC моделируется следующим образом:
- ответ представляется единственной структурой, содержащей исходящее ребро для возвращае
мого значения и по исходящему ребру для каждого исходящего [out] или входящего/исходящего [in/out]
параметра. Имя структуры не имеет значения;
- каждый параметр представляется исходящим ребром с меткой, соответствующей имени пара
метра. Для представления названий параметров, которые не являются допустимыми XML именами,
СЛЕДУЕТ использовать соглашения из приложения В;
-непустое возвращаемое значение представляется следующим образом:
1 ДОЛЖНО присутствовать исходящее ребро с локальным именем result и именем пространства
имен «
http://www.w3.org/2003/05/soap-rpc».
заканчивающееся в конечном узле;
2 Тип конечного узла — xs:QName и его значение — имя исходящего ребра, которое заканчивает
ся в фактическом возвращаемом значении;
- если возвращаемое значение процедуры пустое, то исходящее ребро с локальным именем result
и именем пространства имен
«http://wwvv.w3.org/2003/05/soap-rpc»
НЕ ДОЛЖНО присутствовать:
- отказы вызова обрабатываются согласно правилам, изложенным в 6.4. Если привязка протокола
накладывает дополнительные правила для обработки отказа, то они также ДОЛЖНЫ быть выполнены.
6.2.3 Ограничение на кодирование SOAP
При использовании кодирования SOAP (см. раздел 5) в сочетании с соглашением RPC. описан
ным здесь, элемент Body SOAP ДОЛЖЕН содержать единственный дочерний информационный объ
ект-элемент. который представляет собой сериализованную структуру вызова или ответа RPC.
6.3 RPC и заголовок SOAP
Дополнительная информация, относящаяся к кодированию вызова RPC. но не являющаяся ча
стью формальной сигнатуры процедуры или метода. МОЖЕТ быть представлена в конверте SOAP,
переносящем RPC вызов или ответ. Такая дополнительная информация ДОЛЖНА быть представлена в
виде блоков заголовка SOAP.
6.4 Отказы RPC
Представление SOAP RPC вводит дополнительные, представленные на внутреннем коде, обо
значения отказов SOAP, которые используются в сочетании с кодами отказов (см. [ИСО/МЭК 40210,
пункт 8.4.6 «Коды отказа SOAP»]).
Обошибках, возникающих во время выполнения вызовов RPC. сообщается согласно следующим
правилам:
1 Отказ со значением Value элемента Code, равным «env:Receiver». СЛЕДУЕТ генерировать, если
получатель временно не может обработать сообщение, например, в случае отсутствия достаточной
памяти.
При м е ча н и е — Всюду в данном документе термин «значение Value элемента Code» используется как
сокращение для «значение дочернего информационного объекта-эле/гента Value информационного объекта-
элемента Code» (см. [ИСО/МЭК 40210. пункт 8.4.1]).
2 Отказ со значением Value элемента Code, равным «env:DataEncoding Unknown». СЛЕДУЕТ ге
нерировать. если параметры закодированы в кодировку, неизвестную получателю.
3 Отказ со значением Value элемента Code, равным «env:Sender». и значением Value элемента
Subcode, равным «rpc:ProcedureNotPresent», МОЖЕТ быть сгенерирован, если получатель не поддер
живает определенную процедуру или метод.
П р и м е ч а н и е — Всюду в данном документе термин «значение Value элемента Subcode» используется
как сокращение для «значение дочернего информационного объекта-элемента Value информационного объек
та-элемента Subcode» (см. (ИСО/МЭК 40210. подпункт 8.4.1.2]).
4 Отказ со значением Value элемента Code, равным «env:Sendor». и значением Value элемента
Subcode, равным «rpc:BadArguments». ДОЛЖЕН быть сгенерирован, когда получатель не может произ-
9