SOAP Header-elementti

Vapaaehtoiset SOAP Header-elementit sisältävät otsikkotietoja.

SOAP Header-elementti

Vapaaehtoiset SOAP Header-elementit voivat sisältää tietoa SOAP-viestin sovelluskohtaisista tiedoista (esim. todennus, maksaminen jne.). Jos Header-elementti tarjotaan, se on oltava Envelope-elementin ensimmäinen lapsi-elementti.

Huomautus:Kaikkien Header-elementtien välittömät alielementit täytyy olla kelvollisia nimiavaruuksia.

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"
<soap:Header>
<m:Trans
xmlns:m="http://www.codew3c.com/transaction/"
soap:mustUnderstand="1">234</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

Yllä olevassa esimerkissä on otsikko, joka sisältää "Trans"-elementin arvolla 234, ja "mustUnderstand"-ominaisuuden arvolla "1".

SOAP määrittelee kolme ominaisuutta oletusnimiavaruudessa ("http://www.w3.org/2001/12/soap-envelope"). Nämä kolme ominaisuutta ovat: actor, mustUnderstand ja encodingStyle. Näiden määritettyjen ominaisuuksien avulla voidaan määrittää, miten SOAP-otsikko käsittelee SOAP-viestin.

actor-ominaisuus

Viesti voidaan levittää SOAP-viestinä lähettäjältä vastaanottajaan eri pisteiden kautta viestipolun pituudella. Ei kaikki SOAP-viestin osat suunnitellaan lähetettäväksi SOAP-viestin lopulliseen kohdepisteeseen, mutta toisaalta, saattaa olla suunniteltu lähetettäväksi viestipolun yhteen tai useisiin pisteisiin.

SOAP:n actor-ominaisuus voidaan käyttää osoittamaan Header-elementti tiettyyn kohdepisteeseen.

Grammatiikka

soap:actor="URI"

Esimerkki

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"
<soap:Header>
<m:Trans
xmlns:m="http://www.codew3c.com/transaction/"
soap:actor="http://www.codew3c.com/appml/">
234
</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

mustUnderstand-ominaisuus

SOAP:n mustUnderstand-ominaisuus voidaan käyttää osoittamaan, onko otsikkoelementti pakollinen vai valinnainen vastaanottajalle, joka käsittelee sitä.

Jos lisäät "mustUnderstand="1" Header-elementin johonkin alielementtiin, se voi ilmoittaa, että vastaanottajan on hyväksyttävä tämä elementti. Jos vastaanottaja ei voi hyväksyä tätä elementtiä, se on poistettava käytöstä käsiteltäessä tätä otsikkoa.

Grammatiikka

soap:mustUnderstand="0|1"

Esimerkki

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"
<soap:Header>
<m:Trans
xmlns:m="http://www.codew3c.com/transaction/"
soap:mustUnderstand="1">
234
</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

encodingStyle-ominaisuus

SOAP:n encodingStyle-ominaisuus on selitetty edellisessä luvussa.