WSDL dokument

WSDL-dokumenter er blot en simpel XML-dokument.

Det indeholder en række definitioner, der beskriver en bestemt web service.

WSDL-dokumentstruktur

WSDL-dokumenter bruger disse vigtigste elementer til at beskrive en bestemt web service:

Element Definition
<portType> Operationer udført af web service
<message> Beskeder brugt af web service
<types> Datatyper brugt af web service
<binding> Kommunikationsprotokollen brugt af web service

Den primære struktur af et WSDL-dokument er noget i den stil:

<definitions>
<types>
   definition of types........
</types>
<message>
   definition of a message....
</message>
<portType>
   definition of a port.......
</portType>
<binding>
   definition of a binding....
</binding>
</definitions>

WSDL-dokumenter kan indeholde andre elementer, såsom extension-elementer, samt et service-element, der kan kombinere definitioner af flere web services i et enkelt WSDL-dokument.

For en fuld syntaksoversigt, besøg WSDL syntaks Dette afsnit.

WSDL port

<portType> Element er de vigtigste WSDL-elementer.

Det kan beskrive en web service, en kan udføre operation, samt de relevante beskeder.

Man kan sammenligne <portType>-elementet med en bibliotek i traditionel programmeringssprog (eller en modul, eller en klasse).

WSDL beskeder

<message> Element definerer dataelementerne for en operation.

Hver besked består af en eller flere komponenter. Disse komponenter kan sammenlignes med parameterne i en traditionel programmeringssprog-funktion kald.

WSDL typer

<types> Element definerer de datatyper, der bruges af web service.

For at opnå maksimal platformneutralitet bruger WSDL XML Schema-sprog til at definere datatyper.

WSDL Bindings

<binding> Element definerer meldingsformat og protokolldetaljer for hver port.

WSDL eksempel

Dette er en forenklet del af en WSDL-dokument:

<message name="getTermRequest">
   <part name="term" type="xs:string"/>
</message>
<message name="getTermResponse">
   <part name="value" type="xs:string"/>
</message>
<portType name="glossaryTerms">
  <operation name="getTerm">
        <input message="getTermRequest"/>
        <output message="getTermResponse"/>
  </operation>
</portType>

I dette eksempel:<portType> element definere "glossaryTerms" som en bestemtportnavn, definere "getTerm" som en bestemtOperationnavn.

Operationen "getTerm" har et navn kaldet "getTermRequest".Indgangsmeddelelserog en meddelelse kaldet "getTermResponse".Udgangsmeddelelser.

<message> Elementer kan definere hver meddelelsesKomponenterog de tilhørende datatyper.

I modsætning til traditionel programmering er glossaryTerms en bibliotek og "getTerm" er en funktion med inputparametret "getTermRequest" og outputparametret getTermResponse.