Overblik
Stamkortregistret (SKR) er en service med operationer til registrering og udstilling af stamdata for borgere. Dette inkluderer pårørende, midlertidige adresser, sprog mm. Servicen beskrives i det følgende, som forudsætter kendskab til HL7 CDA og webservices.
Ændringslog
Version | Dato | Ændring | Ansvarlig |
---|---|---|---|
2018-08-31 | Initialt dokument | Trifork | |
2018-09-13 | Tilføjet manglende beskrivelse af ID-attribut for Language-struktur (UUID). Beskrivelse af, at Stamkort hentes via Det Fælles Stamkort | Trifork | |
2018-09-19 | Rettet et forkert link til CreateTemporaryAddress request eksempel. | Trifork | |
2018-10-09 | Tilføjet og updateres create requests eksempler med id (Uuid) | Trifork | |
2018-10-11 | Præcisering omkring antal midlertidige adresser, så der altid kun er én | SDS | |
2018-11-29 | Tilrettet, således at fornavn og efternavn på pårørende er påkrævede. (Der er bestilt en ændring, således efternavn gøres optionelt) | SDS | |
2019-01-04 | Tilrettet således pårørendes telefonnummer, efternavn gøres optionel Slut-dato på midlertidig adresse gøres optionel | SDS | |
1.0.11 | 2019-08-02 | Opdateret beskrivelse af snitflade til 2019/08/01-snitfladen | Trifork |
1.0.17 | 2020-08-05 | Opdateret beskrivelse af snitflade til 2020/07/28-snitfladen | Kvalitetsit |
1.0.18 | 2021-04-27 | Ny migreringssnitflade | Kvalitetsit |
1.0.19 | 2021-06-08 | navne skift i snitflade fra fsk til skr | Kvalitetsit |
1.0.21 | 2021-09-02 | Præcisering af URL til wsproxy | KvalitetsIT |
1.0.22 | 2021-11-02 | Præcisering af snitflader | KvalitetsIT |
1.0.24 | 2022-04-27 | Dokumentation af valideringsbeskeder tilføjet | KvalitetsIT |
1.0.25 | 2023-06-15 | SDS-6305: Sproglig ajourføring | KvalitetsIT |
Indhold
HL7 CDA
Modellen der anvendes til at repræsentere stamdata er HL7 CDA (se evt. http://www.hl7.org/implement/standards/product_brief.cfm?product_id=7), som er en XML-baseret standard til repræsentation af kliniske data. HL7 CDA er et begrebsapparat, som kan repræsentere en enorm mængde af forskelligartede data, hvoraf kun en lille delmængde anvendes i SKR. Det anbefales derfor at studere eksemplerne der refereres her på siden frem for modellen der defineres af HL7 CDA, da de giver et mere præcist billede af hvilke data der kræves og returneres af de forskellige operationer. CDA-terminologien gør, at man kan kvalificere de forskellige begreber gennem attributter (fx at en adresse er en hjemmeadresse ved at angive use="H"), og derfor sker der validering i SKR af, at disse attributter anvendes korrekt, så der ikke er tvivl om hvordan data skal fortolkes. Dvs. i praksis sker der en strengere validering end WSDL og XSDer dikterer.
Et stamkort består kort fortalt af borgerens navn- og adresseoplysninger samt et antal pårørende (med tilhørende kontakt- og fritekstoplysninger), evt. midlertidig(e) adresse(r), og borgerens sprog. SKR indeholder operationer til vedligehold af disse data. Der sker registrering af, hvem der opdaterer de forskellige elementer af borgerens stamkort, og disse oplysninger udstilles på stamkortet.
Begreber
Et stamkort repræsenteres som et "ClinicalDocument", som er grundpillen i CDA. Ifm. SKR er der lavet en extension til CDA, som gør det muligt at repræsentere pårørende, midlertidige adresser, sprog mv. som entry-typer i dokumentets "structuredBody". Nedenfor ses ClinicalDocument-strukturen som det benyttes i SKR:
Selve dokumentets "header" indeholder (udover personen der senest har opdateret stamkortet) de statiske data, som trækkes fra CPR-registeret, og ikke kan opdateres gennem SKRs operationer. De egentlige stamkort-data ligger under "StructuredBody", som indeholder en liste en "entry"-sektioner. Disse kan i SKR-sammenhæng have indhold af typen relatedPerson, temporaryAddress, language og healthprovider. De to førstnævnte har sin egen id, som skal benyttes hvis man ønsker at slette eller opdatere entiteten via de relevante operationer. Hvis man fx ønsker at opdatere stamdata på en pårørende (RelatedPerson), så skal man bruge id'et man finder på vedkommende i "GetPersonalDataCard" til det request man sender til "UpdateRelatives"-operationen. Tilsvarende for midlertidige adresser.
Ifm. HL7 CDA er der defineret en række "OIDer", som hver især definerer et udfaldsrum for forskellige id/kode-typer. Meningen er, at der til et id (på fx en person, altså CPR-nummer) defineres et OID, som kan betragtes som en type-erklæring. For SKR er følgende OIDer aktuelle:
Type | OID | Beskrivelse | Eksempel |
---|---|---|---|
Patientkontakt | 1.3.6.1.4.1.19376.1.5.3.1.2.4 | Template-id på participant (se evt. https://wiki.ihe.net/index.php/1.3.6.1.4.1.19376.1.5.3.1.2.4) | <ns2:participant typeCode="IND"> <ns2:templateId root="1.3.6.1.4.1.19376.1.5.3.1.2.4"/> |
SOR | 1.2.208.176.1.1 | Type af organisations-ID baseret på SOR. | <id extension="368061000016003" root="1.2.208.176.1.1" assigningAuthorityName="SOR"/> |
SKS | 2.16.840.1.113883.3.4208.100.5 | Type af organisations-ID baseret på SKS. | <id extension="368061000016003" root="2.16.840.1.113883.3.4208.100.5" assigningAuthorityName="SKS"/> |
CVR-P | 1.2.208.184.15.9* | Type af organisations-ID baseret på CVR-P. | <id extension="368061000016003" root="1.2.208.184.15.9" assigningAuthorityName="CVR-P"/> |
CVR | 1.2.208.184.15.10* | Type af organisations-ID baseret på CVR. | <id extension="368061000016003" root="1.2.208.184.15.10" assigningAuthorityName="CVR"/> |
Ydernummer | 1.2.208.184.15.8* | Type af organisations-ID baseret på Ydernummer. | <id extension="368061000016003" root="1.2.208.184.15.8" assigningAuthorityName="Yder"/> |
Kommunekode | 1.2.208.184.15.11* | Type af organisations-ID baseret på Kommunekode. | <id extension="3680610000" root="1.2.208.184.15.11" assigningAuthorityName="Kommunekode"/> |
CPR | 1.2.208.176.1.2 | CPR-nummer | <id extension="2512489996" root="1.2.208.176.1.2" assigningAuthorityName="CPR"/> |
DK MedCom (member body) | 1.2.208.184 | Id på ClinicalDocument. Ikke aktual ifm. SKR (extension=NA) | <ns2:id assigningAuthorityName="MedCom" extension="NA" root="1.2.208.184"/> |
Fortrolighed | 2.16.840.1.113883.5.25 | Altid N=Normal ifm. SKR | <ns2:confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/> |
ISO-angivelse af sprog | 1.0.639.1 | ISO-639-1 formatteret sprog | <ns4:languageCode codeSystem="1.0.639.1">de</ns4:languageCode> |
ISO-angivelse af køn | 2.16.840.1.113883.5.1 | En borgers køn (M/F) | <ns2:administrativeGenderCode code="F" codeSystem="2.16.840.1.113883.5.1"/> |
Dokument type-id | 2.16.840.1.113883.1.3 | HL7-registreret RMIM (HL7 internal) | <ns2:typeId extension="POCD_HD000040" root="2.16.840.1.113883.1.3"/> |
Stamkode code system | 1.2.208.184.15.1* | Kodesystem, ikke aktuel ifm. SKR (code=NA) | <ns2:code code="NA" codeSystem="1.2.208.184.15.1" displayName="Stamkort"/> |
Midlertidig adresse | 1.2.208.184.15.2* | IDer (UUID) på midlertidige adresse | <ns4:temporaryAddress> |
Pårørende | 1.2.208.184.15.3* | IDer (UUID) på pårørende | <ns4:relatedPerson> |
Pårørende type | 1.2.208.184.15.4* | Følger MedCom-definerede typer for pårørende: uspec_paaroerende, barn, aegtefaelle, forældre, barnebarn, svigerbarn, ingen_relationer, nabo, samboende, registreret_partner, søskende, øvrig_familie | <ns2:code code="uspec_paaroerende" codeSystem="1.2.208.184.15.4"/> |
Autorisationsid | 1.2.208.176.1.3* | IDer (UUID) på autorisationskoder | <ns2:id assigningAuthorityName="AUTORISATION" extension="09YM8" root="1.2.208.176.1.3"/> |
* id defineres endeligt af MedCom.
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
Notifikationer i NAS
I forbindelse med skriveoperationer i SKR (oprettelse, opdateringer og sletninger) oprettes notifikationer via NAS. Se evt. NAS 2.0 Anvenderguide.
De enkelte notifikationer indholder ikke detaljer vedr. opdateringen eller stamkortet, men udelukkende oplysninger om det cprnummer der er blevet opdateret. Det er efterfølgende op til anvenderen at hente det opdaterede stamkort ud via snitfladerne.
Følgende er et eksempel på en opdateringsnotifikation:
Der anvendes dette topic: http://sundhedsdatastyrelsen.dk/PersonalDataCard/2020/11/01:DataCardUpdated
Snitflader
Til SKR er der 3 forskellige typer af snitflader:
- Til normalt brug
- Til asynkron opdatering af stamkortet
- Til migreringsbrug.
Derudover er et antal forældede snitflader der 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.
Borgere anvender servicerne gennem en IDWS-snitflade og har adgang til alle operationer. Der understøttes ikke fuldmagter.
Snitfladerne skal kaldes skal kaldes gennem NSP'ens DCC endpoint (afkoblingskomponenten). Driftsvejledningen beskriver i detaljer hvad der findes af endpoints.
Server-URL'er for de forskellige test-miljøer kan findes på Endpoints for eksterne testmiljøer.
Stamkortet kan desuden hentes som et "on demand"-dokument via Dokumentdelingsservicen (DDS).
WSDL-filer | |
---|---|
HTML-side med overblik | <server>/skr/wsdl |
Stamkortregister DGWS | <server>/skr/wsdl/dgws20210602 |
Stamkortregister IDWS | <server>/skr/wsdl/idws20210602 |
WSDL
WSDLen for SKR indeholder nedenstående operationer:
Operation | Beskrivelse |
---|---|
GetPersonalDataCard_2021_06_02 | Hent stamkort for en specifik borger. 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 | 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 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. |
UpdateTemporaryAddress_2021_06_02 | Opdater midlertidig adresse |
DeleteTemporaryAddress_2021_06_02 | Slet midlertidig adresse |
CreateLanguage_2021_06_02 | Opret borgers sprog 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 | Opdater borgers sprog |
DeleteLanguage_2021_06_02 | Slet borgers sprog |
CreateHealthProvider_2021_06_02 | Opret en tandlæge for den pågældende borger 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. |
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 /> | Nej |
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:
Response-eksempel:
UpdateContactInformation
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
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) | Nej |
dataEnterer | Personen der opdaterer. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
CreateRelatives
Beskrivelse | Type | Optionel | |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
relatedPerson | Liste-struktur tilsvarende relatedPerson i GetPersonalDataCard response | - | Nej |
relatedPerson.id | ID til den pårørende der skal oprettes (UUID) | varchar(36) | Ja |
dataEnterer | Personen der opretter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Request-eksempel med Id:
Response-eksempel (indeholder ingen data):
UpdateRelatives
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives id på en "relatedPerson" fra svaret på en GetPersonalDataCard | varchar(10) | Nej |
relatedPerson | Liste-struktur tilsvarende relatedPerson i GetPersonalDataCard response | - | Nej |
dataEnterer | Personen der opdaterer. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
DeleteRelatives
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
relativeId | ID(er) på den/de pårørende der skal slettes. Hvert id skal matche id (UUID) på en relatedPerson fra svaret på en GetPersonalDataCard | varchar(36) | Nej |
dataEnterer | Personen der sletter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
CreateTemporaryAddress
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
temporaryAddress.id | ID på den midlertidige adresse der skal oprettes (UUID) | varchar(36) | Ja |
temporaryAddress.addr | Den midlertidige adresse der skal oprettes. Indeholder addr-struktur, som beskrevet længere nede | - | Nej |
dataEnterer | Personen der opretter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Request-eksempel med id:
Response-eksempel (indeholder ingen data):
UpdateTemporaryAddress
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
temporaryAddress.id | ID på den midlertidige adresse der skal opdateres. Skal modsvare id (UUID) på en temporaryAddress fra svaret på en GetPersonalDataCard | varchar(36) | Nej |
temporaryAddress.addr | Den midlertidige adresse der skal oprettes. Indeholder addr-struktur, som beskrevet længere nede | - | Nej |
dataEnterer | Personen der opdaterer. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
DeleteTemporaryAddress
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
temporaryAddressId | ID på den/de midlertidige adresse der skal slettes. | varchar(36) | Nej |
dataEnterer | Personen der sletter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
CreateLanguage
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
language.id | ID på det sprog der skal oprettes (UUID) | varchar(36) | Ja |
language.languageCode | Sprogkode. Format: ISO-639-1 | char(2) | Nej |
dataEnterer | Personen der opretter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Request-eksempel med id:
Response-eksempel (indeholder ingen data):
UpdateLanguage
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
language.id | ID på det sprog der skal opdateres. | varchar(36) | Nej |
language.languageCode | Sprogkode. Format: ISO-639-1 | char(2) | Nej |
dataEnterer | Personen der opdaterer. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
DeleteLanguage
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
languageId | ID på det sprog der skal slettes. | varchar(36) | Nej |
dataEnterer | Personen der sletter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
CreateHealthProvider
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
healthProvider.id | ID på den tandlæge der skal oprettes (UUID) | varchar(36) | Ja |
healthProvider.providerType | Som attribut "code" angives "tandlæge", som er den eneste værdi der understøttes i aktuelle version. | - | Nej |
healthProvider.organization | Tandlægeorganisation. Se tabel længere nede (delt struktur) | - | Nej |
dataEnterer | Personen der opretter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Request-eksempel med Id:
Response-eksempel (indeholder ingen data):
UpdateHealthProvider
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
healthProvider.id | ID på den tandlæge der skal opdateres | varchar(36) | Nej |
healthProvider.providerType | Som attribut "code" angives "tandlæge", som er den eneste værdi der understøttes i aktuelle version. | - | Nej |
healthProvide.organization | Tandlægeorganisation. Se tabel længere nede (delt struktur) | - | Nej |
dataEnterer | Personen der opdaterer. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
DeleteHealthProvider
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
healthProvider.id | ID på den tandlæge der skal slettes. | varchar(36) | Nej |
dataEnterer | Personen der sletter. Se tabel længere nede (delt struktur) | - | Nej |
Request-eksempel:
Response-eksempel (indeholder ingen data):
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(men ikke for temporayAdress) |
postalCode | Postnummer | varchar(10) | Ja(men ikke for temporayAdress) |
city | By | varchar(80) | Ja(men ikke for temporayAdress) |
country | Land | varchar(80) | Ja(men ikke for temporayAdress) |
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 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) | 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/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(10), assigningAuthorityName varchar(30) | Nej |
assignedAuthor.assigningPerson.name.given | For borgere: For- og mellemnavn på person bag opdatering For sundhedsfaglige: enten for- og evt. mellemnavn på person bag opdatering eller titel - f.eks. "Lægesekretær" | varchar(80) | Nej |
assignedAuthor.assigningPerson.name.family | For borgere: Efternavn på person bag opdatering For sundhedsfaglige: enten efternavn på person bag opdatering eller overordnet sundhedsorganisation - f.eks. "Region Nordjylland" and "Silkeborg kommune" | 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 (Bemærk denne attribut udstilles ikke i CDA for Fælles stamkort version PDC-DK-v.2.0) | varchar(30) | Ja |
Snitflade til asynkron opdatering af stamkortet (Savedatacardsnitflade)
Denne snitflade gør det muligt at data kan opdateres asynkront på baggrund af et systemkald. Snitfladen understøtter niveau 3 ID-kort (via OCES funktionscertifikater (FOCES)) samt niveau 4 ID-kort. Anvendes niveau 3 ID-kort, pålægges det anvendersystemet at lave en registrering i borgerens Minlog med angivelse af den sundhedsfaglige bruger som ændringen skrives på vegne af.
Snitfladen udstiller en enkelt operation, der tillader at borgerens stamdata enten oprettes, redigeres eller slettes. Det er ikke muligt at læse via denne snitflade og her skal øvrige snitflader i stedet benyttes.
Opdatering:
Inden opdatering skal anvenderen have synkroniseret data der består i at hente en lokal kopi fra stamkortregisteret. Denne lokale kopi sendes til ”savadatacard” webservicen. Bemærk, alle information fra stamkortregisteret pånær "dataenterer" information skal medsendes ved hvert opdateringsrequest.
Webservicens opgave er at sammenligne eksistende data med de medsendte fra stamkortregisteret og her efter udlede hvilke oprettelser, opdateringer og sletninger der skal udføres på data.
Det skal ikke være nødvendigt at sende "dataenterer" tilbage på de elementer der ikke er opdateret, resten af informationen skal dog kunne verificeres af servicen.
Servicen svarer ”200 ok” hvis alt er vel, eller giver en sigende fejlkode tilbage.
Opdateringstidspunkt:
Hvert element (som beskrevet i skrdatacardservice.xsd) har et opdateringstidspunkt. Serviceanvenderen skal opgive sit eget seneste synkroniseringstidspunkt for elementet i ”lastupdated” som er et datatime element i formatet yyyymmddhhmmss+zzzz. Der er ikke millisekunders præcision på dette tidsstempel.
Hvis servertidspunktet for elementet har ændret sig siden den sidste lokale synkronisering/kopi, vil en fejlkode 900 blive returneret, og information fra stamkortregisteret skal genindlæses af anvenderen. Der bliver i det tilfælde ikke opdateret nogle elementer fra stamkortregisteret.
Sletning:
Hvert element (som beskrevet i skrdatacardservice.xsd) kan slettes af borgeren. Anvenderen skal udfylde ”tobeDeleted” og sætte værdien til true. Anvenderens seneste synkroniseringstidspunkt for elementet der forsøges slettet, skal ligeledes angives i ”lastupdated”.
Hvis servertidspunktet for elementet har ændret sig siden den sidste lokale kopi, vil en fejlkode 900 blive returneret, og information fra stamkortregisteret skal genindlæses. Der bliver i det tilfælde ikke slettet nogle elementer fra stamkortregisteret.
Til SaveDatacard-snitfladen er der følgende wsdl fil:
WSDL-filer | |
---|---|
Stamkortregister DGWS | <server>/skr/wsdl/dgws20220210 |
WSDL
WSDLen indeholder nedenstående operationer:
Operation | Beskrivelse |
---|---|
savedatacard_2022_02_10.wsdl | Opdater en borgers stamkort. |
Serviceoperationer for SaveDataCard
Element | Beskrivelse | Type | Optionel |
---|---|---|---|
id | Som attribut "extension" angives personens CPR-nummer (uden bindestreg) | varchar(10) | Nej |
contactInformation | Element for opdatering af kontaktinformation. | - | Ja |
contactInformation.contactInformation.lastupdated | Tidspunkt for seneste opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja |
contactInformation.contactInformation.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) | Nej |
contactInformation.contactInformation.dataEnterer | Personen der opretter. Se tabel ovenfor (delt struktur) | - | Ja |
relatedPersons | Element for opdatering af relatedPersons. Indeholder en liste af RelatedPersonType | - | Ja |
relatedPersons.relatedPerson.id | Pårørendes id (UUID). Skal benyttes som nøgle ifm. UpdateRelatives/DeleteRelatives | varchar(36) | Ja |
relatedPersons.relatedPerson.lastupdated | Tidspunkt for seneste opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja |
relatedPersons.relatedPerson.associatedEntity.addr | Se tabel ovenfor (delt struktur) | - | Ja |
relatedPersons.relatedPerson.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) |
relatedPersons.relatedPerson.associatedEntity.associatedPerson.name.given | Pårørendes for- og mellemnavn | varchar(80) | Nej |
relatedPersons.relatedPerson.associatedEntity.associatedPerson.name.family | Pårørendes efternavn | varchar(80) | Ja (fra release 1.0.5) |
relatedPersons.relatedPerson.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 /> | Nej |
relatedPersons.relatedPerson.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 |
relatedPersons.relatedPerson.dataEnterer | Se tabel længere ovenfor (delt struktur) | - | Ja |
relatedPersons.relatedPerson.tobeDeleted | Indikerer om opdateringen er en sletning af den pårørende. | boolean | Ja |
temporaryAddress | Element for opdatering af midlertidig adresse. | - | Ja |
temporaryAddress.temporaryAddress.id | Midlertid adresse id (UUID). Skal benyttes som nøgle ifm. opdatering og sletning af midlertidig adresse. | varchar(36) | Ja |
temporaryAddress.temporaryAddress.lastupdated | Tidspunkt for seneste opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja |
temporaryAddress.temporaryAddress.addr | Se tabel ovenfor (delt struktur) | - | Nej |
temporaryAddress.temporaryAddress.dataEnterer | Se tabel længere ovenfor (delt struktur) | - | Ja |
temporaryAddress.temporaryAddress.tobeDeleted | Indikerer om opdateringen er en sletning af den pårørende. | boolean | Ja |
language | Element for opdatering af sprog. | Ja | |
language.language.id | Sprog id (UUID). Skal benyttes som nøgle ifm. opdatering og sletning af sprog. | varchar(36) | Ja |
language.language.lastupdated | Tidspunkt for seneste opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja |
language.language.languageCode | Sprogkode. Format: ISO-639-1 | char(2) | Nej |
language.language.dataEnterer | Se tabel længere ovenfor (delt struktur) | - | Ja |
language.language.tobeDeleted | Indikerer om opdateringen er en sletning af sprog. | boolean | Ja |
healthProvider | Element for opdatering af tandlæge. | - | Ja |
healthProvider.healthProvider.id | Sprog id (UUID). Skal benyttes som nøgle ifm. opdatering og sletning af tandlæge. | varchar(36) | Ja |
healthProvider.healthProvider.lastupdated | Tidspunkt for seneste opdatering. Format: yyyyMMddHHmmssZ, fx. 20171024143445+0200 | varchar(19) | Ja |
healthProvider.healthProvider.providerType | Som attribut "code" angives "tandlæge", som er den eneste værdi der understøttes i aktuelle version. | - | Nej |
healthProvider.healthProvider.organization | Tandlægeorganisation. Se tabel ovenfor (delt struktur) | - | Nej |
healthProvider.healthProvider.dataEnterer | Se tabel ovenfor (delt struktur) | - | Ja |
healthProvider.healthProvider.tobeDeleted | Indikerer om opdateringen er en sletning af tandlægen. | boolean | Ja |
Request-eksempel:
Response-eksempel (indeholder ingen data):
Anvenderscenarie
I det følgende gives et ekempel på, hvordan et request kan se ud for en borger, der har et stamkort som opdateres.
Da det skal kunne afgøres om stamkortet opdateres baseret på den seneste version af stamkortet for borgeren, skal requestet indeholde alle uændrede dele af stamkortet sammen med de opdateringer der skal laves. Desuden skal feltet "lastUpdated" være tilstede for alle oplysninger, der bevares, opdateres eller slettes. Kun ved oprettelse af en ikke allerede eksisterende oplysning i stamkortet kan denne udelades. LastUpdated udfyldes med værdierne fra det eksisterende stamkort. For at kunne reflektere disse krav i requestet hentes det eksisterende stamkort for patienten i eksemplet ud:
Fra det hentede stamkort fremgår det at der eksisterer følgende oplysninger:
- relatedPerson: En pårørende: Anne Nielsen, Nabo.
- relatedPerson: En pårørende: Mathias Jensen, Far.
- temporaryAddress: En midlertidig adresse for borgeren.
- patientContact: Kontaktoplysninger på borgeren med et hjemmetelefonnr.
I en opdatering af stamkortet for borgeren ønskes det at:
- Den midlertidige adresse slettes
- En Opdatering af den pårørende Anne Nielsen, hvor navnet rettes til Anna Nielsen
- Der oprettes endnu en pårørende ved navn Tanja Jensen med relationen Mor.
- Der oprettes sprog for borgeren, som er Engelsk.
- Kontaktoplysninger og den anden pårørende forbliver det samme.
- Der er fortsat ikke oprettet en tandlæge i borgerens stamkort.
Der oprettes et SaveDataCardRequest hvor ændringerne reflekteres.
På de forskellige oplysninger oplyses "lastUpdated", som det fremgår af dataEnterer.time feltet i det hentede stamkort.
For sprog og den nye pårørende sættes lastUpdated ikke, da de oprettes fra ny.
Desuden sendes Id også med for de forskellige oplysninger, men da Id er optionelt ved oprettelse, er det heller ikke sat for sprog og den nye pårørende.
For den midlertidige addresse, som skal slettes, sættes toBeDeleted til true.
Dermed kommer requestet til at se således ud:
Mapning af Yder OID mellem FSK og SKR
SaveDataCard snitfladen anvender nogle andre OID'er/værdier end FSK faktisk returnerer, så derfor skal der ske en mapning mellem dem.
Yder OID'er i retursvar fra FSK skal mappes til SKR SaveDataCard request på denne måde:
1.2.208.176.1.4 - NSI OID fra FSK
1.2.208.184.15.8 - Medcom OID der benyttes i SKR
Dvs når man får en korrekt NSI OID ind for yderregisteret fra FSK, så skal man ikke bare indsætte sammen OID i savedatacard snitfladen - der SKAL benyttes den anden MedCom OID.
Migreringssnitflade
Der er lavet en midlertidig migreringssnitflade der kan benyttes til migrering af lokale stamkort.
De generelle 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 migreringssnitfladen returnere følgende fejlkoder.
Fejl fordi stamkort i skr allerede indeholder telefonnummer af samme type. Fejlkode 810
I denne situation har stamkortet i skr allerede et arbejdstelefonnummer.
Der forsøges migrering af arbejdstelefonnummer.
Request-eksempel: FailWorkPhoneExist_request.xml
<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 stamkortet i skr borgerens sprog.
Der forsøges migrering af sprog.
Request-eksempel: FailLanguageExist_request.xml
<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 stamkortet i skr en midlertidig adresse på borgeren.
Der forsøges migrering af midlertidig adresse.
Request-eksempel: FailTemporaryAddressExist_request.xml
<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>
Fejl fordi stamkort i skr allerede indeholder pårørende. Fejlkode 840
I denne situation indeholder stamkortet i skr en eller flere pårørende på borgeren.
Der forsøges migrering af pårørende.
Request-eksempel: FailRelativesExist_request.xml
<SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>SOAP-ENV:Server</faultcode> <faultstring xml:lang="en">840: Fejl i request i forbindelse med migrering af stamkort, Borgerens pårørende 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 migreringssnitfladen skal organisationsoplysninger angives:
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ølgende 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.
WSDL-filer | |
---|---|
Stamkortregister DGWS | <server>/skr/wsdl/dgws20190801 |
Stamkortregister IDWS | <server>/skr/wsdl/idws20190801 |
Stamkortregister DGWS | <server>/skr/wsdl/dgws20200728 |
Stamkortregister IDWS | <server>/skr/wsdl/idws20200728 |
Valideringsbeskeder
Fejlkoder:
Webservicen følger ”Den Gode Webservice 1.0.1” hvilket betyder at fejlkoder, erklæres i faultelementet ”dgwsfault”, som specificerer indholdet af detail elementet for soap:Fault. I DGWS er detail elementet altid en medcom:FaultCode, der indeholder fejlkoden fra ”den gode webservice” som specificeret i deres ”Response-dataliste” eller en webservicespecifik kode.
Ved valideringsfejl for et request til SKR returneres der en fejlbesked, som indeholder en kode og overdnet tekst samt detaljer for fejlen.
Eksempel: 200: Fejl i request i forbindelse med oprettelse af pårørende, Detaljer: Påkrævet element mangler: relatedPerson.associatedEntity.associatedPerson.name.given.
Nedenfor er de mulige fejlbeskeder beskrevet. Første tabel indeholder de overordnede fejlbeskeder og tilhørende fejlkoder, mens tabellen derunder indeholder de fejlbeskeder, der beskriver detaljer for fejlen.
For webservicespecifikke koder er der følgende, som alle pakkes ind i ”skr:FaultCode”:
Valideringsbeskeder
Kode | Besked | Beskrivelse af fejlsituation |
---|---|---|
100 | Der opstod en fejl | - |
101 | Der opstod en fejl i forbindelse med hent stamkort | Fejlen opstår ved kald af operationen GetPersonalDataCard. |
102 | Ingen data fundet | - |
200 | Fejl i request i forbindelse med oprettelse af pårørende | Fejlen opstår når man forsøger at oprette slægtninge ved kald af operationen CreateRelatives og den givne Uuid for slægtningen ikke findes. |
201 | Intern fejl i forbindelse med oprettelse af pårørende | Fejlen opstår ved kald af operationen CreateRelatives. |
210 | Fejl i request i forbindelse med ændring af pårørende | Fejlen opstår når man forsøger at opdatere slægtninge ved kald af operationen UpdateRelatives. |
211 | Intern fejl i forbindelse med ændring af pårørende | Fejlen opstår ved kald af operationen UpdateRelatives. |
220 | Fejl i request i forbindelse med sletning af pårørende | Fejlen opstår når man forsøger at slette slægtninge ved kald af operationen DeleteRelatives og den angivne RelativeId ikke findes. |
221 | Intern fejl i forbindelse med sletning af pårørende | Fejlen opstår ved kald af operationen DeleteRelatives. |
230 | Fejl i request i forbindelse med oprettelse af sprog | Fejlen opstår ved kald af operationen CreateLanguage og den angivne sprogkode ikke eksisterer i databasen. |
231 | Intern fejl i forbindelse med oprettelse af sprog | Fejlen opstår ved kald af operationen CreateLanguage. |
240 | Fejl i request i forbindelse med ændring af sprog | Fejlen opstår ved kald af operationen UpdateLanguage og hvis det angivne sprog mangler eller allerede eksisterer for en person. |
241 | Intern fejl i forbindelse med ændring af sprog | Fejlen opstår ved kald af operationen UpdateLanguage. |
250 | Fejl i request i forbindelse med sletning af sprog | Fejlen opstår ved kald af operationen DeleteLanguage og hvis det angivne LanguageId mangler. |
251 | Intern fejl i forbindelse med sletning af sprog | Fejlen opstår ved kald af operationen DeleteLanguage. |
260 | Fejl i request i forbindelse med oprettelse af midlertidig adresse | Fejlen opstår når man forsøger at oprette TemporaryAddress vha. kald til operationen CreateTemporaryAddress og en af følgende situationer gælder:
|
261 | Intern fejl i forbindelse med oprettelse af midlertidig adresse | Fejlen opstår ved kald af operationen CreateTemporaryAddress. |
270 | Fejl i request i forbindelse med ændring af midlertidig adresse | Fejlen opstår når man forsøger at opdatere TemporaryAddress vha. kald til operationen UpdateTemporaryAddress og en af følgende situationer gælder:
|
271 | Intern fejl i forbindelse med ændring af midlertidig adresse | Fejlen opstår ved kald af operationen UpdateTemporaryAddress. |
280 | Fejl i request i forbindelse med sletning af midlertidig adresse | Fejlen opstår når man forsøger at slette TemporaryAddress vha. kald til operationen DeleteTemporaryAddress og der gælder at den angivne adresse er tom eller ikke eksisterer. |
281 | Intern fejl i forbindelse med sletning af midlertidig adresse | Fejlen opstår ved kald af operationen DeleteTemporaryAddress. |
290 | Fejl i request i forbindelse med oprettelse af tandlæge | Fejlen opstår når man forsøger at oprette HealthProvider vha. kald til operationen CreateHealthProvider og en af følgende situationer gælder:
|
291 | Intern fejl i forbindelse med oprettelse af tandlæge | Fejlen opstår ved kald af operationen CreateHealthProvider. |
300 | Fejl i request i forbindelse med ændring af tandlæge | Fejlen opstår når man forsøger at opdatere HealthProvider vha. kald til operationen UpdateHealthProvider og en af følgende situationer gælder:
|
301 | Intern fejl i forbindelse med ændring af tandlæge | Fejlen opstår ved kald af operationen UpdateHealthProvider. |
310 | Fejl i request i forbindelse med sletning af tandlæge | Fejlen opstår når man forsøger at slette HealthProvider vha. kald til operationen DeleteHealthProvider og en af følgende situationer gælder:
|
311 | Intern fejl i forbindelse med sletning af tandlæge | Fejlen opstår ved kald af operationen DeleteHealthProvider. |
320 | Fejl i request i forbindelse med ændring af kontaktinformation | Fejlen opstår ved opdatering af ContactInformation vha. kald til operationend UpdateContactInformation og en af attributterne i kaldet ikke er i det forventede format. Eksempelvis hvis telefonnummeret større end den maksimale længde (45 tegn) |
321 | Intern fejl i forbindelse med ændring af kontaktinformation | Fejlen opstår ved kald af operationen UpdateContactInformation. |
400 | Fejl i request i forbindelse med gem datacard | Fejlen opstår i en af følgende situationer:
|
401 | Intern fejl i forbindelse med gem datacard | Fejlen opstår ved kald af operationen saveDataCard og hvis den angivne slægning der skal slettes ikke findes. |
410 | Borgerens kontaktoplysninger eksisterer i forvejen | Fejlen opstår hvis de angivne kontaktoplysninger i kaldet allerede findes. |
420 | Borgerens midlertidige adresse eksisterer i forvejen | Fejlen opstår hvis den angivne adresse i kaldet allerede findes. |
430 | Borgerens sprog eksisterer i forvejen | Fejlen opstår hvis det angivne sprog i kaldet allerede findes. |
440 | Borgerens tandlæge eksisterer i forvejen | Fejlen opstår hvis den angivne tandlæge i kaldet allerede findes. |
500 | Ugyldig sikkerhedsbillet | Fejlen opstår hvis sikkerhedsbilletten enten mangler eller er ugyldig. |
501 | Adgang til CPR-nummeret ikke tilladt | Fejlen opstår hvis brugeren brugeren ikke har tilladelse til at kalde operationen. |
502 | CPR-nummer angivet som DataEnterer i request matcher ikke CPR-nummer i certifikat | Fejlen opstår hvis det CPR-nummer, der er angivet i kaldet, ikke stemmer overens med det certifikat der benyttes i service kaldet. |
503 | CVR-nummer er ikke whitelisted til DGWS niveau 3 kald på denne operation | Fejlen opstår hvis CVR-nummeret i certifikatet er ikke whitelisted. |
504 | Delegering ikke tilladt | Fejlen opstår hvis ActingUser er en HealthcareProfessional, men ingen PrincipalUser er til stede. |
505 | CVR nummer ikke fundet i sikkerhedsbilletten | Fejlen opstår ved sikkerhedsbilletten ikke indeholder et CVR nummer. |
506 | Bruger skal være identificeret ved CPR nummer | Fejlen opstår hvis UserIdentifier ikke er i CPR-format |
507 | Brugertype kunne ikke bestemmes udfra sikkerhedsbillet | - |
508 | Forkert audience i sikkerhedsbillet | Fejlen opstår hvis sikkerhedsbilletten ikke indeholder det korrekte audience. |
509 | Ingen gyldig bruger type identificeret | Fejlen opstår hvis sikkerhedsbilletten ikke indeholder hverken ActingUser eller Organisation. |
510 | Delegering ikke tilladt, da ingen relation angivet mellem borgere kunne bestemmes | Fejlen opstår hvis sikkerhedsbilletten ikke indeholder en person der hvor der er relation til det CPR nummer der er angivet i service kaldet. |
800 | Fejl i request i forbindelse med migrering af stamkort | Fælles Stamkort er verificeret af borgeren |
801 | Intern fejl i forbindelse med migrering af stamkort | Fejlen opstår ved kald af operationen MigratePersonalDataCard. |
802 | Der opstod en fejl i forbindelse med migrering af stamkort | - |
810 | Fejl i request i forbindelse med migrering af stamkort | Der eksisterer et telefonnummer af type hjemme i forvejen |
820 | Fejl i request i forbindelse med migrering af stamkort | Borgerens sprog eksisterer i forvejen |
830 | Fejl i request i forbindelse med migrering af stamkort | Borgerens TempAddress findes allerede |
900 | Tidsstempel matcher ikke allerede gemt data | Tidsstemplet i serviceanmodningen for opdatering stemmer ikke overens med det tidspunkt, hvor data sidst blev opdateret. Dette gælder elementer: ContactInfo, Pårørende, Sprog, TempAddress og HealthProvider. |
Detaljer for valideringsbeskeder:
Tidsstemplet [datetime] for elementet [element navn] overholder ikke det påkrævede format. |
Elementet [element navn] skal starte med følgende præfiks: [præfiks]. Fandt værdien: [element værdi] |
Ugyldig værdi fundet: [værdi] |
Ugyldigt element fundet: [element navn] |
Værdien [værdi] er ikke tilladt for elementet [element]. Tilladte værdier er: [tilladte værdier] |
[antal fundet] elementer blev fundet, men der tillades maks [antal tilladt]: [element navn] |
[antal fundet] elementer blev fundet, men mindst [antal påkrævet] elementer er påkrævet: [element navn] |
Der blev ikke fundet noget gyldigt indhold i elementet: [element navn] |
Påkrævet element mangler: [element navn] |
[antal] af de påkrævede adresseelementer ([elementer]) mangler i elementet: [element navn] |
Længden af værdien [værdi] overstiger det tilladte maks på [tilladt længde] |
Længden af værdien [værdi] er mindre end det påkrævede minimum på [påkrævet længde] |
Værdien "given + family" overstiger maks længde: [maks længde], Fundet: [længde]: [element navn] |
"given" skal indeholde mindst ét tegn. |
Root '[oid værdi]' og assigning authority '[værdi]' er ikke tilladte i elementet: [element navn] Tilladte elementer er: [elementer] |
Uoverensstemmelse mellem root '[oid værdi]' og assigning authority '[værdi]' i elementet: [element navn] |
Ugyldig relationshiptype code: [værdi] |
Person id ikke gyldigt. 10 cifre er påkrævet [element navn] [[id]] |
Id eksisterer ikke |
Kaldet til PersonInformation fejlede: [exception message] |
Uspecificeret valideringsfejl ved indlæsning [request type] Request: [fejlbesked] |
Ugyldig language code: [sprogkode] |
Id for en eller flere af de specificerede pårørende matcher ikke nuværende data. |
Ingen pårørende fundet med UUID: [uuid] |
Ingen tandlæge fundet med UUID: [uuid] |
Ingen midlertidig adresse fundet med UUID: [uuid] |
Ingen sprog fundet med UUID: [uuid] |
Ingen id'er for pårørende i request. |
Intet id for tandlæge i request. |
Intet id for midlertidig adresse i request. |
Intet id for sprog i request. |
Der er allerede angivet en midlertidig adresse for borgeren. |
Der er allerede angivet en tandlæge for borgeren: [tandlæge navn] |
Der er allerede angivet et sprog for borgeren: [sprogkode] |
Et id for en pårørende i create-request findes allerede: [uuid] |
Id'et for midlertidig adresse i create-request findes allerede: [uuid] |
Id'et for tandlæge i create-request findes allerede: [uuid] |
Id'et for sprog i create-request findes allerede: [uuid] |
StartingDate må ikke være senere end EndingDate |
Et ukendt adresseelement blev fundet: UsablePeriod |
Mere end 2 period elementer blev fundet i adressen. |
Et ukendt adresseelement blev fundet. |
Adressen kunne ikke parses. |
Navn skal bestå af to dele: Given og family. |
Datetime string [datetime] overholder ikke det gyldige format: [datetime format] |
Ukendt phone type fundet. H, MC, or WP er gyldige. |
Mere end 4 street elementer blev fundet i addressen. |
Intern fejl: navne på klasser og labels skal matche. |
Ugyldigt input ved kald af MinLog service. |
Fejl ved oprettelse af MinLog data. |
Fejl ved forberedelse af input til MinLog registrering. |
Fejl ved oprettelse af MinLog data: CPRnummer er påkrævet for personen, hvis data hentes/opdateres. |
Fejl ved oprettelse af MinLog data: CPR for brugeren er påkrævet. |
Fejl ved oprettelse af MinLog data: Activity er påkrævet. |
Fejl ved oprettelse af MinLog data: Event time er påkrævet. |
Fejl ved oprettelse af MinLog data: Source system er påkrævet. |
Der forsøges at opdatere oplysninger i borgerens stamdata, hvor det lokale tidsstempel ikke matcher det der ligger i databasen. Genindlæs fra stamkortregister for at få de nyeste data (der kan være opdateret siden sidste hentning) |
Der forsøges at oprette et telefonnummer på borgeren, hvor det eksisterer i forvejen. Genindlæs fra stamkortregister, og opdater telefonnummeret |
Der forsøges at oprette en midlertidig adresse på borgeren, hvor den eksisterer i forvejen. Genindlæs fra stamkortregister, og opdater den midlertidige adresse |
Der forsøges at oprette et sprog på borgeren, hvor det eksisterer i forvejen. Genindlæs fra stamkortregister, og opdater sproget |
Der forsøges at oprette en tandlæge for borgeren, hvor der eksisterer en i forvejen. Genindlæs fra stamkortregister, og opdater tandlægen |
DataEnterer er påkrævet ved opdatering. |