ГОСТ Р ИСО/МЭК 29361— 2012
R1015 ПОЛУЧАТЕП Ь ДОЛЖЕН сгенерировать отказ, если ему встретилась оболочка, элемент
документа которойне является soap:Envelope.
3.1.3 Квалификация пространства имен тела SOAP
Использование неквалифицированных имен элементов может вызвать конфликты имен, следователь
но, для потомков soap.Bodyдолжны использоваться квалифицированные имена.
R1014 Потомкиэлемента soap.BodyвОБОЛОЧКЕ ДОЛЖНЫ быть квалифицированнымпростран
ством имен.
3.1.4 Запрещенные конструкции
ДТД (декларация типа документа) и ИО (инструкция обработки) XML при их использовании воболоч
ках могут приводить куязвимостям безопасности, избыточной обработке и семантической двусмысленно
сти. Поэтому некоторые конструкции XML запрещены разделом 3 SOAP 1.1.
Хотя опубликованная поправка NE05 (см. http:/Avww.w3.org/XML/xml-names-19990114-errata) до
пускает появление декларации пространства имен xmlns:xml="
http://www.w3.org/XMU1998/namespace*.
некоторые старые процессоры рассматривают такую декларацию как ошибку. Следующие требования
обеспечивают, чтобы соответствующие артефакты имели наиболее широко возможную интероперабель
ность.
R1008 ОБОЛОЧ КА НЕ ДОЛЖНА содержать декларацию типа документа. С
R1009 ОБОЛОЧКА НЕДОЛЖНА содержать инструкции обработки. С
R1033 ОБОЛОЧКЕ НЕ СЛЕДУЕТ содержать декларацию пространства имен xmlns:xml=’httpJ/
>vww.w3.org/XML/199&’namospace". С
R1034 ОПИСАНИЮ НЕ СЛЕДУЕТ содержать декларацию пространства имен xmlns:xm!=’bttpJ/
vvmv.iv3. org/XMU1996/hamespace”. C
3.1.5 Приложения SOAP
Интерпретация элементов одного уровня, следующих за элементом soap:Body не ясна. Следова
тельно. такие элементы запрещены.
R1011 ОБОЛОЧКА НЕДОЛЖНА иметь дочерних элементов soap:Envelope. следующих за элемвн-
пюм soap:Body.
Настоящее требование уточняет расхождение между спецификацией SOAP 1.1 и Схемой XML
SOAP 1.1.
Например.
НЕПРАВИЛЬНО:
<soap:Enve!ope xmlns:soap=’
http://schemas.xmlsoap.ofg/soap/envelope/’
>
<soap:Body>
<p:Process xmlns:p=’httpJ/example.org/Operations’f>
</soap:Body>
<m:Data xmlns:m-
http://example.ofg/information’
>
Здесь некоторые данные с сообщением.
</m:Data>
</soap:Envelope>
ПРАВИЛЬНО:
<soap.Envelope xmlns:soap=’
http://schemas.xmlsoap.ofg/soap/envelope/’>
<soap:Body>
<p:Process xmlns:p-
http://example.org/Operations’
>
<m:Data xmins:m=
‘http://example.org/information’
>
Здесь некоторые данные с сообщением.
</m:Data>
</p:Process>
</soap:Body>
</soap:Envelope>
3.1.6 Атрибут SOAP encodingStyle
Атрибут soap.encodingStyle используют для указания применения конкретной схемы кодирования
данных вXML. Однако это привносит сложность, так как эта функция может также служитьдля использова
ния пространствами имен XML. Поэтому в Профиле предпочтительнее использовать литеральный, неко-
дированный XML.
R1005 ОБОЛОЧКА НЕДОЛЖНА содержать атрибуты soap:encodingStyleни для каких элементов,
пространством имен которыхявляется «httpy/schemas.xmlsoap.org/soap/cnvelope/».
7