ГОСТ Р ИСО/МЭК 29361— 2012
В сообщении есть <Ь>много</Ь> элементов,
которые я не понимаю
</m:msg>
</soap:detail>
</soap:Fault>
ПРАВИЛЬНО:
<soap:Fault xmlns:soap-
http://schemas.xmlsoap.org/soap/envelope/’
xm lns-’ >
<faultcode>soap:Client</faultcode>
<faultstnng>lnvalid message format</faultstring>
<faultactor>
http://example.org/someactor</faultactor>
<detail>
<m:msg xmlns:m-
http://example.org/faults/exceptions’>
В сообщении есть <Ь>много</Ь> элементов,
которые я не понимаю
</m:msg>
</detail>
</soap:Fault>
3.3.4 Расширение отказа SOAP
В целях расширения допускается появление дополнительных атрибутов вэлементе detail идополни
тельныхдочерних элементов элемента detail.
R1002 ПОЛУЧАТЕЛЬ ДОЛЖЕН принимать отказы, имеющие любое число элементов, включая
нуль, дочерних для элемента detail. Такие потомкимогут быть и могут не быть квалифицированными.
R1003 ПОЛУЧАТЕЛЬ ДОЛЖЕН принимать отказы, имеющие любое число квалифицированных и
неквалифицированных атрибутов, включаянуль, в элементе detail. Пространство имен квалифициро
ванных атрибутов может быть любым, отличным от "httpJ/schemas.xmlsoap.org/soap/envelope/".
3.3.5 Язык отказа SOAP
Строки отказа являются человекочитаемыми указаниями на характер отказа. Следовательно, они могут
быть на любом языке, а атрибут xmlilang может быть использован для указания языка строки отказа.
Это требование конфликтует со схемой для SOAP вего URL пространства имен. Схема без конфлик
тов находится в*http:/Avs-i.org/profiles/basic/1 .1/soap-envelope-2004-01 -21 ,xsdM.
R1016 ПОЛУЧАТЕЛЬ ДОЛЖЕН принимать отказы, имеющие атрибут xmUang в элементе
faultstring.
3.3.6 Потребительские коды отказов SOAP
SOAP 1.1 допускает появление пользовательских кодов отказов в элементе faultcode путем исполь
зования нотации «точка».
Использование этого метода для расширения смысла определенных в SOAP 1.1 кодов отказов мо
жет привести к коллизии пространства имен. Следовательно, его использования следует избегать, так как
оно может вызвать проблемы с интероперабельностью, когда одно и тоже имя используется справа от «.»
(точки)для передачи разных смыслов.
Вместо этого в Профиле одобряется использование определенных в SOAP 1.1 кодов отказов вместе
сдополнительной информацией вэлементе detail для передачи характера отказа.
Альтернативнодопустимо определять потребительские коды отказов в пространстве имен, контроли
руемом конкретным уполномоченным.
Уже существует ряд спецификаций, определяющих потребительские коды отказов с использовани
ем нотации «.» (точка). Их использование в будущих спецификациях запрещено.
R1004 Когда ОБОЛОЧКА содержит элемент faultcode. содержимому этого элемента СЛЕДУЕТ
бытьлибо одним из кодов отказов, определенных в SOAP 1.1 (с предоставлением, при необходимости,
дополнителыюй информации в элементе detail), либо Олате, пространство имен которого контроли
руется уполномоченным, определяющим отказ.
R1031 Когда ОБОЛОЧКА содержит элемент faultcode. в содержимом этого элемента для уточне
ния смысла отказа НЕ СЛЕДУЕТ использовать нотацию SOAP 1.1 «точках.
Рекомендуется, чтобы приложения, которым требуются потребительские коды отказов, либо исполь
зовали определенные в SOAP 1.1 коды отказов и прилагали дополнительную информацию в элементе
подробностей, либо определяли эти коды в пространстве имен, контролируемым указанным уполномочен
ным.
Ю