Antagelser/Mapning

Dette afsnit indeholder en oversigt over de antagelser der er gjort omkring de modtagne testdata samt den mapning der er foretaget til LAR snitfladen.

Udgangspunktet  er en csv fil, med 20144 linjer data. 

Eksempel på fil indhold
haendelse;tidspunkt;drugid;praeparatnavn;kunvalgtpraeparat;atc;reaktionstype;allergisk;debut;debutpraecision;slut;afslutningsaarsag;indholdsstof
EPJIAAA321004632689;31-12-2017 00:12;28101376489;;true;;SST:SKS.a.diaDT789;false;;MEM:MEMks.ur.Ukendt;;;morphin
EPJIAAA321005283444;31-12-2017 01:55;28100902476;;true;;SST:SKS.a.diaDT789;false;;MEM:MEMks.ur.Ukendt;;;phenoxymethylpenicillin
EPJIAAA321246808698;02-01-2018 10:19;;Aspirin;false;;SST:SKS.a.diaDT789;false;;MEM:MEMks.ur.Ukendt;;;
EPJIAAA321092161121;01-01-2018 11:46;;thiazider, usammensatte præparater;false;C03AA;SST:SKS.a.diaDT887D;false;01-12-2017 00:00;MEM:MEMks.ur.AarMaaned;;;

I afsnittet "Data skema" nedenfor fremgår felterne i LAR servicens snitflad.  

For hvert felt har vi vurderet indhold i csv filen og mappet relevante felter. Disse fremgår af søjlen "Indledende kørsel - input". Se efter indhold "... kolonne fra csv fil".

De umiddelbare default værdier vi har fundet frem til den manglende fil mapning fremgår også af søjle "Indledende kørsel - input".

Csv filen indholder for nogle linier en slut dato. Dette giver anledning til at vi får disse linjer lavet et ektra kald til LAR servicen for at indikere at denne allergi ikke længere er aktiv (=inaktiv, en slags logisk sletning). Derfor vil der for disse linjer være 2 mapninger for nogle af felterne.

Mapning af fil data:

  • substance code: Atc
  • substanceDescription: indholdsstof
  • onsetDateTime:
    • debut hvis udfyldt, ellers tidspunkt
    • for inaktiv kald: slut
  • manifestation.code: reaktionstype

Forslag til indledende default værdier:

  • identifier: fiktivt uuid - da filens nøgle "haendelse" ikke er en uuid kode 
  • clinicalStatus:
    • active - da data fremgår af filen må de have været aktive 
    • for inaktiv kald: inactive
  • criticality: unable-to-assess - værdien fremgår ikke af filen, så vi er ikke i stand til at angive mere specifikt
  • patient.code: test data er anonyme, vi har fundet på cpr numre til testen
  • recorder.code: CG876 - en læge (Casper) der eksisterer.  Her skal der for hver csv fil bestemmes en relevant kode
  • recorderOrganization.code: 6081000016005 (region midtjylland). Her skal der for hver csv fil bestemmes en relevant kode
  • en række kodesystemer, se data skemaet 

Herefter er der foretaget en kørsel for at frembringe en liste af mangler i csv filen. Resultat fremgår af søjlen "Indledende kørsel mangler data", hvor der for de problematiske felter er noteret, hvor mange linjer, der mangler en værdi til det givne felt.

(Kørslen melder kun den første fejl den finder for hver række af data, så derfor varierer antallet af mangler mellem indledende kørsel og efterfølgende kørsler)

Herefter er yderligere lovlige default/test værdier tilføjet en efter en og en nye test kørsler udført indtil alle fejl var fjernede, for på den måde at finde alle mangler. 

De ekstra anvendte default/test værdier fremgår af søjle "Yderligere kørsler input". Summen af kørslernes mangler fremgår af søjle "Yderligere kørsel mangler data".

Afvikling af test

Dette afsnit indeholder en oversigt over de fejl indlæsningen af data gav anledning til ud fra antagelserne/mapningen samt eventuelle variationer over disse.

Mangler i csv filens data er:

  • substance.code - Atc kode - 19.092 linier mangler denne information
  • onsetDateTime - debut indeholder 3 ugyldige datoer
  • manifestation.code - 4467 mangler denne information

Forslag til manglende værdier:

  • substance.code: her har vi ikke noget bud på en logisk default værdi
  • onsetDateTime:  kan kørselsdato anvendes når dato ugyldig/mangler?
  • manifestation.code: kan "DT789"  (Bivirkninger uden specifikation*1) anvendes? Alternativt kan manifestionDescription udfyldes med eksempelvis "Historiske data, manifestationskode haves ikke"

Anvendes de foreslåede default værdier på onsetDateTime og manifestion.code kan 1052 af 20144 linjer indlæses.


1* Kilde: https://sundhedsdatastyrelsen.dk/-/media/sds/filer/rammer-og-retningslinjer/klassisfikationer/sks-download/sks-klassifikationer-zip_filer/sks-2005.txt?la=da

Data skema

Snitflade feltValideringFaste værdier
Kommentar til csv fil
Indledende kørsel - inputIndledende kørsel - mangler data
Yderligere kørsel - inputYderligere kørsel - mangler data
identifierhvis udfyldt så uuid, ellers defaultes

haendelse er ikke uuid
fiktivt uuid



clinicalStatuskrævet

active
inactive
resolved




active

(inaktiv kald: inactive)





verificationStatusconfirmed anvendes altid af service



-



typeallergy anvendes altid af service



-



categorymedication anvendes altid af service



-



criticality

low
high
unable-to-assess


Værdien fremgår ikke at eksempel data, så en “neutral” værdi vælges
unable-to-assess



substance systemkrævet



urn:oid:2.16.840.1.113883.6.73



substance codekrævet

Problem!
atc kolonne fra csv fil19.092 mangler værdi
værdien “test” anvendes som test eksempel når blank fra data19.092 mangler værdi
substanceDescription




indholdsstof kolonne fra csv fil



patient systemkrævet



urn:oid:1.2.208.176.1.2



patient codekrævet



fiktiv cpr



onsetDateTimekrævet

3 værdier er mærkelige i file, se nedenfor skema

debut kolonne fra csv fil hvis udfyldt, ellers tidspunkt fra csv fil

(inaktiv kald: slut fra fil)



dags dato anvendes når værdi blank/ugyldig fra fil3 har ugyldig værdi
recorder systemkrævet



urn:oid:1.2.208.176.1.3



recorder codekrævet



CG876



recorderOrganization systemkrævet



urn:oid:1.2.208.176.1.1



recorderOrganization codekrævet



6081000016005 (region midtjylland)



note









reaction.manifestation systemkrævet hvis manifestation.code






urn:oid:1.2.208.176.2.4.12


reaction.manifestation codekrævet hvis manifestation.system



reaktionstype fra csv fil174 mangler kode eller beskrivelse

værdien DT789 anvendes

4467 mangler kode eller beskrivelse
reaction.manifestationDescriptionkrævet hvis ikke code/system








reaction.onset









reaction.severity

mild
moderate
severe











3 linjer i filen har datoer (debut), som anvendes, som er ugyldige/urealistiske:

Ugyldige datoer
haendelse;tidspunkt;drugid;praeparatnavn;kunvalgtpraeparat;atc;reaktionstype;allergisk;debut;debutpraecision;slut;afslutningsaarsag;indholdsstof
EPJIAAA323354610604;23-01-2018 14:17;;pondocillin;false;;SST:SKS.a.diaDT784;false;1111-11-11 00:00:00;MEM:MEMks.ur.AarMaanedDag;;;
EPJIAAA327201514716;10-04-2018 14:03;28101058280;;true;;SST:SKS.a.diaDT887D;false;1018-04-01 00:00:00;MEM:MEMks.ur.AarMaaned;;;allopurinol
EPJIAAA332702399766;06-08-2018 13:18;;ibuprofen;false;;SST:SKS.a.diaDT789;false;1887-01-01 00:00:00;MEM:MEMks.ur.Aar;;;
  • No labels