Indhold
Introduktion
Formål
Denne guide har som formål at give et overblik over, hvordan LAR servicen kaldes. Guiden indeholder referencer til snitfladebeskrivelser for kald til LAR servicen.
Læsevejledning
Dette dokument er henvendt til udviklere og arkitekter, der skal anvende LAR servicen.
Det forventes at læseren har kendskab til SOAP WebService, Den Gode WebService (DGWS) og Sercurity Token Service (STS).
Dokument historik
Dato | Ansvarlig | Beskrivelse |
---|---|---|
dd/mm-yyyy | Initiel version |
Definitioner og referencer
Reference | Beskrivelse |
---|---|
Introduktion til domænet: Landsdækkende cave register
CAVE er et medicinsk fagudtryk for lægemidler, som en patient ikke bør få, typisk på grund af en unormal reaktion på produktet. CAVE er således en information om patientoplysninger, som sundhedspersoner skal være særligt opmærksomme på, fx om bivirkninger i forbindelse med indtagelse af et lægemiddel.
LAR servicen er en SOAP baseret snitflade til dette cave/ allergi register så man kan oprette og trække information omkring den enkelte patient.
Brug af LAR service
LAR service udstiller en SOAP snitflade. SOAP snitfladen overholder DGWS. Det betyder, at der skal være en gyldig security og medcom header. Disse to headers er ikke beskrevet i snitfladebeskrivelsen, da disse er en del af DGWS.
SOAP snitfladen udstiller to SOAP actions og det er disse, der er beskrevet i snitfladebeskrivelse afsnittet.
Snitfladebeskrivelse
<Beskrivelse af Snitfladerne.>
RegisterPatientAllergy
RegisterPatientAllergyRequest
MedicationAllergyIntoleranceReduced | ||
---|---|---|
Elementer | Beskrivelse | Påkrævet |
identifier | Id på registreringen. | Nej |
clinicalStatus | Status på registreringen. Er enten active, inactive eller resolved | Ja |
verificationStatus | Overskrives altid med confirmed af LAR servicen. | Nej |
type | Overskrives altid med allergy af LAR servicen. | Nej |
category | Overskrives altid med medication af LAR servicen. | Nej |
criticality | Kritikalitet af allergien. Er enten low, high eller unable-to-assess. | Nej |
substance | Substans som allergien drejer sig om. Består af en kode og et system. System kan være oid for ATC kode og koden er så en specifik ATC kode. | Ja |
substanceDescription | Tekstuel beskrivelse af substansen. | Nej |
patient | Patient allergien drejer sig om. Består af en code og et system. Hvor code er værdien (CPR nummer) og system er oid koden for CPR systemet. | Ja |
onsetDateTime | Tidspunkt allergien er identificeret eller observeret væk igen. | Ja |
recorder | Lægefaglig person, der har indberettet allergien. Består af en code og system. System er oid koden for autorisationskoder og code er autorsationskoden. | Ja |
recorderOrganization | Organisation der har indberettet allergien. Består af en code og system. System er oid for SOR og code er SOR koden. | Ja |
note | Note omkring allergien | Nej |
reaction.manifestation | Code og system for reaktionen. System er oid for SKS. Skal være udfyldt, hvis manifestationDescription ikke er. | (Ja) |
reaction.manifestationDescription | Tekstuel beskrivelse. Skal være udfyldt, hvis manifestion code/system ikke er | (Ja) |
reaction.onset | Tidspunkt hvor reaktion er observeret | Nej |
reaction.serverity | Hvor alvorlig reaktionen er. Enten mild, moderate eller severe. | Nej |
RegisterPatientAllergyResponse
Består af ReplyStatus og en liste af MedicationAllergyIntoleranceReduced.
ReplyStatus | ||
---|---|---|
Element | Beskrivelse | Påkrævet |
StatusCode | Status kode på forespørgselen. Kan være en af følgende: Success, NotValidData, ProblemCallingCave | Ja |
StatusText | Status tekst svarende til status koden. Med uddybende beskrivelse af evt. fejl. | Ja |
GetPatientAllergyList
GetPatientAllergyListRequest
Element | Beskrivelse | Påkrævet |
---|---|---|
patient | Patient der skal forespørges på. Består af en code og et system. Hvor code er værdien (CPR nummer) og system er oid koden for CPR systemet. | Ja |
requesterOrganization | Organization der foretager forespørgslen. Består af en code og en type. Code er organization og type er shak, sor eller ydernummer. | Ja |
consentOverride | Indikation af om der skal foretages værdispring. | Ja |
GetPatientAllergyListResponse
Består af ReplyStatus og en liste af MedicationAllergyIntoleranceReduced.
ReplyStatus | ||
---|---|---|
Element | Beskrivelse | Påkrævet |
StatusCode | Status kode på forespørgselen. Kan være en af følgende: Success, NotValidData, ProblemCallingCave, MsbTechnicalError, TreatmentRelationTechhnicalError, SamtykkeTechnicalError, MinLogTechnicalError, SuccessButDataSpecificConsent, NegativeConsent | Ja |
StatusText | Status tekst svarende til status koden. Med uddybende beskrivelse af evt. fejl. | Ja |
MedicationAllergyIntoleranceReduced | ||
---|---|---|
Beskrivelse | Påkrævet | |
identifier | Id på registreringen. | Nej |
clinicalStatus | Status på registreringen. Er enten Active, Inactive eller Resolved | Ja |
verificationStatus | Altid confirmed. | Nej |
type | Altid allergy. | Nej |
category | Altid medication. | Nej |
criticality | Kritikalitet af allergien. Er enten low, high eller unnable-to-assess. | Nej |
substance | Substans som allergien drejer sig om. Består af en kode og et system. System kan være oid for ATC kode og koden er så en specifik ATC kode. | Ja |
substanceDescription | Tekstuel beskrivelse af substansen. | Nej |
patient | Patient allergien drejer sig om. Består af en code og et system. Hvor code er værdien (CPR nummer) og system er oid koden for CPR systemet. | Ja |
onsetDateTime | Tidspunkt allergien er identificeret eller observeret væk igen. | Ja |
recorder | Lægefaglig person der har indberettet allergien. Består af en code og system. System er oid koden for autorisationskoder og code er autorsationskoden. | Ja |
recorderOrganization | Organisation der har indberettet allergien. Består af en code og system. System er oid for SOR og code er SOR koden. | Ja |
note | Note omkring allergien | Nej |
reaction.manifestation | Code og system for reaktionen. System er oid for SKS. Skal være udfyldt, hvis manifestationDescription ikke er. | (Ja) |
reaction.manifestationDescription | Tekstuel beskrivelse. Skal være udfyldt, hvis code/system ikke er | (Ja) |
reaction.onset | Tidspunkt hvor reaktion er observeret | Nej |
reaction.serverity | Hvor alvorlig reaktionen er. Enten mild, moderate eller severe. | Nej |
Anvendte kodesystemer
De steder i snitfladen, hvor der er beskrevet, at der anvendes et kode system (f.eks. oid for ATC), så er det nedentående systemer, der tillades i LAR servicen.
System | Kode | Kort beskrivelse |
---|---|---|
ATC | urn:oid:2.16.840.1.113883.6.73 | Klassifikation af lægemiddel efter indholdsstof og virkemåde. |
SOR | urn:oid:1.2.208.176.1.1 | Sundhedsvæsenets organisationsregister |
Autorisationskode | urn:oid:1.2.208.176.1.3 | Autorisationskoder for sundhedspersonale i Danmark. |
CPR | urn:oid:1.2.208.176.1.2 | Det centrale personregister |
SKS | urn:oid:1.2.208.176.2.4.12 | Sundhedsvæsenets Klassifikations System |
Eksempler
Eksempler på request og response til de SOAP operationer der udstilles. De enekelte elementer er beskrevet under snitfladebeskrivelse.
Klient proxier kan genereres ud fra WSDL filen: <WSDL-url>
RegisterPatientAllergy
Nedenstående er et eksempel på SOAP request, der anvendes til at registrere oplysninger. De enekelte elementer er beskrevet under snitfladebeskrivelse.
Nedenstående er SOAP svar på ovenstående request når kaldet går godt.
<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <ns6:RegisterPatientAllergyResponse xmlns:ns2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns3="http://www.w3.org/2000/09/xmldsig#" xmlns:ns4="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns5="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns6="http://nsp.dk/medicationallergyservice/2018/11/21/" xmlns:ns7="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:ns8="http://nsp.dk/medicationallergyservice/allergy/2018/11/21/"> <ReplyStatus> <ns6:StatusCode>Success</ns6:StatusCode> <ns6:StatusText>Kald til servicen var successfuld</ns6:StatusText> </ReplyStatus> </ns6:RegisterPatientAllergyResponse> </soap:Body> </soap:Envelope>
GetPatientAllergyList
Nedenstående er eksempel på SOAP request, der anvende til at læse data.
<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <ns6:GetPatientAllergyListRequest xmlns:ns2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns3="http://www.w3.org/2000/09/xmldsig#" xmlns:ns4="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns5="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns6="http://nsp.dk/medicationallergyservice/2018/11/21/" xmlns:ns7="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:ns8="http://nsp.dk/medicationallergyservice/allergy/2018/11/21/"> <MedicationAllergyIntoleranceSearchCriteria> <ns6:patient> <ns6:system>urn:oid:1.2.208.176.1.2</ns6:system> <ns6:code>1601010020</ns6:code> </ns6:patient> <ns6:requesterOrganization> <ns6:type value="sor"/> <ns6:code>12345</ns6:code> </ns6:requesterOrganization> <ns6:consentOverride>false</ns6:consentOverride> </MedicationAllergyIntoleranceSearchCriteria> </ns6:GetPatientAllergyListRequest> </soap:Body> </soap:Envelope>
Nedenstående er SOAP svar på ovenstående request når kaldet går godt og der er registreret en allergi på patienten.
<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <ns6:GetPatientAllergyListResponse xmlns:ns2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns3="http://www.w3.org/2000/09/xmldsig#" xmlns:ns4="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns5="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns6="http://nsp.dk/medicationallergyservice/2018/11/21/" xmlns:ns7="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:ns8="http://nsp.dk/medicationallergyservice/allergy/2018/11/21/"> <ReplyStatus> <ns6:StatusCode>Success</ns6:StatusCode> <ns6:StatusText>Kald til servicen var successfuld</ns6:StatusText> </ReplyStatus> <MedicationAllergyIntoleranceReduced> <ns8:identifier>494de20b-32ec-4955-8886-5514bd063c25</ns8:identifier> <ns8:clinicalStatus value="active"/> <ns8:verificationStatus value="confirmed"/> <ns8:type value="allergy"/> <ns8:category value="medication"/> <ns8:criticality value="high"/> <ns8:substance> <ns8:system>urn:oid:2.16.840.1.113883.6.73</ns8:system> <ns8:code>648005</ns8:code> </ns8:substance> <ns8:substanceDescription>648005 description</ns8:substanceDescription> <ns8:patient> <ns8:system>urn:oid:1.2.208.176.1.2</ns8:system> <ns8:code>1601010020</ns8:code> </ns8:patient> <ns8:onsetDateTime>2018-11-01T13:30:00.000+01:00</ns8:onsetDateTime> <ns8:recorder> <ns8:system>urn:oid:1.2.208.176.1.3</ns8:system> <ns8:code>1234</ns8:code> </ns8:recorder> <ns8:recorderOrganization> <ns8:system>urn:oid:1.2.208.176.1.1</ns8:system> <ns8:code>1234567890</ns8:code> </ns8:recorderOrganization> <ns8:note>Oil of calamus allergy</ns8:note> <ns8:reaction> <ns8:manifestation> <ns8:system>urn:oid:1.2.208.176.2.4.12</ns8:system> <ns8:code>5678</ns8:code> </ns8:manifestation> <ns8:manifestationDescription>Severe reaction was observed for several hours</ns8:manifestationDescription> <ns8:onset>2018-11-01T13:30:00.000+01:00</ns8:onset> <ns8:severity value="mild"/> </ns8:reaction> </MedicationAllergyIntoleranceReduced> </ns6:GetPatientAllergyListResponse> </soap:Body> </soap:Envelope>