ГОСТ Р ИСО/МЭК 29362—2013
<SOAP-ENV:Body xmins:types=’
http://example.com/mimetypes
">
<types:ClaimRefNo>...............</types:ClaimRefNo>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
4.5 Спецификация корневой части
Сообщения SOAP с вложениями требуют, чтобы корневая часть составного/связанного пакета
содержала конверт SOAP, но привязка WSDL MIME не объясняет, как это должно определяться.
R2911 Элемент mime:multipartRelated в ОПИСАНИИ ДОЛЖЕН содержать в числе его дочерних
элементов mime.part ровно один элемент mime.part. содержащий дочерний элемент soapbind.body. С
В привязке WSDL MIME элемент mime:part. содержащий soapbind:body, описывает корневую
часть MIME, необходимую для сообщений SOAP с вложениями.
Пример:
НЕПРАВИЛЬНО:
<wsdl:definitions xmlns:xsd=’http:/Av\w/. w3.org/2001/XMLSchema*
xmlns:soapbind=*
http://schemas.xmlsoap.org/wsdl/soapf
xmlns:wsdl="
http://schemas.xmlsoap.org/wsdlf
xm!ns:mirne="
http://schemas.xmlsoap.org/wsdl/rnimer
targetNamespace="
http://example.com/mimesvsdr
xmlns:tns=*
http://example.com/mimewsdr>
<wsdl:binding name-’aBinding" type=’tns:aPortType’>
<soapbind:binding style=*rpc”
lransport=*
http://schemas.xmlsoap.org/soap/http7>
<wsdl:operation name="anOperation,,>
<soap:operation soapAction="
http://example.com/soapaction7>
<wsdl:input>
<mime:multipartRelated>
<mime:part>
<soapbind:body use=*literal"
namespace=*
http://example.com/mimetypes7>
</mime:part>
<mime:part>
<soapbind:body use=*literal"
namespace=*
http://example.com/mimetypes7>
</mime:part>
</mime:multipartRelated>
</wsdl:input>
<wsdl:output>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<Avsdl:definitions>
4.6 Спецификация заголовков SOAP в корневой части
В спецификации WSDL1.1 не указано, допускается ли элемент soapbind:header как дочерний
элемента mime.part наряду с элементом soapbind.body. Спецификация сообщений SOAP с
вложениями требует, чтобы корневая часть составного сообщения содержала конверт SOAP, однако в
спецификации WSDL1.1 нет четких указаний, как определить эту часть. Поскольку спецификация
WSDL1.1определяет, что элемент mime.part используется для описания каждой части
составного/связанного сообщения, содержание элемента mime.part, представляющего основную
часть составного сообщения, должно полностью определить конверт SOAP, включая элементы
soapbind.body и soapbind.header, таким же образом, как это было бы сделано в случае отсутствия
расширения привязки WSDL MIME.
R2905 Элемент soapbind:header МОЖЕТ быть включен в ОПИСАНИЕ как дочерний элемент
элемента mime:part. С
R2906 Элемент soapbind.header ОПИСАНИЯ НЕ ДОЛЖЕН быть включен в часть mime.part.
которая не является корневой, содержащей элемент soapbind.body. С
15