В настоящем разделе Профиля содержатся ссылки на следующие спецификации (или их разделы):
- SOAP 1.1, раздел 2.
В SOAP 1.1 определена модель обработки оболочек. В частности, определены правила обработки блоков заголовка и тела оболочки. Также определены правила, относящиеся к генерации отказа. В Профиле установлены следующие ограничения на модель обработки:
3.2.1 Обязательные заголовки
Модель обработки SOAP 1.1 недоопределена в отношении обработки обязательных блоков заголовков. Обязательным является тот блок заголовка, дочерний элемент soap:Header которого порождает атрибут soap:mustUnderstand со значением "1".
R1025 ПОЛУЧАТЕЛЬ ДОЛЖЕН обрабатывать оболочки таким образом, чтобы это выглядело так, как если бы обработка обязательных блоков осуществлялась до какой-либо фактической обработки. SOAP12
Это требование гарантирует, что нежелательные побочные эффекты не будут появляться в результате объявления обязательного блока заголовка после обработки других частей сообщения.
3.2.2 Генерация отказа mustUnderstand
В Профиле требуется, чтобы получатели генерировали отказ, когда встречают направленные им блоки заголовков, которые они не понимают.
R1027 ПОЛУЧАТЕЛЬ ДОЛЖЕН генерировать отказ "soap:MustUnderstand", когда оболочка содержит направленный ему (через soap:actor) обязательный блок заголовка (т.е., имеющий атрибут soap:mustUnderstand со значением "1"), который получатель не понимает. SOAP12
3.2.3 Обработка отказа SOAP
При генерации отказа дальнейшая обработка не осуществляется. В обмене запрос-ответ сообщение об отказе должно быть передано отправителю получателем, а пользователю должно быть просигнализировано о какой-либо ошибке прикладного уровня.
Как в SOAP, так и в настоящем Профиле термин "генерировать" используют для обозначения создания отказа SOAP. Генерация отказа отличается от его передачи, которая в некоторых случаях и не требуется.
R1028 Когда ПОЛУЧАТЕЛЬ генерирует отказ, НЕ СЛЕДУЕТ проводить дальнейшую обработку оболочки SOAP за исключением той, которая необходима для возврата к предыдущему шагу или компенсации результатов обработки оболочки до генерации отказа. SOAP12
R1029 Когда нормальный результат обработки оболочки SOAP привел бы к передаче ответа SOAP, но вместо этого был сгенерирован отказ, ПОЛУЧАТЕЛЬ ДОЛЖЕН передать отказ вместо ответа. SOAP12
R1030 ПОЛУЧАТЕЛЮ, генерирующему отказ, СЛЕДУЕТ известить конечного пользователя о том, что был сгенерирован отказ, любыми, пригодными для данных обстоятельств средствами. SOAP12