WSDL (web services description language)

Web Services Description Language (WSDL) ist eine Beschreibungssprache - oder auch Metasprache - auf XML-Basis für Webservices. Mit Webservices werden die Dienste umschrieben, die zur Bereitstellung von Funktionalität über das Web mittels Nachrichtenaustausch und entfernter Funktionsaufrufe führen. WSDL ist dabei nicht nur unabhängig von einer bestimmten Plattform, sondern auch nicht abhängig von spezifischen Programmiersprachen oder Protokollen. WSDL wurde vom World Wide Web Consortium (W3C) in einer eigenen Empfehlung standardisiert, die unter dem unten genannten Link zur Verfügung steht.


Ein WSDL-Dokument ist somit eine Datei, in welcher Informationen über die Schnittstellen eines Webservices in der Metasprache WSDL zusammengefasst werden. Beispielsweise lässt sich mit Unterstützung der WSDL in einer Client-Server-Architektur definieren, welche Methoden bei der Server-Komponente vom Client genutzt werden können, welche Parameter dabei berücksichtigt werden müssen und was die eventuellen Rückgabewerte der Methoden sind. Für die Entwicklung von WSDL-Dokumenten stehen verschiedene Tools zur Verfügung, so dass die Dateien auch in einer komfortablen Entwicklungsumgebung zu erstellen sind.

WSDL als Beschreibungssprache von Webservices

Die WSDL definiert eine XML-Sprache zur Beschreibung von Webservices und stellt damit quasi ein in der Extensible Markup Language (XML) verfasstes Vokabular zur Charakteristik von Schnittstellen (Interfaces) sowie deren Operationen und Diensten zur Verfügung. Dabei werden die abstrakte und die konkrete Beschreibung unterschieden. Die abstrakte Beschreibung umfasst die Funktionalität eines Dienstes, währenddessen die konkrete Beschreibung die genaue Netzwerkadresse, das Nachrichtenformat oder das Übertragungsprotokoll eines Dienstes zusammenfasst. Durch diese Trennung wird eine allgemein verwendbare und modulare Description der Schnittstellen in mehreren WSDL-Dokumenten möglich. Die Angabe unter welcher Adresse ein Web Service zur Verfügung steht, wird dabei über eine Service Registry bereitgestellt, insofern müssen Änderungen der URL nicht mehr allen Clients zuvor mitgeteilt werden.

Die Motivation zur Entwicklung der WDSL basierte auf einer Initiative so einflussreicher Firmen wie Microsoft, IBM und Ariba. Der W3C schließlich veröffentlichte daraufhin im Jahr 2001 die Version 1.1, der dann 2006 die Version 2.0 folgte. Ein Hinweis zur englischsprachigen Literatur bzgl. WSDL - im Englischen spricht sich das "wiz-dull" aus.

Eine WSDL-Datei ist streng hierarchisch aufgebaut und deren wichtigsten XML-Elemente der WSDL 2.0 sind:

>types<, hier sind jene Datentypen enthalten, die dann nachfolgend in den Nachrichten ver-wendet werden können. Dabei können auch alle Datentypen definiert werden, die nicht vom XML-Schema-Standard berücksichtigt werden.

>messages<, darunter wird die abstrakte Definitionen der übertragenden Daten zusammenfasst.

>interface<, durch dieses Element wird eine Menge von Nachrichten beschrieben, die ein Service senden oder empfangen kann.

>binding<, beschreibt das "wie" der Kommunikation zwischen einem Webservice und einem Client. Dabei wird definiert, welches Transportprotokoll, beispielsweise SOAP und http, verwendet und wie die Daten der einzelnen Operationen codiert werden sollen.

>endpoint<, definiert sogenannte Zugangspunkte, über die sich ein Dienst erreichen lässt.

>service<, zuletzt wird eine konkrete Adresse angegeben, wo der Webservice zu erreichen ist. Verknüpft damit sind auch die Zugangspunkte des gewählten Dienstes.

>documentation<, enthält eine Textbeschreibung des zuvor definierten Dienstes. Der Text ist frei wählbar, so dass auch weitere Angaben beispielsweise zur Nutzung des Dienstes gemacht werden können.

Beispiel für eine WSDL-Beschreibung

Beispiel für eine WSDL-Beschreibung

Ein Vorteil von WSDL-Dateien ist es, das diesbezüglich eine einfache und standardisierte Kommunikation erfolgen kann. Doch kann auch die WSDL-Syntax so komplex sein, dass die manuelle Erstellung mit einem einfachen Texteditor wenig komfortabel ist. Dazu wird mit dem kommerziellen Editor XMLSpy eine grafische Möglichkeit zur Erstellung von WSDL-Dateien geboten. Verfügbar sind aber auch verschiedene freie Tools wie etwa die Eclipse Web Tools Platform (WTP), die Funktionen wie Wizards zur Generierung von WDSL-Dokumenten bereitstellen. Neben dem grafischen Editor für XML-Schema und WSDL besteht das WTP-Projekt noch aus Quelltexteditoren u.a. für Sprachen wie Java Server Pages (JSP), Cascading Style Sheet (CSS), JavaScript, WSDL oder HTML.

http://www.w3.org/TR/2007/REC-wsdl20-20070626

http://www.w3.org/TR/wsdl20

http://www.w3.org./TR/wsdl20-adjuncts/

Informationen zum Artikel
Deutsch:
Englisch: web services description language - WSDL
Veröffentlicht: 28.10.2013
Wörter: 650
Tags: #Beschreibungssprachen
Links: AP (access point), Adresse, Beschreibungssprache, Client, Client-Server-Architektur