Я использую веб-сервис, где WSDL описывает один строковый элемент в каждом запросе и ответе.
<s:element name="SERVICE">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="SERVICERequest" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
В эту строку встроен ряд простых XML-элементов, у которых экранированы теги.
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<SERVICE xmlns="https://services.transcard.com/">
<SERVICERequest>
<SERVICE_REQ>
<PARAM_1>
Value1
</PARAM_1>
<PARAM_2>
Value2
</PARAM_2>
<PARAM_3>
Value3
</PARAM_3>
</SERVICE_REQ>
</SERVICERequest>
</SERVICE>
</soap:Body>
</soap:Envelope>
Это формат ответов службы и формат, ожидаемый для входящих запросов.
Это часто встречается в интерфейсах SOAP? На практике это делает внутренние параметры недоступными для библиотеки SOAP, которую я использую. (soap4r) Любые отзывы от ветеранов SOAP приветствуются.