Статус документа
Статус документа

ГОСТ Р ИСО/МЭК 29361-2012 Информационная технология (ИТ). Интероперабельность сетевых услуг. Базовый профиль WS-1. Версия 1.1

     3.3 Отказы SOAP

3.3.1 Идентификация отказов SOAP

Некоторые потребительские реализации для определения наличия отказа неправильно используют только код статуса HTTP. Так как существуют ситуации, при которых инфраструктура сети изменяет код статуса HTTP, и для большей надежности в Профиле требуется проверка оболочки. Отказ является оболочкой, которая имеет единственный дочерний элемент элемента soap:Body и этот дочерний элемент есть soap:Fault.

R1107 ПОЛУЧАТЕЛЬ ДОЛЖЕН интерпретировать сообщение SOAP как отказ, когда элемент soap:Body сообщения имеет единственного потомка soap:Fault.

3.3.2 Структура отказа SOAP

Профиль ограничивает содержимое элемента soap:Fault элементами, явно описанными в SOAP 1.1.

R1000 Когда ОБОЛОЧКА есть отказ, элемент soap:Fault НЕ ДОЛЖЕН иметь дочерних элементов, отличных от faultcode, faultstring, faultactor и detail.

Например,

НЕПРАВИЛЬНО:

ПРАВИЛЬНО:

3.3.3 Квалификация пространства имен отказа SOAP

Потомки элемента soap:Fault являются локальными для этого элемента, следовательно, квалификация пространства имен не требуется.

R1000 Когда ОБОЛОЧКА является отказом, дочерние элементы элемента soap:Fault ДОЛЖНЫ быть неквалифицированными.

Например,

    НЕПРАВИЛЬНО:

    ПРАВИЛЬНО:

3.3.4 Расширение отказа SOAP

В целях расширения допускается появление дополнительных атрибутов в элементе detail и дополнительных дочерних элементов элемента detail.

R1002 ПОЛУЧАТЕЛЬ ДОЛЖЕН принимать отказы, имеющие любое число элементов, включая нуль, дочерних для элемента detail. Такие потомки могут быть и могут не быть квалифицированными.

R1003 ПОЛУЧАТЕЛЬ ДОЛЖЕН принимать отказы, имеющие любое число квалифицированных и неквалифицированных атрибутов, включая нуль, в элементе detail. Пространство имен квалифицированных атрибутов может быть любым, отличным от "http://schemas.xmlsoap.org/soap/envelope/".

3.3.5 Язык отказа SOAP

Строки отказа являются человекочитаемыми указаниями на характер отказа. Следовательно, они могут быть на любом языке, а атрибут xml:lang может быть использован для указания языка строки отказа.