You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

Indledning

Denne vejledning beskriver de tekniske forretningsregler i forhold til at implementere Fælles Stamkort i et fagsystem eller en borgerportal. Vejledningen er tiltænkt Forretningsarkitekter, Systemarkitekter samt Systemleverandører, således disse kan vurdere hvordan Fælles Stamkort kan implementeres i systemerne.

Fælles stamkort er en forretningsservice baseret på den nationale dokumentdelingsinfrastruktur, som udstiller stamdata fra et antal underliggende registre1  i HL7 CDA format. Vejledningen præciserer brugen af den danske CDA profil til Personal Data Card (PDC-DK) [version 2.0]2, der anvendes til at udstille borgernes Fælles Stamkort.
Vejledningen beskriver desuden de tekniske krav forudsætninger

De følgende afsnit, beskriver hvordan DK-PDC anvendes, samt hvilke forretningsregler borger portaler og fagsystemer skal implementere for at understøtte Fælles Stamkort

1 -  Herunder CPR-register, Sygesikringsregister, Organdonorregister, Livs- og Behandlingstestamenteregister samt stamkortregister
2 - https://svn.medcom.dk/svn/drafts/Standarder/HL7/PDC/

Anden dokumentation

De overordnede forretningsregler til Fælles Stamkort kan ses i dokumentet: (Indsæt reference)

Detaljeret teknisk anvenderguide, herunder information om felttyper, feltstørrelser og kardinalitet i dokumentet: https://www.nspop.dk/display/public/web/FSK+-+Guide+til+anvendere

Teknisk oversigt

Udveksling af Borgerens Fælles Stamkort foregår via den nationale infrastruktur til dokumentdeling. Denne understøtter referencearkitekturen for deling af dokumenter og billeder.

For generel introduktion til den nationale infrastruktur om dokumentdeling, se vejledningen ’Kom godt i gang med dokumentdeling’ til deling af dokumenter via Dokumentdelingsservice på NSP lavet af MedCom. For detaljeret teknisk dokumentation omkring dokumentdeling via NSP, se NSP'ens Dokumentdelingsservice.

Fælles Stamkort er understøttet af to overordnede forretningsservices. Hent Fælles Stamkort samt Opdater Fælles Stamkort, disse services vil indgå i borgerportaler samt lokale fagsystemer.

Hent Fælles Stamkort er implementeret via den nationale løsning for dokumentdeling, og følger derved principperne for denne, herunder adgangskontrol, informationssikkerhed og audit. Udvekslingsformatet er HL7 CDA (DK-PDC 2.0)

Opdater Fælles Stamkort foregår via en webservice integration, hvor der er implementeret endpoints til henholdsvis adgang for sundhedsfaglige samt borgere

Fælles Stamkort on-demand servicen indeholder model og grænsefladebeskrivelser for CDA udvekslingsformatet
Fælles Stamkort on-demand servicen er implementeret som en on-demand dokumentkilde der integrerer til en række registre, heriblandt et stamkortregister, der er autoritativt register for oplysninger om borgerens pårørende, borgerens midlertidige adresse, borgerens kontaktoplysninger samt borgerens sprog. Læsning af Fælles Stamkort dokumenter fra Fælles Stamkort on-demand servicen foregår via dokumentdelingsservicen på den nationale service platform ved brug af HL7's standard ITI-18 og ITI-43 grænseflader.

Stamkortregister-servicen benyttes til at hente (kun adgang fra Fælles Stamkort on-demand service)  samt redigere borgerens stamdata (telefonnummer, pårørende oplysninger, midlertidige adresse, sprog samt tilknytning til læge og tandlæge).  Opdateringer af data, sker via en direkte webserviceintegration til Stamkortregisteret.

Teknisk implementering

Afsnittet indeholder tekniske vejledninger til hvordan Fælles Stamkort kan integrereres i borgerportaler og fagsystemer

Indhold i Fælles Stamkort

Indholdet i Fælles stamkort er defineret i CDA profilen: Personal Data Card (PDC-DK) [version 2.0]
Indeholdet er struktureret således at generelt stamdata om patienten er en del af den generiske CDA header, som beskriver alle typer af CDA dokumenter.
Den generiske CDA header er beskrevet i dokumentet: HL7 Implementation Guide for CDA Release 2.0 CDA Header (DK CDA Header)3.
Body delen af dokumentet component.structuredBody indeholder staminformation om patienten der enten er taget fra registre, eller tastet ind manuelt.
Nedenstående tabel giver et indblik i hvilket indhold der findes i Fælles Stamkort, samt hvad der er kilden.

Kode

Beskrivelse

Eksempel

Kilde

Patientens CPR-nummer er en del af den generiske CDA header

recordTarget.patientRole.id

Patientens CPR-nummer

Patientens CPR-nummer er en del af den generiske CDA Header.

<id assigningAuthorityName="CPR" extension="2512489996" root="1.2.208.176.1.2"/>

CPR – register

Patientens navn og adresse er en del af den generiske CDA header

recordTarget.patientRole.addr

Patientens navn og adresse

Patientens navn og adresse er en del af den generiske CDA Header.

<addr use="H">
  <streetAddressLine>Vedbæk Strandvej 464</streetAddressLine>
  <postalCode>7000</postalCode>
  <city>Fredericia</city>
  <country>DK</country>
</addr>
<patient classCode="PSN">
  <name>
    <given>Bente</given>
    <given>Kirkegård</given>
    <family>Knudsen</family>
  </name>
    <administrativeGenderCode codeSystem="2.16.840.1.113883.5.1" code="F"/>
    <birthTime value="19481225000000+0000"/>
</patient>

Bemærk at har patienten navne eller adressebeskyttelse vises "BESKYTTET NAVN/ADRESSE"

CPR - register

Information om patientens pårørende

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.25"
 extension="2019-08-14"

code
 code="RelativeTypedIn"
 codeSystem="1.2.208.184.100.1"

Oplysninger om patientens pårørende, som patienten selv har angivet.

Oplysningerne er:

·       Pårørendes Navn

·       Pårørendes Relation

·       Pårørendes Telefonnummer

·       Fritekstfelt, hvor der f.eks. kan angives "bor i Canada"

Bemærk der kan kun angives flere observation med patientens pårørende

<templateId root="1.2.208.184.16.1.10.20.1.25" extension="2019-08-14"/>
<id extension="839697de-9660-4575-a3ac-61def6fb3474" root="1.2.208.184"/>
<code code="RelativeTypedIn" codeSystem="1.2.208.184.100.1"
codeSystemName="MedCom Message Codes" displayName="Pårørende, indtastet"/>
<!-- The patient's Relative's name and phone numbers -->
<value xsi:type="PN">
  <given>Hans</given>
  <family>Hansen</family>
</value>
<value xsi:type="TEL" use="H" value="tel:11223344"/>
<value xsi:type="TEL" use="WP" value="tel:(46)-55667788-1234"/>
<value xsi:type="TEL" use="MC" value="tel:99001122"/>
<!-- The Relative's relation to the patient -->
<value xsi:type="CD" code="nabo" codeSystem="1.2.208.184.100.2" codeSystemName="MedCom Relation Codes" displayName="Nabo"/>
<!-- A note about the Relative -->
<value xsi:type="ST">Naboen arbejder hos TDC i Sverige og kan træffes på
arbejdstelefon i dagtimerne ml. 8 og 16.</value>

Bemærk: Der tilføjes ikke automatisk pårørende angivet i CPR-registeret (f.eks. værger og ægtefæller) - eneste undtagelse herfor er børn under forældremyndighed, eller personer som har forældremyndighed over et barn (se næste række)

Indtastet information fra stamkortregisteret

Patientens børn under forældremyndighed

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.23"
 extension="2019-08-14"

code
 code="ChildCustody"
 codeSystem="1.2.208.184.100.1"


Hvis patienten har forældremyndighed over et eller flere børn, kan børnene vises i Fælles Stamkort.

Bemærk: Hvis patienten er biologisk forælder, men ikke har forældremyndigheden over barnet,  vises barnet ikke i Fælles Stamkort.

Bemærk: hvis patienten er værge for et barn, men ikke har forældremyndigheden over det pågældende barn, vises barnet ikke i Fælles Stamkort.

Bemærk der kan kun angives flere observationer med patientens børn under forældremyndighed

<templateId root="1.2.208.184.16.1.10.20.1.23" extension="2019-08-14"/>
<id extension="2267197b-cd9a-4c04-a4b0-cfd91e639f98" root="1.2.208.184"/>
<code code="ChildCustody"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Forældremyndighed over"/>

<!-- Value representing the name of the child of whom the patient has custody -->
<value xsi:type="PN">
 <given>Peter</given>
 <given>Severin</given
 <family>Knudsen</family>
</value>

<!-- Value representing the relationship the patient has to the child of whom the patient have custody →
<value xsi:type="CD" code="mor" codeSystem="1.2.208.184.100.2"
codeSystemName="MedCom Relation Codes" displayName="Mor"/>

CPR - register

Patientens forældremyndighedshavere

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.23"
 extension="2019-08-14"

code
 code="CustodyBy"
 codeSystem="1.2.208.184.100.1"



Hvis patienten er et barn, kan forældremyndighedshavere vises i Fælles Stamkort.

Bemærk: Hvis barnet har biologiske forældre som ikke har forældremyndigheden over barnet,  vises de biologiske forældre ikke i Fælles Stamkort.

Bemærk: hvis barnet er myndling under en værge, men værgen ikke har forældremyndigheden over det pågældende barn, vises værgen ikke i Fælles Stamkort.

Bemærk der kan kun angives flere observationer med barnets forældremyndighedshavere

<templateId root="1.2.208.184.16.1.10.20.1.23" extension="2019-08-14"/>
<id extension="3167197b-cd9a-4c04-a3b0-cfd91e639c98" root="1.2.208.184"/>
<code code="CustodyBy"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Under Forældremyndighed"/>

<!-- Value representing the name of the Custodian of whom the patient is in custody -->
<value xsi:type="PN">
 <given>Søren</given>
 <given>Severin</given
 <family>Knudsen</family>
</value>

<!-- Value representing the relationship the patient has to the custodian of whom the patient is in custody →
<value xsi:type="CD" code="barn" codeSystem="1.2.208.184.100.2"
codeSystemName="MedCom Relation Codes" displayName="Barn"/>

CPR - register

Patientens telefonnummer

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.24"
 extension="2019-08-14"

code
 code="
PatientContactTypedIn"
 codeSystem="1.2.208.184.100.1"

Patientens kontakt telefonnummer (3 telefonnumre kan angives (hjemme "H", mobil "MC", arbejde "WP").

Bemærk der kan kun angives en observation med patientens telefonnumre

<templateId root=”1.2.208.184.16.1.10.20.1.24” extension=”2019-08-14”/>
<id extension=”95055cc4-39cc-4f77-99ae-300731c4522a” root=”1.2.208.184”/>
<code code=”PatientContactTypedIn
  codeSystem=”1.2.208.184.100.1
  codeSystemName=”MedCom Message Codes”
  displayName=”Kontaktoplysninger, indtastet”/>

  <value xsi:type=”TEL” use=”H” value=”tel:11223344”/>
  <value xsi:type=”TEL” use=”WP” value=”tel:33112244”/>
  <value xsi:type=”TEL” use=”MC” value=”tel:66774433”/>

Indtastet information fra stamkortregisteret



Patientens midlertidige adresse

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.21"
 extension="2019-08-14"

code
 code="
TempAddrTypedIn"
 codeSystem="1.2.208.184.100.1"

Patientens midlertidige adresse inklusiv et tidsinterval for hvornår patienten befinder sig på den midlertidige adresse.

Bemærk at det ikke er nødvendigt at angive et sluttidspunkt (effectivetime.high) for den midlertidige adresse.

Bemærk er slutdatoen overskredet på forespørgselstidspunktet, returneres den midlertidige adresse ikke fra Fælles Stamkort

Bemærk der kan kun angives en observation med patientens midlertidige adresse

<templateId root="1.2.208.184.16.1.10.20.1.21" extension="2019-08-14"/>
<id extension="3eda0a9c-3363-4257-9eda-a7c8d15fa301" root="1.2.208.184"/>
<code code="TempAddrTypedIn"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Midlertidig adresse, indtastet"/>
<effectiveTime>
 <low value="20190101000000+0100"/>
 <high value="20200101000000+0100"/>
</effectiveTime>
<value xsi:type="AD">
 <streetAddressLine>Sommerhusvej 23</streetAddressLine>/>
 <streetAddressLine>Strandbytrand</streetAddressLine>/>
 <postalCode>1234</postalCode
 <city>Strandbystrand</city
 <country>Danmark</country>
</value>

Indtastet information fra stamkortregisteret

Patientens egen læge

recordtarget.patientRole.
providerOrganization

Kontaktoplysninger til patientens egen læge.
Patientens egen læge er en del af den generiske CDA Header.

Bemærk Det er ikke alle patienter der har tilknyttet en læge - elementet er derfor optionelt.

<providerOrganization>
  <id extension="123456" root="1.2.208.176.1.4" assigningAuthorityName="Yderregisteret"/
 <name>Lægerne Hansen</name>
 <telecom use="WP" value="tel:+4512345678"/>
 <telecom value="mailto:test@testyder.dk"/>
 <addr use="H">
  <streetAddressLine>Ydervej 42</streetAddressLine
  <postalCode>1234</postalCode>
  <city>Yderby</city>
 </addr>
</providerOrganization>

Yderregisteret

Patientens tandlæge

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.22"
 extension="2019-08-14"

code
 code="
DentistTypedIn"
 codeSystem="1.2.208.184.100.1"

Hvis patienten har tilknyttet en tandlæge, kan Fælles Stamkort indeholde kontaktoplysninger til tandlægen.


Patienten skal selv angive tandlægen, Fælles Stamkort vil efterfølgende hente kontaktoplysninger på patientens tandlæge fra Yderregisteret.

Bemærk: Det er ikke alle tandlæger der er tilknyttet Yderregisteret, i disse tilfælde vil tandlægens kontaktinformation skulle indtastes manuelt.

<templateId root="1.2.208.184.16.1.10.20.1.22" extension="2019-08-14"/>
<id extension="8f1d5b96-b16e-405d-a840-4e5bc87690ae" root="1.2.208.184"/>
<code code="DentistTypedIn"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Tandlæge indtastet"/>
 <value xsi:type="EN">
  <prefix>Tandlæge</prefix>
  <given>Jette</given>
  <family>Testesen</family>
 </value>
 <value xsi:type="AD">
  <streetAddressLine>Tandvej 7</streetAddressLine>
  <postalCode>1234</postalCode>
  <city>Yderby</city>
  <country>DentistcountryTypedIn</country>
</value>

Indtastet information fra stamkortregisteret

Sygesikringsgruppe

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.27"
 extension="2019-08-14"

code
 code="
CoverageGroup"
 codeSystem="1.2.208.184.100.1"


Patientens sygesikringsgruppe.

Bemærk: OID for Sygesikringen er under afklaring.

<templateId root="1.2.208.184.16.1.10.20.1.27" extension="2019-08-14"/>
<id extension="f7272633-2c06-4fee-9d81-1199f03ba569" root="1.2.208.184"/>
<code code="CoverageGroup"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Sygesikringsgruppe"/>
 <!-- We need a correct OID for the following authority: Sygesikringen→
<value xsi:type="II" root="1.2.208.176.1.99.99.99" extension="1" assigningAuthorityName="Sygesikringen"/>

Sygesikringsregisteret

Patientens foretrukne kommunikationssprog.

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.27"
 extension="2019-08-14"

code
 code="
LanguageTypedIn"
 codeSystem="1.2.208.184.100.1"


Patienten kan registrere hvilket sprog de foretrækker at kommunikerer på.

Feltet er forudfyldt med sproget ”Dansk”.

Bemærk: Der kan kun registreres et sprog pr. patient.

<templateId root="1.2.208.184.16.1.10.20.1.20" extension="2019-08-14"/>
<id extension="2267197b-cd9a-4c04-a4b0-cfd91e639f98" root="1.2.208.184"/>
<code code="LanguageTypedIn"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Talt sprog, indtastet"/>
 <value
  xsi:type="CD"
  code="de"
  codeSystem="1.0.639.1"
  codeSystemName="ISO-639-1"
  displayName="Tysk"/>





Indtastet information fra stamkortregisteret

Behandlingstestamente

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.29"
 extension="2019-08-14"

code
 code="
TreatmentWillRegistration"
 codeSystem="1.2.208.184.100.1"

Information om patienten har registreret et Behandlingstestamente kan vises i Fælles Stamkort.

Fælles Stamkort må IKKE vise indholdet i registreringen, kun OM der lavet en registrering. 

Bemærk: En patient kan have registreret enten et Behandlingstestamente eller et Livstestamente, ikke begge testamenter på samme tid.


<templateId root="1.2.208.184.16.1.10.20.1.29" extension="2019-08-14"/>
  <id extension="88423bf2-96c4-4df7-a36e-e55f7c02714b" root="1.2.208.184"/>
<code code="TreatmentWillRegistration"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Registreret behandlingstestamente"/>
<value xsi:type="II" root="1.2.208.176.1.9"
 extension="false"
 assigningAuthorityName="Sundhedsdatastyrelsen"/>



Behandlingstestamenteregister

Livstestamente

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.30"
 extension="2019-08-14"

code
 code="
LivingWillRegistration"
 codeSystem="1.2.208.184.100.1"

Information om patienten har registreret et Livstestamente kan vises i Fælles Stamkort.

Fælles Stamkort må IKKE vise indholdet i registreringen, kun OM der lavet en registrering. 

Bemærk: En patient kan have registreret enten et Behandlingstestamente eller et Livstestamente, ikke begge testamenter på samme tid.


<templateId root="1.2.208.184.16.1.10.20.1.30" extension="2019-08-14"/>
<id extension="7d2a50a0-dbf9-443c-8759-3574bed1dd1b" root="1.2.208.184"/>
<code code="LivingWillRegistration"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Registreret livstestamente"/>
 <value
  xsi:type="II"
  root="1.2.208.176.1.8"
  extension="true"
  assigningAuthorityName="Sundhedsdatastyrelsen"/>

Livstestamenteregister

Organdonorregistrering

component.structuredBody.
component.section.entry.observation

templateId
 root="1.2.208.184.16.1.10.20.1.31"
 extension="2019-08-14"

code
 code="
OrganDonorRegistration"
 codeSystem="1.2.208.184.100.1"

Information om patienten har en Organdonorregistrering kan vises i Fælles Stamkort.

Fælles Stamkort må IKKE vise indholdet i registreringen, kun OM der lavet en registrering. 


<templateId root="1.2.208.184.16.1.10.20.1.28" extension="2019-08-14"/>
<id extension="bf5b7087-b8dd-41f3-91c8-d2e0a8955c3a" root="1.2.208.184"/>
<code code="OrganDonorRegistration"
 codeSystem="1.2.208.184.100.1"
 codeSystemName="MedCom Message Codes"
 displayName="Registreret organdonor"/>
 <value
  xsi:type="II"
  root="1.2.208.176.1.10"
  extension="true"
  assigningAuthorityName="Dansk Center For Organdonation"/>

Organdonorregisteret

3 https://svn.medcom.dk/svn/releases/Standarder/HL7/CDA Header/Dokumentation/DK-CDA-Header.pdf

Tekniske forudsætninger

Se Adgang til et samlet patientoverblik for at få adgang til NSP'en.

Fælles stamkort udstilles via services på NSP'en, disse skal tilgås gennem en afkoblingskomponent "DCC'en" DCC'en viderestiller kald til underliggende services, så der er ikke en WSDL for DCC'en. Se DCC Dokumentation for adgang til servies gennem DCC'en.

NSP services kan tilgås enten via Den Gode Webservice eller via OIO-IDWS (Udelukkende borgeradgang).
Den Gode WebService benytter XMLDSIG til at signere SAML assertions ud fra X.509 certifikater/nøgler - for adgang til Fælles Stamkort skal sundhedspersoner have et gyldigt Nem-ID Medarbejdercertifikat (MOCES) - for mere information om den gode webservice, se: https://www.medcom.dk/standarder/webservice-standarder/den-gode-webservice

Til at understøtte SAML har Sundhedsdatastyrelsen udviklet biblioteker til Java og .NET (SEAL biblioteket) Dette bør benyttes så vidt det er muligt, se STS Dokumentation

Søgning på Fælles Stamkort

For at søge på en patients Fælles Stamkort, skal der laves en ITI-18 forespørgsel via NSP'ens dokumentdelingsservice.

WSDL til DDS Registry findes her: https://wsdl.nspop.dk/ddsregistry?wsdl

Når der søges på et stamkort, angives borgerens CPR nummer, samt en typecode.

		<AdhocQueryRequest xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:query:3.0">
			<ResponseOption returnType="LeafClass" returnComposedObjects="true"/>
			<AdhocQuery xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" id="urn:uuid:14d4debf-8f97-4251-9a74-a90016b0af0d">
				<Slot name="$XDSDocumentEntryPatientId">
					<ValueList>
						<Value>'2512489996^^^&1.2.208.176.1.2&ISO'</Value>
					</ValueList>
				</Slot>
				<Slot name="$XDSDocumentEntryTypeCode">
					<ValueList>
						<Value>('PDC^^2.16.840.1.113883.6.1')</Value>
					</ValueList>
				</Slot>
			</AdhocQuery>
		</AdhocQueryRequest>


Visning af Fælles Stamkort

...

Opdatering af Fælles Stamkort

...

Webservices

Sikkerhed, roller og rettigheder

Håndtering af Spærring og fuldmagt

...

Ændringslog

1.02019-11-18Teknisk implementeringsguide til Fælles StamkortSDS






  • No labels