WSDL asiakirja

WSDL-dokumentti on yksinkertainen XML-dokumentti.

Se sisältää sarjan määritelmiä, jotka kuvaa tiettyä web-palvelua.

WSDL-dokumentin rakenne

WSDL-dokumentti käyttää näitä pääelementtejä kuvataksensa tiettyä web-palvelua:

Elementti Määrittely
<portType> Web-palvelun suorittamat toiminnot
<message> Web-palvelun käyttämät viestit
<types> Web-palvelun käyttämät tietotyyppien
<binding> Web-palvelun käyttämä viestintäprotokolla

Yksi WSDL-dokumentin pää rakenne on tällainen:

<definitions>
<types>
   tyyppien määrittely........
</types>
<message>
   viestin määrittely....
</message>
<portType>
   portin määrittely......
</portType>
<binding>
   sidoksen määrittely...
</binding>
</definitions>

WSDL-dokumentti voi sisältää muita elementtejä, kuten laajennuselementtejä, sekä palveluelementtiä, joka voi yhdistää useiden web-palveluiden määrittelyt yhteen yksittäisessä WSDL-dokumentissa.

Täydellinen syntaksin ynnästys löytyy WSDL syntaksi Tämä luku.

WSDL portti

<portType> Elementti on tärkein WSDL-elementti.

Se voi kuvata web-palvelua, sitä voidaan suorittaa toimintoja ja liittyviä viestejä.

Voit verrata <portType>-elementtiä perinteiseen ohjelmointikieleen kuuluvaan kirjastoon (tai moduuliin tai luokkaan).

WSDL-viestit

<message> Elementti määrittää toiminnon tietoelementit.

Jokainen viesti koostuu yhdestä tai useammasta osasta. Voit vertailla näitä osia perinteisessä ohjelmointikielessä tapahtuvan funktiokutsun parametreihin.

WSDL-tyypit

<types> Elementti määrittää web-palvelun käyttämät tietotyyppien.

Ainekset käyttävät XML Schema -syntaksia mahdollisimman suurelle alustan riippumattomuudelle.

WSDL-sidokset

<binding> Element määrittää jokaiselle portille viestin muodon ja protokollan yksityiskohdat.

WSDL esimerkki

Tämä on jossain WSDL-dokumentin yksinkertaistettu osa:

<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>

Tässä esimerkissä<portType> Elementti määrittelee "glossaryTerms"-toiminnonPorttinimeä, määrittelee "getTerm"-toiminnonToimintonimeä.

Toiminto "getTerm" omaa nimeä "getTermRequest"Syöteviestija nimeltään "getTermResponse"Lähtöviesti.

<message> Elementti voi määritellä jokaisen viestinKomponenttija liittyvät datatyypit.

Klassiset ohjelmointimenetelmät verrattuna, glossaryTerms on kirjasto, ja "getTerm" on funktio, jolla on "getTermRequest"-syöterakenne ja "getTermResponse"-paluuarakenne.