Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Dette dokument beskriver designet af Behandlingstestamenteregistret (BTR).

Terminologi

...

En beskrivelse af funktionaliteten i servicen kan findes i dokumentet "Behandlingstestamenteregistret-service".

Ændringslog

VersionDatoÆndringAnsvarlig
1.0.12018-08-30Initialt dokumentTrifork
1.0.22018-08-31Ny releaseTrifork
1.0.62018-10-15

Opdateret TreatmentWill database-schema figur med nyeste ændringer

Trifork
1.0.122019-08-16Tilføjet note om MinLog SessionIdTrifork
1.0.132021-01-18Opdateret 'Design'-figurKvalitetsIT
1.1.72021-09-06Opdateret efter udfasning af dgws/idws-proxy.KvalitetsIT
1.1.82021-10-12Opdateret ifm. udfasning af btr-snitflade med accept fra pårørende, værge eller fremtidsfuldmægtig for uafvendeligt døendeKvalitetsIT
1.1.92021-10-25Opdateret ifm inaktive cpr numre afvisesKvalitetsIT
1.1.102022-10-25Validering af alder med CprExists tiløjetKvalitetsIT
GIT2024-07-21SDS-7326: BTR - oprydningsjob skal tilpasses (CprExists er blevet omdøbt ti personInformation)
KvalitetsIT

Terminologi



HL7 CDAStandard til udveksling af oplysninger indenfor sundhedsvæsenet

Standarder

Dataudveksling er basereret på HL7 CDA.

Data fra selve registret udstilles i CDA-dokumentets body (structuredBody) mens metadata og informationer fra andre datakilder udstilles i CDA-dokumentets header. Metadata er hovedsageligt information om hvilken borger oplysningerne vedrører.

Da HL7 CDA er tiltænkt kliniske dokumenter og ikke borgeres stamkortregister-data, er oplysningerne repræsenteret som CDA-udvidelser, så vidt muligt opbygget af dataelementer fra CDA. 

Oprettelse, ændring og sletning af data sker via forespørgsler, der indeholder typer som er specialfremstillet til formålet, da HL7 CDA ikke direkte er tiltænkt dette.

Forretningslogikken i servicen er afkoblet fra udvekslingsformatet, dvs. HL7 CDA.

...

.


Arkitektur

Systemet består af en enkelt service der håndterer begge registre. Som illustreret på figuren herunder tilgår brugerne servicen indirekte via Sundhed.dk , patientjournalsystemer, lægepraksissystemer osv. som integrerer til systemet.  Herudover foretager Dokumentdelingsservicen (DDS) opslag via FSK. Opslaget via FSK returnerer alene information om, hvorvidt der findes data for en person eller ej.

Organdonorregister-servicen består af en webservice, som andre systemer kan benytte til at oprette, opdatere, slette og aflæse seneste registrering fra.

HTML
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/id-507fac52-f8c5-4e21-bca1-7be0ca6abf06.html" name="test" height="580" width="800">You need a Frames Capable browser to view this content.</iframe>

...

Gliffy Diagram
displayNameLTR-BTR arktitektur v1
nameLTR-BTR arktitektur v1
pagePin2


Standarder

Dataudveksling er basereret på HL7 CDA.

Data fra selve registret udstilles i CDA-dokumentets body (structuredBody) mens metadata og informationer fra andre datakilder udstilles i CDA-dokumentets header. Metadata er hovedsageligt information om hvilken borger oplysningerne vedrører.

Da HL7 CDA er tiltænkt kliniske dokumenter og ikke borgeres stamkortregister-data, er oplysningerne repræsenteret som CDA-udvidelser, så vidt muligt opbygget af dataelementer fra CDA. 

Oprettelse, ændring og sletning af data sker via forespørgsler, der indeholder typer som er specialfremstillet til formålet, da HL7 CDA ikke direkte er tiltænkt dette.

Forretningslogikken i servicen er afkoblet fra udvekslingsformatet, dvs. HL7 CDA.

Se Guide til Anvendere for flere detaljer.

Sikkerhed

Kald til servicen kan foretages som enten DGWS- (Den Gode Webservice) eller IDWS- (Identity Based Web Services) kald.

...

Der henvises til hhv.  Den Gode Webservice  og  OIO Identity-based Web Services v1.0.1a  for yderligere information.

Integrationer

HTML
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/id-507fac52-f8c5-4e21-bca1-7be0ca6abf06.html" name="test" height="650" width="800">You need a Frames Capable browser to view this content.</iframe>   

...

CPR-subscriber

Cpr-subscriber er en fælles intern applikation hvis formål er at håndtere al kommunikation til stamdata (cpr-registry). SKR-servicen inkluderer et slettejob der skal sørge for at slette en borgers registrering 1 år efter personen er afgået ved døden.

...

Som MinLog SessionId anvendes MessageID defineret i anvender-requests. Hvis SessionId er længere end 46 tegn (det maksimalt tilladte i MinLog-servicen) anvendes i stedet SHA-1 værdien (altid 40 tegn).

...

PersonInformation

Gennem kald til personalinformation PersonInformation Service foretages validering af CPR nummer. CPR valideringen kan køre i følgende tre modes:

  • OFF: Der foretages ikke yderligere verifikation af CPRnummeret udover simpel validering af længde. personalinformation kaldes ikke
  • WARNING: personalinformation service kaldes. Hvis denne service svarer, at CPR nummeret ikke findes eller er inaktivt, så audit logges denne information.
  • REJECT: personalinformation service kaldes. Svaret fra denne er en hård validering dvs kaldet til BTR fejler, hvis PersonInformation service ikke kender CPR nummeret eller det er inaktivt.

personalinformation Service benyttes ligeledes til validering af alder. Denne validering foretages altid.

personalinformation Service bruges af slette jobbet til at slå op i personinformation med kaldet deceased, for at finde borger som har været døde i mindst et år (kan konfigureres til noget andet end et år). Deceased kaldet returner en liste af de borgere, som opfylder dette.

Design

Gliffy Diagram
displayNameLTR-BTR design v3
nameLTR-BTR design v3
pagePin8

...

BTR servicen indeholder to slettejobs der kan slette registreringer for afdøde personer. Registreringerne for en afdød skal slettes 1 år r (kan konfigureres til noget andet end et år) efter personen er afgået ved døden. Registreringerne bliver slettet fra databasen og data kan således ikke genskabes igen.

...

Operation

Beskrivelse

Default operation

Formål: Benyttes til at fylde operationer på stakken, når stakken er tom.

Java klasse: LivingWillDeceasedCleanupSupplier

Batching: For hvert af tallene 00-99, oprettes en "prefix baseret operation"

Shuffles: nej

Andet: -

Prefix baseret operation

Formål: Givet et tal mellem 00 og 99, hentes alle borger id'er fra  som starter med disse cifre.

Java klasse: LivingWillDeceasedPatientIdPrefixCleanupSupplier

Batching: Opretter en mængde "borger id baseret operation", hver med et konfigurerbart antal af disse borger id'er

Shuffles: ja

Andet: -

Borger id baseret operation

Formål: Givet en liste af borger id'er, tages de id'er der tilhører afdøde borgere. Dette afgøres ved kald til PersonInformation.

Java klasse: LivingWillDeceasedPatientIdBatchCleanupSupplier

Batching: Opretter eet "oprydningsjob" med de afdøde borgers id

Shuffles: nej

Andet: -

Oprydningsjob

Formål: Givet en liste af borger id'er slettes i databasen stamkort for denne liste af id'er

Java klasse: LivingWillBatchCleanupOperation

Batching: na

Shuffles: na

Andet: -


Jobbet for TreatmentWill består af følgende operationer:

Operation

Beskrivelse

Default operation

Formål: Benyttes til at fylde operationer på stakken, når stakken er tom.

Java klasse: TreatmentWillDeceasedCleanupSupplier

Batching: For hvert af tallene 00-99, oprettes en "prefix baseret operation"

Shuffles: nej

Andet: -

Prefix baseret operation

Formål: Givet et tal mellem 00 og 99, hentes alle borger id'er fra  som starter med disse cifre.

Java klasse: TreatmentWillDeceasedPatientIdPrefixCleanupSupplier

Batching: Opretter en mængde "borger id baseret operation", hver med et konfigurerbart antal af disse borger id'er

Shuffles: ja

Andet: -

Borger id baseret operation

Formål: Givet en liste af borger id'er, tages de id'er der tilhører afdøde borgere. Dette afgøres ved kald til PersonInformation.

Java klasse: TreatmentWillDeceasedPatientIdBatchCleanupSupplier

Batching: Opretter eet "oprydningsjob" med de afdøde borgers id

Shuffles: nej

Andet: -

Oprydningsjob

Formål: Givet en liste af borger id'er slettes i databasen stamkort for denne liste af id'er

Java klasse: TreatmentWillBatchCleanupOperation

Batching: na

Shuffles: na

Andet: -

Ændringslog

KvalitetsIT
VersionDatoÆndringAnsvarlig
1.0.12018-08-30Initialt dokumentTrifork
1.0.22018-08-31Ny releaseTrifork
1.0.62018-10-15

Opdateret TreatmentWill database-schema figur med nyeste ændringer

Trifork
1.0.122019-08-16Tilføjet note om MinLog SessionIdTrifork
1.0.132021-01-18Opdateret 'Design'-figurKvalitetsIT
1.1.72021-09-06Opdateret efter udfasning af dgws/idws-proxy.KvalitetsIT
1.1.82021-10-12Opdateret ifm. udfasning af btr-snitflade med accept fra pårørende, værge eller fremtidsfuldmægtig for uafvendeligt døendeKvalitetsIT
1.1.92021-10-25Opdateret ifm inaktive cpr numre afvisesKvalitetsIT
1.1.102022-10-25Validering af alder med CprExists tiløjetKvalitetsIT
GIT2024-07-21SDS-7326: BTR - oprydningsjob skal tilpasses (CprExists er blevet omdøbt ti personInformation)