Что такое WSDL

«Что такое WSDL» — вопрос из категории API и интеграции, который задают на 46% собеседований Системный Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

WSDL (Web Services Description Language) — это XML-формат для описания веб-сервисов, работающих по протоколу SOAP. Он определяет структуру запросов и ответов, типы данных, методы и адреса конечных точек (endpoints).

Пример WSDL-фрагмента:

<definitions name="HelloService"
   targetNamespace="http://example.com/wsdl/HelloService.wsdl"
   xmlns="http://schemas.xmlsoap.org/wsdl/">

   <message name="SayHelloRequest">
      <part name="name" type="xs:string"/>
   </message>

   <portType name="Hello_PortType">
      <operation name="sayHello">
         <input message="tns:SayHelloRequest"/>
      </operation>
   </portType>
</definitions>

Ключевые элементы:

  • <types> — XML-схема (XSD) для данных.
  • <message> — структура запроса/ответа.
  • <portType> — операции сервиса (аналогично интерфейсу).
  • <binding> — протокол (SOAP) и стиль (RPC/Document).
  • <service> — URL сервиса.

Используется для генерации клиентского кода (например, через wsimport в Java). Устарел в пользу REST/OpenAPI, но встречается в legacy-системах.