Page History
...
På oidref.com kan man i øvrigt se betydningen af enkeltcifre i de fleste OIDer, fx http://oidref.com/2.16.840.1.113883.1.3
Snitflader
Til SKR er der 2 hold gældende snitflader. Et hold til normalt brug og et til migreringsbrug.
Derudover er et antal forældede snitflader der SKR snitfladerne findes i et antal versioner. Versionerne er angivet med angivelse af dato. Forældede snitflader vil blive udfaset over tid, se længere nede i dokumentet.
Snitflade til normal brug
Sundhedsfaglige anvender servicen gennem en DGWS-snitflade, som skal kaldes med et MOCES niveau 4 medarbejdercertifikat. Sundhed.dk har dog undtagelsesvis whitelisting til at kalde med et niveau 3 certifikat.
...
WSDL-filer | |
---|---|
HTML-side med overblik | <server>/skr/wsdl |
Stamkortregister DGWS | <server>/skr/wsdl/dgws20210602 |
Stamkortregister IDWS | <server>/skr/wsdl/idws20210602 |
Notificeringer i NAS
I forbindelse med skriveoperationer i SKR (oprettelse, opdateringer og sletninger) sker der en notificering via NAS. Se evt. NAS 2.0 Anvenderguide.
De enkelte notificeringer indholder ikke detaljer vedr. opdateringen eller stamkortet, men udelukkende oplysninger om det cprnummer, for hvilket opdateringen har fundet sted. Det er efterfølgende op til anvenderen at hente det opdaterede stamkort ud via snitfladerne.
Følgende er et eksempel på en opdateringsnotificering:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<ns3:Notify xmlns:ns2="http://www.w3.org/2005/08/addressing" xmlns:ns3="http://docs.oasis-open.org/wsn/b-2" xmlns:ns4="http://docs.oasis-open.org/wsn/t-1" xmlns:ns5="http://docs.oasis-open.org/wsrf/bf-2" xmlns:ns6="http://nsi.dk/advis/v10" xmlns:ns8="http://sundhedsdatastyrelsen.dk/skr/2021/06/02">
<ns3:NotificationMessage>
<ns3:Topic Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Simple">SKR-TOPIC</ns3:Topic>
<ns3:Message>
<ns6:NotifyContent id="0309691444" idType="http://nsi.dk/advis/v10/CPR">
<ns8:DataCardUpdated>
<date value="2021-12-22"/>
<id value="0309691444"/>
<messageId value="AAABfeIdUdOcGhp3cE/gtlNPU0k="/>
<type value="http://sundhedsdatastyrelsen.dk/MessageDefinition/PDC-notification"/>
<version value="1"/>
</ns8:DataCardUpdated>
</ns6:NotifyContent>
</ns3:Message>
</ns3:NotificationMessage>
</ns3:Notify> |
Topic der anvendes: http://sundhedsdatastyrelsen.dk/PersonalDataCard/2020/11/01:DataCardUpdated
WSDL
WSDLen for SKR indeholder nedenstående operationer:
...
Hent stamkort for en specifik borger.
Info |
---|
Denne service er beregnet til kald fra Det Fælles Stamkort (FSK). Andre anvendersystemer skal benytte FSK til hent af Stamkort. |
...
UpdateContactInformation_2021_06_02
...
Opret midlertidig adresse for den pågældende borger
Info |
---|
Det har tidligere været muligt at oprette flere midlertidige adresser. Det er dog bestemt efter pilotafprøvningen, at dette ikke skal være muligt. Derfor har den nye udgave af WSDL fjernet denne mulighed, hvis man bruger en tidligere udgave af operationen, så vil man få en SOAP-fejl, om at en en midlertidig adresse allerede findes. |
...
Opret borgers sprog
Info |
---|
Det har tidligere været muligt at oprette flere sprog. Det er dog bestemt efter pilotafprøvningen, at dette ikke skal være muligt. Derfor har den nye udgave af WSDL fjernet denne mulighed, hvis man bruger en tidligere udgave af operationen, så vil man få en SOAP-fejl, om at en et sprog allerede findes. |
...
UpdateLanguage_2021_06_02
...
Opret en tandlæge for den pågældende borger
Info |
---|
Det har tidligere været muligt at oprette flere tandlæger til en borger. Det er dog bestemt efter pilotafprøvningen, at dette ikke skal være muligt. Derfor har den nye udgave af WSDL fjernet denne mulighed, hvis man bruger en tidligere udgave af operationen, så vil man få en SOAP-fejl, om at en en tandlæge allerede findes. |
...
WSDL
WSDLen for SKR indeholder nedenstående operationer:
Operation | Beskrivelse | ||
---|---|---|---|
GetPersonalDataCard_2021_06_02 | Hent stamkort for en specifik borger.
| ||
UpdateContactInformation_2021_06_02 | Opdater en borgers kontaktoplysninger | ||
CreateRelatives_2021_06_02 | Opret en pårørende | ||
UpdateRelatives_2021_06_02 | Opdater en pårørendes stamdata | ||
DeleteRelatives_2021_06_02 | Slet en pårørende | ||
CreateTemporaryAddress_2021_06_02 | Opret midlertidig adresse for den pågældende borger
| ||
UpdateTemporaryAddress_2021_06_02 | Opdater midlertidig adresse | ||
DeleteTemporaryAddress_2021_06_02 | Slet midlertidig adresse | ||
CreateLanguage_2021_06_02 | Opret borgers sprog
| ||
UpdateLanguage_2021_06_02 | Opdater borgers sprog | ||
DeleteLanguage_2021_06_02 | Slet borgers sprog | ||
CreateHealthProvider_2021_06_02 | Opret en tandlæge for den pågældende borger
| ||
UpdateHealthProvider_2021_06_02 | Opdater tandlæge | ||
DeleteHealthProvider_2021_06_02 | Slet en tandlæge | ||
MigratePersonalDataCard_2021_04_08 | Migrering af data fra lokale fagsystemer til Fælles Stamkort |
De enkelte operationer forklares i de følgende afsnit.
Serviceoperationer
Nedenfor beskrives de forskellige operationer i SKR servicen. For hver operation gives eksempler på request/response (for simpelhedens skyld uden DGWS/IDWS headers). Eksemplerne tjener dels til formål at give overblik over hvad der skal til for at bruge en operation, men demonstrerer samtidigt hvilke attributter der er krævet. Dvs. de forskellige requests angiver hvad der som minimum skal angives (dog ikke i situationer hvor der fx slettes to pårørende i samme request - ingen services kræver mere end én liste-indgang).
GetPersonalDataCard
Request
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
Response
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
realmCode | Krævet pr. standard, fast værdi | - | - |
typeId | Krævet pr. standard, fast værdi | - | - |
templateId | Krævet pr. standard, fast værdi | - | - |
id | Krævet pr. standard, fast værdi | - | - |
code | Krævet pr. standard, fast værdi | - | - |
title | Krævet pr. standard, fast værdi | - | - |
effectiveTime | Tidspunkt for generering af svar | ||
confidentialityCode | Krævet pr. standard, fast værdi | - | - |
languageCode | Krævet pr. standard, fast værdi | - | - |
versionNumber | Stamkortets versionsnummer | int(11) | Nej |
recordTarget.patientRole.id | Borgerens CPR-nr i "extension"-attribut | int(10) | Nej |
author.time | Dato/tid. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja (2) |
author.assignedAuthor.assignedPerson.name.given | Seneste stamkort-modifikator, fornavn | varchar(80) | Ja (1) |
author.assignedAuthor.assignedPerson.name.family | Seneste stamkort-modifikator, efternavn | varchar(80) | Ja (1) |
custodian.assignedCustodian.representedCustodianOrganization.id | Krævet pr. standard, fast værdi | - | - |
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.relatedPerson: | |||
id | Pårørendes id (UUID). Skal benyttes som nøgle ifm. UpdateRelatives/DeleteRelatives | varchar(36) | Nej |
associatedEntity.addr | Se tabel længere nede (delt struktur) | - | Ja |
associatedEntity.telecom | 0-3 forekomster med attribut use=H/MC/WP (H=home, MC=mobile contact, WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622" | varchar(45) | Ja (fra release 1.0.5) |
associatedEntity.associatedPerson.name.given | Pårørendes for- og mellemnavn | varchar(80) | Nej |
associatedEntity.associatedPerson.name.family | Pårørendes efternavn | varchar(80) | Ja (fra release 1.0.5) |
relationshipType | Pårørendes type (en af følgende MedCom-typer: uspec_paaroerende, barn, aegtefaelle, forælder, barnebarn, svigerbarn, ingen_relationer, nabo, samboende, registreret_partner, søskende, øvrig_familie) | <relationshipType code=MecomType codeSystem="1.2.208.184.15.4" displayName=MecomType /> | Ja |
note | Fritekstbeskrivelse af den pårørendes rolle i forhold til borgeren, hvilke opgaver personen kan være behjælpelig med osv. | varchar(1000) | Ja |
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej |
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.temporaryAddress: | |||
id | Midlertidig adresses id (UUID). Skal benyttes som nøgle ifm. UpdateTemporaryAddress/DeleteTemporaryAddress | varchar(36) | Nej |
addr | Se tabel længere nede (delt struktur) | - | Nej |
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej |
...
Serviceoperationer
Nedenfor beskrives de forskellige operationer i SKR servicen. For hver operation gives eksempler på request/response (for simpelhedens skyld uden DGWS/IDWS headers). Eksemplerne tjener dels til formål at give overblik over hvad der skal til for at bruge en operation, men demonstrerer samtidigt hvilke attributter der er krævet. Dvs. de forskellige requests angiver hvad der som minimum skal angives (dog ikke i situationer hvor der fx slettes to pårørende i samme request - ingen services kræver mere end én liste-indgang).
GetPersonalDataCard
Request
...
Response
Element | Beskrivelse | Type | Optionel | |||
---|---|---|---|---|---|---|
realmCode | Krævet pr. standard, fast værdi | - | - | |||
typeId | Krævet pr. standard, fast værdi | - | - | |||
templateId | Krævet pr. standard, fast værdi | - | - | |||
id | Krævet pr. standard, fast værdi | - | - | |||
code | Krævet pr. standard, fast værdi | - | - | |||
title | Krævet pr. standard, fast værdi | - | - | effectiveTime | Tidspunkt for generering af svar | |
confidentialityCode | Krævet pr. standard, fast værdi | - | - | |||
languageCode | Krævet pr. standard, fast værdi | - | - | |||
versionNumber | Stamkortets versionsnummer | int(11) | Nej | |||
recordTarget.patientRole.id | Borgerens CPR-nr i "extension"-attribut | int(10) | Nej | |||
author.time | Dato/tid. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja (2) | |||
author.assignedAuthor.assignedPerson.name.given | Seneste stamkort-modifikator, fornavn | varchar(80) | Ja (1) | |||
author.assignedAuthor.assignedPerson.name.family | Seneste stamkort-modifikator, efternavn | varchar(80)Ja (1) | custodian.assignedCustodian.representedCustodianOrganization.id | Krævet pr. standard, fast værdi | - | - |
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.relatedPersonlanguage: | ||||||
id | Pårørendes Sprog id (UUID). Skal benyttes som nøgle ifm. UpdateRelativesUpdateLanguage/DeleteRelativesDeleteLanguage | varchar(36) | Nej | |||
associatedEntity.addr | Se tabel længere nede (delt struktur) | - | Ja | |||
languageCode | Sprogkode (kan være tom for fx spædbørn, borgere uden taleevne mm). Format: ISO-639-1 | char(2) | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.healthProvider: | ||||||
id | Tandlæges id (UUID). Skal benyttes som nøgle ifm. UpdateHealthProvider/DeleteHealthProvider | varchar(36) | Nej | |||
providerType | Indeholder sundhedspersonens type. Pt. altid code/displayName=tandlæge. | - | Nej | |||
organization | Se tabel længere nede (delt struktur) | - | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.patientContact: | ||||||
associatedEntity.telecom | 0-3 forekomster med attribut use=H/MCMP/WP (H=home, MCMP=mobile contactphone, WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622" | varchar(45) | Ja (fra release 1.0.5) | |||
associatedEntity.associatedPerson.name.given | Pårørendes for- og mellemnavn | varchar(80) | Nej | |||
associatedEntity.associatedPerson.name.family | Pårørendes efternavn | varchar(80) | Ja (fra release 1.0.5) | |||
relationshipType | Pårørendes type (en af følgende MedCom-typer: uspec_paaroerende, barn, aegtefaelle, forælder, barnebarn, svigerbarn, ingen_relationer, nabo, samboende, registreret_partner, søskende, øvrig_familie) | <relationshipType code=MecomType codeSystem="1.2.208.184.15.4" displayName=MecomType /> | Ja | |||
note | Fritekstbeskrivelse af den pårørendes rolle i forhold til borgeren, hvilke opgaver personen kan være behjælpelig med osv. | varchar(1000) | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.temporaryAddress: | ||||||
id | Midlertidig adresses id (UUID). Skal benyttes som nøgle ifm. UpdateTemporaryAddress/DeleteTemporaryAddress | varchar(36) | Nej | |||
addr | Se tabel længere nede (delt struktur) | - | Nej | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.language: | ||||||
id | Sprog id (UUID). Skal benyttes som nøgle ifm. UpdateLanguage/DeleteLanguage | varchar(36) | Nej | |||
languageCode | Sprogkode (kan være tom for fx spædbørn, borgere uden taleevne mm). Format: ISO-639-1 | char(2) | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.healthProvider: | ||||||
id | Tandlæges id (UUID). Skal benyttes som nøgle ifm. UpdateHealthProvider/DeleteHealthProvider | varchar(36) | Nej | |||
providerType | Indeholder sundhedspersonens type. Pt. altid code/displayName=tandlæge. | - | Nej | |||
organization | Se tabel længere nede (delt struktur) | - | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej | |||
Nedenstående elementer hører alle under component.structuredBody.component.section.entry.patientContact: | ||||||
telecom | 0-3 forekomster med attribut use=H/MP/WP (H=home, MP=mobile phone, WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622" | varchar(45) | Ja | |||
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej |
(1): Mangler kun hvis der ikke findes et stamkort
(2): Mangler kun såfremt kald til CPR-enkeltopslag (SCES) fejler
I situationer hvor der endnu ikke er oprettet et stamkort, vil svaret være uden "structuredBody", men stadig med CPR-data i headeren.
Hvis der skulle opstå en teknisk fejl ifm. kommunikationen med CPR, vil svaret kun indeholde udvalgte attributter.
Request-eksempel:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://sundhedsdatastyrelsen.dk/skr/2021/06/02">
<soapenv:Header/>
<soapenv:Body>
<ns:GetPersonalDataCardRequest>
<id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2"/>
</ns:GetPersonalDataCardRequest>
</soapenv:Body>
</soapenv:Envelope>
|
Response-eksempel:
dataEnterer | Se tabel længere nede (delt struktur) | - | Nej |
(1): Mangler kun hvis der ikke findes et stamkort
(2): Mangler kun såfremt kald til CPR-enkeltopslag (SCES) fejler
I situationer hvor der endnu ikke er oprettet et stamkort, vil svaret være uden "structuredBody", men stadig med CPR-data i headeren.
Hvis der skulle opstå en teknisk fejl ifm. kommunikationen med CPR, vil svaret kun indeholde udvalgte attributter.
Request-eksempel:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://sundhedsdatastyrelsen.dk/skr/2021/06/02">
<soapenv:Header/>
<soapenv:Body>
<ns:GetPersonalDataCardRequest>
<id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2"/>
</ns:GetPersonalDataCardRequest>
</soapenv:Body>
</soapenv:Envelope>
|
Response-eksempel:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns6:GetPersonalDataCardResponse xmlns:ns2="urn:hl7-org:v3" xmlns:ns3="urn:hl7-org:sdtc" xmlns:ns4="urn:hl7-org:fsk" xmlns:ns6="http://sundhedsdatastyrelsen.dk/skr/2021/06/02">
<ClinicalDocument classCode="DOCCLIN" moodCode="EVN">
<ns2:realmCode code="DK"/>
<ns2:typeId extension="POCD_HD000040" root="2.16.840.1.113883.1.3"/>
<ns2:templateId root="1.2.208.184.15.1"/>
<ns2:id assigningAuthorityName="MedCom" extension="NA" root="1.2.208.184"/>
<ns2:code code="NA" codeSystem="1.2.208.184.15.1" displayName="Stamkort"/>
<ns2:title>Det Fælles StamKort</ns2:title>
<ns2:effectiveTime value="20211109105024+0100"/>
<ns2:confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/>
<ns2:languageCode code="da-DK"/>
<ns2:versionNumber value="186"/>
<ns2:recordTarget contextControlCode="OP" typeCode="RCT">
<ns2:patientRole classCode="PAT" nullFlavor="NA">
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2"/>
</ns2:patientRole>
</ns2:recordTarget>
<ns2:author>
<ns2:time value="20211109105023+0100"/>
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="ANONYM | ||||||
Code Block | ||||||
| ||||||
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Header/> <SOAP-ENV:Body> <ns6:GetPersonalDataCardResponse xmlns:ns2="urn:hl7-org:v3" xmlns:ns3="urn:hl7-org:sdtc" xmlns:ns4="urn:hl7-org:fsk" xmlns:ns6="http://sundhedsdatastyrelsen.dk/skr/2021/06/02"> <ClinicalDocument classCode="DOCCLIN" moodCode="EVN"> <ns2:realmCode code="DK"/> <ns2:typeId extension="POCD_HD000040" root="2.16.840.1.113883.1.3"/> <ns2:templateId root="1.2.208.184.15.1"/> <ns2:id assigningAuthorityName="MedCom" extension="NA" root="1.2.208.176.1.1842"/> <ns2:code code="NA" codeSystem="1.2.208.184.15.1" displayName="Stamkort"/> <ns2:title>Det Fælles StamKort</ns2:title> <ns2:effectiveTime value="20211109105024+0100"/> <ns2:confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/> <ns2:languageCode code="da-DK"/> <ns2:versionNumber value="186"/> <ns2:recordTarget contextControlCode="OP" typeCode="RCT">assignedPerson> <ns2:name> <ns2:given>Anders</ns2:given> <ns2:family>Andersen</ns2:family> </ns2:name> </ns2:assignedPerson> </ns2:assignedAuthor> </ns2:author> <ns2:custodian> <ns2:patientRole classCode="PAT" nullFlavor="NA">assignedCustodian> <ns2:id assigningAuthorityName="CPR" extension="0309691444"representedCustodianOrganization> <ns2:id root="1.2.208.176.1.2NA"/> </ns2:patientRole>representedCustodianOrganization> </ns2:recordTarget>assignedCustodian> <ns2</ns2:author>custodian> <ns2:time value="20211109105023+0100"/>component> <ns2:assignedAuthor>structuredBody> <ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2"/>component> <ns2:assignedPerson> <ns2:name>section> <ns2:given>Anders<text>FSK</ns2:given>text> <ns2:family>Andersen</ns2:family> </ns2:name> </ns2:assignedPerson> </ns2:assignedAuthor> </ns2:author> <ns2:custodian> <ns2:assignedCustodian> <ns2:representedCustodianOrganization> <ns2:id root="NA"/> </ns2:representedCustodianOrganization> </ns2:assignedCustodian> </ns2:custodian> <ns2:component> <ns2:structuredBody> <ns2:component> <ns2:section> <ns2:text>FSK</ns2:text> <ns2:entry> entry> <ns4:relatedPerson> <ns4:id extension="f4ea9b0a-21d2-45b6-9ab3-bfb2f4d777ec" root="1.2.208.184.15.3"/> <ns4:associatedEntity classCode="CON"> <ns2:addr isNotOrdered="false" use="H"> <ns2:streetAddressLine>Trifork</ns2:streetAddressLine> <ns2:streetAddressLine>Europaplads 2</ns2:streetAddressLine> <ns2:postalCode>8000</ns2:postalCode> <ns2:city>Aarhus</ns2:city> <ns2:country>Denmark</ns2:country> </ns2:addr> <ns2:telecom use="H" value="tel:86111213"/> <ns2:telecom use="MC" value="tel:25111213"/> <ns2:telecom use="WP" value="tel:70111213"/> <ns2:associatedPerson> <ns2:name> <ns2:given>Chris</ns2:given> <ns2:family>Green</ns2:family> </ns2:name> </ns2:associatedPerson> </ns4:associatedEntity> <ns4:relationshipType code="barn" codeSystem="1.2.208.184.15.4" displayName="Barn"/> <ns4:note>54b0554f-2ac1-4140-a66f-5c692f2eeb5f Kan være behjælpelig med kørsel udenfor arbejdstiden</ns4:note> <ns4:dataEnterer> <ns2:time value="20211109105021+0100"/> <ns2:assignedAuthor> <ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2"/> <ns2:assignedPerson> <ns2:name> <ns2:given>Anders</ns2:given> <ns2:family>Andersen</ns2:family> </ns2:name> </ns2:assignedPerson> </ns2:assignedAuthor> </ns4:dataEnterer> </ns4:relatedPerson> </ns2:entry> <ns2:entry> <ns4:patientContact> <ns4:telecom use="H" value="tel:536f08a1-cf84-4c8c-9266-03c9a687a1ce"/> <ns4:telecom use="MC" value="tel:25111213"/> <ns4:telecom use="WP" value="tel:25111214"/> <ns4:dataEnterer> <ns2:time value="20211109104421+0100"/> <ns2:assignedAuthor> <ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2"/> <ns2:assignedPerson> <ns2:name> <ns2:given>Anders</ns2:given> <ns2:family>Andersen</ns2:family> </ns2:name> </ns2:assignedPerson> </ns2:assignedAuthor> </ns4:dataEnterer> </ns4:patientContact> </ns2:entry> </ns2:section> </ns2:component> </ns2:structuredBody> </ns2:component> </ClinicalDocument> </ns6:GetPersonalDataCardResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://sundhedsdatastyrelsen.dk/skr/2021/06/02"
xmlns:urn="urn:hl7-org:v3" >
<soapenv:Header/>
<soapenv:Body>
<ns:DeleteHealthProviderRequest>
<id assigningAuthorityName="CPR" extension="2512484916" root="1.2.208.176.1.2"/>
<healthProviderId assigningAuthorityName="FSK" extension="HEALTH_PROVIDER_ID" root="1.2.208.184.15.13"/>
<dataEnterer>
<urn:time value="20170921094500+0100"/>
<urn:assignedAuthor>
<urn:id assigningAuthorityName="CPR" extension="0501792275" root="1.2.208.176.1.2"/>
<urn:assignedPerson>
<urn:name>
<urn:given>Anders</urn:given>
<urn:family>Andersen</urn:family>
</urn:name>
</urn:assignedPerson>
</urn:assignedAuthor>
</dataEnterer>
</ns:DeleteHealthProviderRequest>
</soapenv:Body>
</soapenv:Envelope> |
Response-eksempel (indeholder ingen data):
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:DeleteHealthProviderResponse xmlns:ns2="http://sundhedsdatastyrelsen.dk/skr/2021/06/02"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
Addr
Bemærk at der på en "addr"-struktur skal anvendes attribut isNotOrdered="false", da funktionalitet afhænger af en bestemt rækkefølge af streetAddressLine.
...
1 eller 2 forekomster. 1 til at indikere en periode gældende fra et givet tidpunkt og fremad, eller 2 til at angive et datointerval, f.eks. således (værdien operator="I" betyder "intersection"):
<cda:useablePeriod value="20140106" operator="I"/>
<cda:useablePeriod value="20250106" operator="I"/>
Format for value-attributten er yyyyMMdd
Info |
---|
Bemærk at Addr er en delt adresse struktur som benyttes af flere elementer, for midlertidig adresse "temporaryAddress" er useable period ikke optionel - der er det påkrævet at der sættes en start og en slutdato således adressen er gældende for en periode. (Fra release 1.0.5 gøres slutdato'en optionel) |
...
Envelope> |
Response-eksempel (indeholder ingen data):
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:DeleteHealthProviderResponse xmlns:ns2="http://sundhedsdatastyrelsen.dk/skr/2021/06/02"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
Addr
Bemærk at der på en "addr"-struktur skal anvendes attribut isNotOrdered="false", da funktionalitet afhænger af en bestemt rækkefølge af streetAddressLine.
Element | Beskrivelse | Type | Optionel | ||
---|---|---|---|---|---|
streetAddressLine | Adresselinje, 0-4 forekomster | varchar(80) | Ja | ||
postalCode | Postnummer | varchar(10) | Ja | ||
city | By | varchar(80) | Ja | ||
country | Land | varchar(80) | Ja | ||
useablePeriod | 1 eller 2 forekomster. 1 til at indikere en periode gældende fra et givet tidpunkt og fremad, eller 2 til at angive et datointerval, f.eks. således (værdien operator="I" betyder "intersection"): <cda:useablePeriod value="20140106" operator="I"/> Format for value-attributten er yyyyMMdd
| varchar(8) for value-attribut | Ja (men ikke for temporayAdress) |
Organization
Organisation anvendes til at beskrive navn, adresse mv. for en tandlæge
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives organisationens ydernummer | varchar(80) | Ja |
name | Navn på organisationen | varchar(120) | Ja |
telecom | Telefonnummer på organisationen Attribut use=WP (WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622" | varchar(45) | Ja |
addr.streetAddressLine | Adresselinje. Der kan forekomme op til 4 linjer i en adresse | varchar(80) | Ja |
addr.postalCode | Postnummer | varchar(80) | Ja |
addr.city | Bynavn | varchar(80) | Ja |
addr.country | Land | varchar(80) | Ja |
DataEnterer
Den generelle dataEnterer-struktur der anvendes på diverse request, samt på relatedPerson, temporaryAddress og language, ser ud som følger (organisationsoplysninger skal angives hvis der er tale om en sundhedsperson):
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
time | Tidspunkt for opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Nej |
assignedAuthor.id | En eller flere forekomster med værdi i attribut "extension" og type (fx CPR/AUTORISATION/UDDANNELSESKODE) i attribut "assigningAuthorityName". Ved responses forekommer kun ét element, hvor assigningAuthorityName="CPR" og extension="ANONYM" for at skjule følsomme oplysninger om eksempelvis sundhedsfaglige. | extension varchar(10), assigningAuthorityName varchar(30) | Nej |
assignedAuthor.assigningPerson.name.given | For- og mellemnavn på person bag opdatering | varchar(80) | Nej |
assignedAuthor.assigningPerson.name.family | Efternavn på person bag opdatering | varchar(80) | Nej |
assignedAuthor.representedOrganization.id | Organisations id, såfremt der er tale om en sundhedsperson. Værdi findes i attribut "extension", type i attribut "assigningAuthorityName" | extension varchar(80), assigningAuthorityName varchar(30) | Ja |
assignedAuthor.representedOrganization.name | Organisations navn | varchar(30) | Ja |
Migreringssnitflade
Der er lavet en midlertidig migregingsnitflade der kan benyttes til migrerering af lokale stamkort.
De gennerelle beskrivelser under afsnittet om snitfladen til normalt brug er og så gældende her. I dette afsnit beskrives kun det der specielt for migreringssnitfladen.
Til migreringssnitfladen er der følgende wsdl fil.
WSDL-filer | |
---|---|
Stamkortregister DGWS | <server>/skr/wsdl/dgws20210408 |
MigratePersonalDataCard
Request-eksempel: Migrate_request.xml
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
contactInformation | 0-3 forekomster med attribut use=H/MP/WP (H=home, MP=mobile phone, WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622" | varchar(45) | Ja |
relatedPersons | Liste-struktur tilsvarende relatedPerson i GetPersonalDataCard response | - | Ja |
temporaryAddress | Den midlertidige adresse der skal oprettes. Indeholder addr-struktur, som beskrevet længere nede | - | Ja |
language | Sprogkode. Format: ISO-639-1 | char(2) | Ja |
dataEntererMigration | Systemet der migrerer stamkort. Se tabel længere nede (delt struktur) | - | Nej |
Fejl situatuioner i forbindelse med MigratePersonalDataCard
Udover xml valideringsfejl og interne fejl kan migrerings snitflade returnerer følgende fejlkoder.
Fejl fordi stamkort i skr er verificeret af borgeren. Fejlkode 800
I denne situation har borgeren allerede verificere stamkortet i skr.
Der forsøges migrering af sprog, men da borgeren allerede har verificeret stamkortet fejles med fejlkode 800.
Request-eksempel: FailVerifiedLanguageExist_request.xml
Code Block | ||
---|---|---|
| ||
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring xml:lang="en">800: Fejl i request i forbindelse med migrering af stamkort, Fælles Stamkort er verificeret af borgeren</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
|
Fejl fordi stamkort i skr allerede indeholder telefonnummer af samme type. Fejlkode 810
I denne situation har stakmkortet i skr allerede et arbejdstelefonnummer.
Der forsøges migrering af arbejdstelefonnummer.
Request-eksempel: FailWorkPhoneExist_request.xml
Code Block | ||
---|---|---|
| ||
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring xml:lang="en">810: Fejl i request i forbindelse med migrering af stamkort, Der eksisterer et telefonnummer af type arbejde i forvejen</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
|
Fejl fordi stamkort i skr allerede indeholder sprog. Fejlkode 820
I denne situation indeholder stakmkortet i skr borgerens sprog.
Der forsøges migrering af sprog.
Request-eksempel: FailLanguageExist_request.xml
Code Block | ||
---|---|---|
| ||
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring xml:lang="en">820: Fejl i request i forbindelse med migrering af stamkort, Borgerens sprog eksisterer i forvejen</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body> |
Fejl fordi stamkort i skr allerede indeholder midlertidig adresse. Fejlkode 830
I denne situation indeholder stakmkortet i skr en midlertidig adresse på borgeren.
Der forsøges migrering af midlertidig adresse.
Request-eksempel: FailTemporaryAddressExist_request.xml
Code Block | ||
---|---|---|
| ||
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring xml:lang="en">830: Fejl i request i forbindelse med migrering af stamkort, Borgerens midlertidige adresse eksisterer i forvejen</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body> |
DataEntererMigration
Den generelle dataEnterer-struktur der anvendes på Migrations requestet, ser ud som følger, da det er en systembruger der benyttes ved migrationssnitfladen skal organisationsoplysninger angives
Organization
Organisation anvendes til at beskrive navn, adresse mv. for en tandlæge
...
Telefonnummer på organisationen
Attribut use=WP (WP=work place). Telefonnummer angives i attributten "value" med præfix "tel:", fx value="tel:01123622"
...
DataEnterer
Den generelle dataEnterer-struktur der anvendes på diverse request, samt på relatedPerson, temporaryAddress og language, ser ud som følger (organisationsoplysninger skal angives hvis der er tale om en sundhedsperson):
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
time | Tidspunkt for opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Nej |
assignedEntity.id | En eller flere forekomster med værdi i attribut "extension" og type |
SOR i attribut "assigningAuthorityName". Ved responses forekommer kun ét element, hvor assigningAuthorityName="CPR" og extension="ANONYM" for at skjule følsomme oplysninger om eksempelvis sundhedsfaglige. | extension varchar( |
80), assigningAuthorityName varchar(30) | Nej |
assignedEntity.addr.streetAddressLine | Adresselinje. Der kan forekomme op til 4 linjer i en adresse | varchar(80) | ja |
assignedEntity.addr.postalCode | Postnummer | varchar(80) |
ja |
assignedEntity.addr.city | Bynavn | varchar(80) | ja |
assignedEntity.addr.country | Land | varchar(80) |
ja |
assignedEntity.representedOrganization.id |
Organisations id, såfremt der er tale om en sundhedsperson. Værdi findes i attribut "extension", type i attribut "assigningAuthorityName" | extension varchar(80), assigningAuthorityName varchar(30) |
ja |
Ældre snitflader
Der har tidligere været føldende snitflader. Disse bør ikke benyttes længere da de vil blive udfaset. Da disse kun har historisk værdi beskrives de ikke yderligere i dette dokument.
...