Introduktion

Formål

Læsevejledning

Definitioner og referencer



NSPNational Service Platform
LAR
CAVE
FHIR
REST
DGWSDen Gode WebService


Introduktion til LAR

Løsningens opbygning

Der etableres med løsningen en webservice, som giver mulighed for opslag af lægemiddeloverfølsomhedsoplysninger for sundhedspersoner.

LAR indeholder yderligere en webservice, som giver mulighed for sundhedspersoner at registrere oplysninger vedr. lægemiddeloverfølsomhed for borgere.

Selve LAR Servicen ejer ikke data. Dette ansvar delegeres til den bagvedliggende CAVE Service (se i øvrigt CAVE Design og Arkitekturbeskrivelse).

LAR Servicen fungerer således primært som en fronten for CAVE Servicen. LAR Servicens ansvarsområder er følgende:

Overblik over LAR

LAR er udviklet som en web applikation i henhold til Servlet specifikationen 2.5. Dette sikrer, at LAR kan afvikles på enhver Servlet Engine, der overholder denne specifikation - specielt på WildFly Application Server 8.2, der i øjeblikket anvendes på NSP.

Løsningen er opbygget af et antal (Maven) moduler, der hver dækker et overordnet ansvarsområde i LAR:


Opslag af oplysninger om lægemiddeloverfølsomhed for en borger

Opslag af oplysninger om lægemiddeloverfølsomhed for en borger sker på følgende måde:

Først foretages der en validering af det indkommende request. Valideringen foretages på tre niveauer på vej ind i LAR Servicen:

For detaljer vedr. request- og responseformat for anvendere af LAR samt fejlkoder henvises til LAR Anvenderguide. Se i øvrigt også Beslutninger vedr LAR Snitfladen nedenfor.

LAR service transformerer i modulet til LAR-CAVE transformation (se tegning ovenfor) herefter requestet til FHIR og viderestiller forespørgselen til den bagvedliggende CAVE service, der står for selve dataopslaget. 

Kommunikationen med CAVE service (herunder fejlhåndtering) håndteres af LAR Servicens modul larservice-cave.

LAR servicen transformerer herefter FHIR responset fra CAVE til den mere simple responsemodel for LAR. Da FHIR stukturen i den bagvedliggende CAVE Service er mere kompleks, end det, der tillades i LAR har det været nødvendigt at foretage en række valg. Se afsnittet Mapning mellem LAR og CAVE for detaljer vedr. denne mapning.

Inden resultatet returneres sker der evt en filtrering af oplysningerne i henhold til MinSpærring (i tilfældet, hvor der findes dataspecifikt negativt samtykke).

De interne ider for de returnerede CAVE oplysninger (og ider for de frafiltrerede entries) logges vha AuditAPI'et (se i øvrigt LAR Driftsvejledning for detaljer vedr. indholdet af auditlogingsbeskeden).

Endelig sker der en registring af opslaget i MinLog. Se LAR Driftsvejledning for opsætning af registering i MinLog for opslag.


Registrering af oplysning om lægemiddeloverfølsomhed for en borger

Registrering af oplysninger om lægemiddeloverfølsomhed for en borger sker på følgende måde:

Først foretages der en validering af det indkommende request. Valideringen foretages på to niveauer på vej ind i LAR Servicen:

For detaljer vedr. request- og responseformat for anvendere af LAR samt fejlkoder henvises til LAR Anvenderguide. Se i øvrigt også Beslutninger vedr LAR Snitfladen nedenfor.

LAR service transformerer i modulet til LAR-CAVE transformation (se tegning ovenfor) herefter requestet til FHIR og viderestiller registreringen til den bagvedliggende CAVE service, der står for selve dataregistreringen. 

Kommunikationen med CAVE service (herunder fejlhåndtering) håndteres af LAR Servicens modul larservice-cave.

LAR servicen transformerer herefter FHIR responset fra CAVE til responemodellen for LAR (@Lene hvad sender vi egentlig tilbage...bare lige to ord vedr dette).

Oprettelsen logges vha AuditAPI'et (se i øvrigt LAR Driftsvejledning for detaljer vedr. indholdet af auditlogingsbeskeden).

Registreringen medfører også et kald til MinLog. Se LAR Driftsvejledning for opsætning af registering i MinLog for oprettelse.

Designmålsætninger og -beslutninger

Sikkerhedskrav i forhold til kald af LAR

Det er besluttet, at der for både opslag af oplysninger og registrering af oplysninger i LAR kræves et niveau 4 SOSI Idkort (medarbejdercertifikat).

LAR servicen validerer sikkerheden på følgende måde:

Beslutninger vedr. LAR Snitfladen

Begrundelsen for at gøre feltet med autorisations-ID tvunget på snitfladen for registrering af lægemiddeloplysninger er, at datakvaliteten på det inkommende data øges, og at parterne har vurderet denne oplysning til at være meget vigtig.

En konsekvens heraf bliver, at det bliver vanskelligt at lave masse-indlæsning af historiske data (som måske ikke indeholder denne oplysning). Der skal findes en løsning på dette, men det ligger for nuværende uden for CAVE projektet.

Mapning mellem LAR og CAVE

TODO: Beskriv problemet med listen og løsning med foretruktne (LENE?)

Den konkrete opsætning af foretrukne kodesystemer er beskrevet i LAR Driftsvejledning.

Validering af requests i LAR

Der foretages validering for indkommende requests til både opslag og registreringer af lægemiddeloplysninger.

For opslag valideres det at:

For registreringer valideres det at:

Modellering af diverse identifiers i LAR

Der opereres flere steder i LAR snitfladen med eksterne identifiers f.eks. patientid, organisationsid og id for lægemiddel. For at lave den mest generelle snitfladet er der i LAR Servicen valgt en model, hvor disse identifiers skal angives som en struktur bestående af:

Som beskrevet i afsnittet vedr Validering af requests i LAR. så foretages der ikke i LAR en validering af de anvendte kodesystemer.