WSDL Документ
Документ WSDL - это просто простой XML-документ.
Он содержит ряд определений, описывающих веб-сервис.
Структура WSDL-документа
Документы WSDL используют эти основные элементы для описания веб-службы:
| Элемент | Определение |
|---|---|
| <portType> | Операции, выполняемые веб-службой |
| <message> | Сообщения, используемые веб-службой |
| <types> | Типы данных, используемые веб-службой |
| <binding> | Протоколы связи, используемые веб-службой |
Основная структура документа WSDL похожа на следующую:
Пример документа WSDL
Документ WSDL может содержать другие элементы, такие как элементы расширения, и элемент service. Этот элемент может объединять определения нескольких веб-сервисов в один документ WSDL.
Порт WSDL
<portType>Этот элемент — самый важный элемент WSDL.
Он может описывать веб-сервис, операции, которые могут быть выполнены, и связанные сообщения.
Элемент <portType> можно сравнить с библиотекой функций (или модулем, или классом) в традиционных языках программирования.
Сообщение WSDL
<message>Этот элемент определяет элементы данных операции.
Каждое сообщение состоит из одной или нескольких частей. Эти части можно сравнить с параметрами вызова функции в традиционных языках программирования.
Типы WSDL
<types>Элемент определяет типы данных, используемые веб-службой.
Для максимальной независимости от платформы WSDL использует синтаксис XML Schema для определения типов данных.
Привязки WSDL
<binding>Элемент определяет формат сообщения и детали протокола для каждого порта.
Пример WSDL
Это упрощенный фрагмент документа WSDL:
Пример
В этом примере,<portType>Элемент определяет "glossaryTerms" как имя определенногопорта, и определяет "getTerm" как определеннуюоперациюимя.
Операция "getTerm" имеетвходное сообщение с именем "getTermRequest", ивыходное сообщение с именем "getTermResponse".。
<message>Элемент может определятьчастикаждого сообщения, и связанные типы данных.
По сравнению с традиционным программированием, glossaryTerms — это библиотека функций, а "getTerm" — это функция с входным параметром "getTermRequest" и возвращаемым параметром getTermResponse.
Другие расширения