This is an old revision of the document!
Table of Contents
Kombineret løsning for request-/response headers
Det har vist sig kompliceret at implementere det tidligere forslag til FMK headere som en del af soap-headeren. Som følge her af har der været ønske om at implementere en løsning, hvor FMK-headerne kun indeholder en begrænset, udvalgt gruppe elementer ifht. den oprindelige løsning. Derudover flyttes FMK-headerne ned i hhv. requestet/responset i soap-body. Det nye forslag kan ses her.
Da den originale løsning allerede er ved at blive implementeret flere steder, så er der et behov for, at FMK kan acceptere begge løsninger i overgangsperioden. Det løses ved at udvide det samlede request til at indeholde begge dele. Obligatoriske elementer gøres valgfri i requestet.
Der indføres en validering, der bekræfter at
- obligatoriske elementer eksisterer på én af de to former (Whitelisting findes enten som en del af FMKRequestHeader ELLER som et frit element i soapheaderen)
- requestet holder sig til én form, og ikke blander de to løsninger (Hvis whitelistheaderen er defineret som en del af FMKRequestHeader, så er OnBehalfOfHeader ikke defineret som frit element).
Responset gives tilbage med samme opbygning som requestet (Hvis FMKRequestHeader f.eks. er placeret i soapheaderen returneres FMKResponseHeader også i soapheader)
Request header
For original løsning:
- Alle elementer i FMKRequestHeader i soapheader
For ny løsning
Elementer “frit” i soapHeader:
- OnBehalfOfHeader
- WhitelistingHeader
- ConsentHeader
- MinLogSessionId
- PreflightOnly
- PartOfBatchOperation
Elementer i FMKRequestHeader i request:
- Paging
- ExtendedValidationHeader
<soap:Header ... > <!-- Valgfri FMKRequestHeader for original løsning--> <FMKRequestHeader minOccurs="0"> <OnBehalfOfHeader> ... </OnBehalfOfHeader> <WhitelistingHeader> ... </WhitelistingHeader> <ConsentHeader> ... </ConsentHeader> <MinLogSessionId>...</MinLogSessionId> <PreflightOnly/> <PartOfBatchOperation/> <Paging> ... </Paging> <ExtendedValidationHeader> ... </ExtendedValidationHeader> </FMKRequestHeader> <!-- Frie elementer for ny løsning, del 1 --> <OnBehalfOfHeader minOccurs="0"> ... </OnBehalfOfHeader> <WhitelistingHeader minOccurs="0"> ... </WhitelistingHeader> <ConsentHeader minOccurs="0"> ... </ConsentHeader> <MinLogSessionId minOccurs="0">...</MinLogSessionId> <PreflightOnly/ minOccurs="0"> <PartOfBatchOperation/ minOccurs="0"> </soap:Header> <soap:Body> <Request-body> <!-- FMKRequestHeader for ny løsning, del 2 --> <FMKRequestHeader minOccurs="0"> <Paging minOccurs="0"> ... </Paging> <ExtendedValidationHeader minOccurs="0"> ... </ExtendedValidationHeader> </FMKRequestHeader> ... <!-- Resterende request --> ... </Request-body> </soap:Body>
