WSDL

Web Services Description Language
Информация
Файлово разширение.wsdl
Тип MIMEapplication/wsdl+xml
СобственикWorld Wide Web Consortium

WSDL (на английски: Web Service Definition Language) е XML базиран език, който предоставя модел, описващ уеб услуги.

WSDL представлява XML формат, който описва мрежови услуги като множество от крайни точки, които оперират чрез съобщения. Те съдържат или документно ориентирана, или процедурно ориентирана информация. Операциите и съобщенията се описват абстрактно и тогава се връзват с конкретен мрежови протокол и формат на съобщението, за да се дефинира крайна точка. Свързаните конкретни крайни точки се комбинират в абстрактни крайни точки (услуги). WSDL е разширим, за да позволи описването на крайни точки и техните съобщения, без значение от формата на съобщението или мрежовите протоколи, които се използват за комуникация.

Основните елементи на един wsdl документ са:

Definitions – това е най-външният елемент на един wsdl документ. Тук се дефинира targetNamespace, чрез който се референцират дъщерните му елементи.

Types – дъщерен елемент на definition. В него с помощта на XML Schema биват описани елементи или типове, които ще служат за съобщения на уеб услугата. С помощта на тези елементи може да се създава съобщението или да се валидира получено такова спрямо схемата му.

Message – дъщерен елемент на definition. Чрез елемента message се дефинира съобщение, като използваме тип или елемент от Types. Това съобщение се използва в уеб услугата.

PortType – дъщерен елемент на definition. Чрез него се дефинира interface на операцията – Request-Response (Пращане и получаване), Request-Only (само пращане), Solistic-Response (получаване и пращане). Освен дефинирането на интерфейс, тук се референцират и съобщенията, които ще бъдат ползвани от дадена операция.

Binding – дъщерен елемент на definition. Той референцира конкретен portType и описва подробно начина на пренасяне на съобщенията в даден транспортен протокол (SOAP, HTTP, JMS, JAVA).

Service – дъщерен елемент на definition. Това е елементът, който описва уеб услугата на най-високо ниво задавайки ѝ само име.

Port – дъщерен елемент на Service. Port референцира конкретен Binding елемент, за да специфицира транспорта, интерфейса и съобщенията, който ще бъдат обменени при извикване на дадената уеб услуга. Той също така специфицира мястото, където се намира уеб услугата (мястото, където съобщенията ще бъдат изпратени).

  • WSDL 1.0 (септември 2000) е разработен от IBM, Microsoft и Ariba, за да опишат своите инструменти SOAP уеб услуги. Реализацията е чрез комбиниране на два езика за описание: NASSL (Network Application Service Specification Language) от IBM и SDL (Service Description Language) от Microsoft.
  • WSDL 1.1, публикуван през март 2001 г., е формализирането на WSDL 1.0. Няма сериозни промени, въведени между 1.0 и 1.1.
  • WSDL 1.2 (юни 2003 г.) все още е работен проект на W3C. Според W3C WSDL 1.2 е по-лесен и по-гъвкав от предишната версия. WSDL 1.2 прави опит за премахване на оперативно съвместими функции. WSDL 1.2 не е поддържан от голямата част от SOAP сървърни / доставчиците.
  • WSDL 2.0 на W3C излиза юни 2007 година. WSDL 1.2 е преименувано на WSDL 2.0, тъй като има съществени различия от WSDL 1.1.