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 og response til at indeholde begge dele. Obligatoriske elementer gøres valgfri for nu.
Der indføres en validering, der bekræfter at
De sidste to punkter bør sikre, at klienter ikke kommer til at implementere en hybrid mellem de to.
Elementer “frit” i soapHeader:
Elementer i FMKRequestHeader i request:
<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>
Elementer “frit” i soapheader:
Elementer i FMKResponseHeader i respons:
<soap:Header> <!-- Valgfri FMKResponseHeader for original løsning--> <FMKResponseHeader minOccurs="0"> <KnownPersonIdentifiers> ... </KnownPersonIdentifiers> <FMKConfigurationUpdatedWarning> ... </FMKConfigurationUpdatedWarning> <MedicineCardInvalid /> <VersionMismatchWarning /> <HiddenData> ... </HiddenData> <Paging> ... </Paging> <Warnings> ... </Warnings> <Informations> ... </Informations> <FMKResponseHeader> <!-- Frie elementer for ny løsning, del 1 --> <KnownPersonIdentifier minOccurs="0"> ... </KnownPersonIdentifier> <FMKConfigurationUpdatedWarning minOccurs="0">...</FMKConfigurationUpdatedWarning> </soap:Header> <soap:Body> <Response> <!-- FMKResponseHeader for ny løsning, del 2 --> <FMKResponseHeader minOccurs="0"> <MedicinecardInvalid minOccurs="0"> ...</MedicinecardInvalid> <VersionMismatchWarning/ minOccurs="0"> <HiddenData minOccurs="0"> ...</HiddenData> <Paging minOccurs="0"> ...</Paging> <Warnings minOccurs="0"> ... </Warnings> <Informations minOccurs="0"> ... </Informations> <FMKResponseHeader> ... <!-- Resterende respons --> ... </Response> </soap:Body>