Page History
...
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
...
| 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 |
| author.assignedAuthor.code | Bruger type (borger, pårørende eller sundhedsprofessionel). På response. Atributter:
| - | 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) - SAVEDATACARDSNITFLADE ER DEPRECATED OG SKAL DERFOR IKKE BRUGES LÆNGER
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.
| Code Block | ||||
|---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<xs:schema xmlns:hl7="urn:hl7-org:v3" xmlns:skr="urn:hl7-org:skr" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0" targetNamespace="http://sundhedsdatastyrelsen.dk/skr/2022/02/10">
<xs:import schemaLocation="http://wsdl.nspop.dk/skr-service/schema/cda/POCD_MT000040_SDTC.xsd" namespace="urn:hl7-org:v3"/>
<xs:element xmlns:xs="http://www.w3.org/2001/XMLSchema" name="SaveDataCardRequest">
<xs:complexType>
<xs:sequence>
<!-- cprnr -->
<xs:element name="id" type="hl7:II" minOccurs="1" maxOccurs="1"/>
<xs:element name="contactInformation" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="contactInformation" type="ContactInformationType" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="relatedPersons" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="relatedPerson" type="RelatedPersonType" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="temporaryAddress" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="temporaryAddress" type="TemporaryAddressType" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="language" type="LanguageType" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="healthProvider" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="healthProvider" type="HealthProviderType" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element xmlns:xs="http://www.w3.org/2001/XMLSchema" name="SaveDataCardRequestResponse">
<xs:complexType>
<xs:sequence></xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="NoteType">
<xs:restriction base="xs:string">
<xs:maxLength value="1000"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RelatedPersonType">
<xs:sequence>
<!-- UUID -->
<xs:element name="id" type="hl7:II" minOccurs="0" maxOccurs="1"/>
<!-- Sidst opdateret dato/tid da den pårørende blev hentet fra Fælles Stamkort-->
<xs:element name="lastupdated" type="xs:dateTime"/>
<xs:element name="associatedEntity" type="hl7:POCD_MT000040.AssociatedEntity" minOccurs="1" maxOccurs="1"/>
<xs:element name="relationshipType" type="hl7:CD" minOccurs="1" maxOccurs="1"/>
<xs:element name="note" type="NoteType" minOccurs="0" maxOccurs="1"/>
<xs:element name="dataEnterer" type="hl7:POCD_MT000040.Author" minOccurs="0" maxOccurs="1"/>
<xs:element name="tobeDeleted" type="xs:boolean" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TemporaryAddressType">
<xs:sequence>
<!-- UUID -->
<xs:element name="id" type="hl7:II" minOccurs="0" maxOccurs="1"/>
<!-- Sidst opdateret dato/tid da den midlertidige adresse blev hentet fra Fælles Stamkort-->
<xs:element name="lastupdated" type="xs:dateTime"/>
<xs:element name="addr" type="hl7:AD" minOccurs="1" maxOccurs="1"/>
<xs:element name="dataEnterer" type="hl7:POCD_MT000040.Author" minOccurs="0" maxOccurs="1"/>
<xs:element name="tobeDeleted" type="xs:boolean" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="LanguageCodeStringType">
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LanguageCodeType">
<xs:simpleContent>
<xs:extension base="LanguageCodeStringType">
<xs:attribute name="codeSystem" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="LanguageType">
<xs:sequence>
<!-- UUID -->
<xs:element name="id" type="hl7:II" minOccurs="0" maxOccurs="1"/>
<!-- Sidst opdateret dato/tid da sprog blev hentet fra Fælles Stamkort-->
<xs:element name="lastupdated" type="xs:dateTime"/>
<xs:element name="languageCode" type="LanguageCodeType" minOccurs="1" maxOccurs="1"/>
<xs:element name="dataEnterer" type="hl7:POCD_MT000040.Author" minOccurs="0" maxOccurs="1"/>
<xs:element name="tobeDeleted" type="xs:boolean" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:element name="language" type="LanguageType"/>
<xs:complexType name="ContactInformationType">
<xs:sequence>
<!-- Sidst opdateret dato/tid da kontaktinformation blev hentet fra Fælles Stamkort-->
<xs:element name="lastupdated" type="xs:dateTime"/>
<xs:element name="telecom" type="hl7:TEL" minOccurs="0" maxOccurs="3"/>
<xs:element name="dataEnterer" type="hl7:POCD_MT000040.Author" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="HealthProviderType">
<xs:sequence>
<!-- UUID -->
<xs:element name="id" type="hl7:II" minOccurs="0" maxOccurs="1"/>
<!-- Sidst opdateret dato/tid da tandlæge blev hentet fra Fælles Stamkort-->
<xs:element name="lastupdated" type="xs:dateTime"/>
<xs:element name="providerType" type="hl7:CD" minOccurs="1" maxOccurs="1"/>
<!-- type, f.eks. tandlæge -->
<xs:element name="organization" type="hl7:POCD_MT000040.Organization" minOccurs="1" maxOccurs="1"/>
<!-- tandlæge, givet ved enten ydernr eller SOR-id (institutionsejer) -->
<xs:element name="dataEnterer" type="hl7:POCD_MT000040.Author" minOccurs="0" maxOccurs="1"/>
<xs:element name="tobeDeleted" type="xs:boolean" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:schema> |
Til SaveDatacard-snitfladen er der følgende wsdl fil:
...
WSDL
WSDLen indeholder nedenstående operationer:
...
Opdater en borgers stamkort.
Serviceoperationer for SaveDataCard
SAVEDATACARDSNITFLADE ER DEPRECATED OG SKAL DERFOR IKKE BRUGES LÆNGER
...
Ja
(fra release 1.0.5)
...
Ja
(fra release 1.0.5)
...
Request-eksempel:
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<ns4:SaveDataCardRequest xmlns:ns2="urn:hl7-org:v3" xmlns:ns3="urn:hl7-org:sdtc" xmlns:ns4="http://sundhedsdatastyrelsen.dk/skr/2022/02/10" xmlns:ns5="urn:hl7-org:fsk" xmlns:ns6="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns7="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns8="http://www.w3.org/2001/04/xmlenc#" xmlns:ns9="http://www.w3.org/2000/09/xmldsig#" xmlns:ns10="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns11="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<id assigningAuthorityName="CPR" extension="0501792275" root="1.2.208.176.1.2" />
<contactInformation>
<contactInformation>
<lastupdated>2022-05-11T10:54:13.000+02:00</lastupdated>
<telecom use="H" value="tel:98765432" />
<telecom use="WP" value="tel:98765432" />
<telecom use="MC" value="tel:98765432" />
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
</contactInformation>
</contactInformation>
<relatedPersons>
<relatedPerson>
<associatedEntity classCode="CON">
<ns2:associatedPerson>
<ns2:name>
<ns2:given>Test</ns2:given>
<ns2:family>Testerson</ns2:family>
</ns2:name>
</ns2:associatedPerson>
</associatedEntity>
<relationshipType displayName="nabo" codeSystem="1.2.208.184.15.4" code="nabo" />
<note>A note</note>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</relatedPerson>
<relatedPerson>
<id assigningAuthorityName="FSK" extension="2a527de4-2b28-4e4b-bd14-7006a0c04782" root="1.2.208.184.15.3" />
<associatedEntity classCode="CON">
<ns2:associatedPerson>
<ns2:name>
<ns2:given>Test2</ns2:given>
<ns2:family>Testerson2</ns2:family>
</ns2:name>
</ns2:associatedPerson>
</associatedEntity>
<relationshipType displayName="mor" codeSystem="1.2.208.184.15.4" code="mor" />
<note>A note</note>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</relatedPerson>
</relatedPersons>
<temporaryAddress>
<temporaryAddress>
<addr isNotOrdered="false" use="H">
<ns2:streetAddressLine>Wallabyvej 42</ns2:streetAddressLine>
<ns2:streetAddressLine>Wallabyvej 42</ns2:streetAddressLine>
<ns2:streetAddressLine>Wallabyvej 42</ns2:streetAddressLine>
<ns2:streetAddressLine>Wallabyvej 42</ns2:streetAddressLine>
<ns2:postalCode>8000</ns2:postalCode>
<ns2:city>Aarhus</ns2:city>
<ns2:country>Denmark</ns2:country>
<ns2:useablePeriod value="20220511" />
<ns2:useablePeriod value="20220511" />
</addr>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</temporaryAddress>
</temporaryAddress>
<language>
<language>
<languageCode codeSystem="1.2.208.184.15.7">en</languageCode>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</language>
</language>
<healthProvider>
<healthProvider>
<providerType displayName="dentist" codeSystem="1.2.208.184.15.12" code="Tandl..ge" />
<organization>
<ns2:id assigningAuthorityName="Yder" extension="1.2.208.184.15.13" root="1.2.208.184.15.8" />
<ns2:name>hpOrg123456</ns2:name>
<ns2:telecom use="WP" value="tel:12345644" />
<ns2:addr isNotOrdered="false" use="WP">
<ns2:streetAddressLine>Wallabyvej 42</ns2:streetAddressLine>
<ns2:postalCode>8000</ns2:postalCode>
<ns2:city>Aarhus</ns2:city>
<ns2:country>Denmark</ns2:country>
</ns2:addr>
</organization>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</healthProvider>
</healthProvider>
</ns4:SaveDataCardRequest>
</soap:Body>
</soap: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:SaveDataCardResponse xmlns:ns2="http://sundhedsdatastyrelsen.dk/skr/2022/02/10"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
Anvenderscenarie
SAVEDATACARDSNITFLADE ER DEPRECATED OG SKAL DERFOR IKKE BRUGES LÆNGER
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:
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" />
<soap:Body>
<ns2:GetPersonalDataCardResponse xmlns:ns10="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns11="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns2="http://sundhedsdatastyrelsen.dk/skr/2021/06/02" xmlns:ns3="urn:hl7-org:v3" xmlns:ns4="urn:hl7-org:sdtc" xmlns:ns5="urn:hl7-org:fsk" xmlns:ns6="http://www.w3.org/2000/09/xmldsig#" xmlns:ns7="http://www.w3.org/2001/04/xmlenc#" xmlns:ns8="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns9="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<ClinicalDocument classCode="DOCCLIN" moodCode="EVN">
<ns3:realmCode code="DK" />
<ns3:typeId extension="POCD_HD000040" root="2.16.840.1.113883.1.3" />
<ns3:templateId root="1.2.208.184.15.1" />
<ns3:id assigningAuthorityName="MedCom" extension="NA" root="1.2.208.184" />
<ns3:code code="NA" codeSystem="1.2.208.184.15.1" displayName="Stamkort" />
<ns3:title>Det F..lles StamKort</ns3:title>
<ns3:effectiveTime value="20220512112235+0200" />
<ns3:confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25" />
<ns3:languageCode code="da-DK" />
<ns3:versionNumber value="4" />
<ns3:recordTarget contextControlCode="OP" typeCode="RCT">
<ns3:patientRole classCode="PAT" nullFlavor="NA">
<ns3:id assigningAuthorityName="CPR" extension="0501792275" root="1.2.208.176.1.2" />
</ns3:patientRole>
</ns3:recordTarget>
<ns3:author>
<ns3:time value="20220512112227+0200" />
<ns3:assignedAuthor>
<ns3:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns3:assignedPerson>
<ns3:name>
<ns3:given>AuthorGivenName</ns3:given>
<ns3:family>AuthorFamilyName</ns3:family>
</ns3:name>
</ns3:assignedPerson>
<ns3:representedOrganization>
<ns3:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns3:name>OrgName</ns3:name>
</ns3:representedOrganization>
</ns3:assignedAuthor>
</ns3:author>
<ns3:custodian>
<ns3:assignedCustodian>
<ns3:representedCustodianOrganization>
<ns3:id root="NA" />
</ns3:representedCustodianOrganization>
</ns3:assignedCustodian>
</ns3:custodian>
<ns3:component>
<ns3:structuredBody>
<ns3:component>
<ns3:section>
<ns3:text>FSK</ns3:text>
<ns3:entry>
<ns5:relatedPerson>
<ns5:id extension="relatedId1234567" root="1.2.208.184.15.3" />
<ns5:associatedEntity classCode="CON">
<ns3:associatedPerson>
<ns3:name>
<ns3:given>Anne</ns3:given>
<ns3:family>Nielsen</ns3:family>
</ns3:name>
</ns3:associatedPerson>
</ns5:associatedEntity>
<ns5:relationshipType code="nabo" codeSystem="1.2.208.184.15.4" displayName="Nabo" />
<ns5:note>A note</ns5:note>
<ns5:dataEnterer>
<ns3:time value="20220512112227+0200" />
<ns3:assignedAuthor>
<ns3:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns3:assignedPerson>
<ns3:name>
<ns3:given>AuthorGivenName</ns3:given>
<ns3:family>AuthorFamilyName</ns3:family>
</ns3:name>
</ns3:assignedPerson>
<ns3:representedOrganization>
<ns3:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns3:name>OrgName</ns3:name>
</ns3:representedOrganization>
</ns3:assignedAuthor>
</ns5:dataEnterer>
</ns5:relatedPerson>
</ns3:entry>
<ns3:entry>
<ns5:relatedPerson>
<ns5:id extension="a703f048-7539-450d-8c9c-c60f082ebc2e" root="1.2.208.184.15.3" />
<ns5:associatedEntity classCode="CON">
<ns3:associatedPerson>
<ns3:name>
<ns3:given>Mathias</ns3:given>
<ns3:family>Jensen</ns3:family>
</ns3:name>
</ns3:associatedPerson>
</ns5:associatedEntity>
<ns5:relationshipType code="far" codeSystem="1.2.208.184.15.4" displayName="Far" />
<ns5:note>A note</ns5:note>
<ns5:dataEnterer>
<ns3:time value="20220512112227+0200" />
<ns3:assignedAuthor>
<ns3:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns3:assignedPerson>
<ns3:name>
<ns3:given>AuthorGivenName</ns3:given>
<ns3:family>AuthorFamilyName</ns3:family>
</ns3:name>
</ns3:assignedPerson>
<ns3:representedOrganization>
<ns3:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns3:name>OrgName</ns3:name>
</ns3:representedOrganization>
</ns3:assignedAuthor>
</ns5:dataEnterer>
</ns5:relatedPerson>
</ns3:entry>
<ns3:entry>
<ns5:temporaryAddress>
<ns5:id extension="2cef7684-fe0f-44df-9f43-ca462b83d6cf" root="1.2.208.184.15.2" />
<ns5:addr isNotOrdered="false" use="H">
<ns3:streetAddressLine>Fiskergade 66</ns3:streetAddressLine>
<ns3:streetAddressLine>Fiskergade 66</ns3:streetAddressLine>
<ns3:postalCode>8000</ns3:postalCode>
<ns3:city>Aarhus</ns3:city>
<ns3:country>Denmark</ns3:country>
<ns3:useablePeriod value="20220512" />
<ns3:useablePeriod value="20220512" />
</ns5:addr>
<ns5:dataEnterer>
<ns3:time value="20220512112227+0200" />
<ns3:assignedAuthor>
<ns3:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns3:assignedPerson>
<ns3:name>
<ns3:given>AuthorGivenName</ns3:given>
<ns3:family>AuthorFamilyName</ns3:family>
</ns3:name>
</ns3:assignedPerson>
<ns3:representedOrganization>
<ns3:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns3:name>OrgName</ns3:name>
</ns3:representedOrganization>
</ns3:assignedAuthor>
</ns5:dataEnterer>
</ns5:temporaryAddress>
</ns3:entry>
<ns3:entry>
<ns5:patientContact>
<ns5:telecom use="H" value="tel:12345644" />
<ns5:dataEnterer>
<ns3:time value="20220512112227+0200" />
<ns3:assignedAuthor>
<ns3:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns3:assignedPerson>
<ns3:name>
<ns3:given>AuthorGivenName</ns3:given>
<ns3:family>AuthorFamilyName</ns3:family>
</ns3:name>
</ns3:assignedPerson>
<ns3:representedOrganization>
<ns3:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns3:name>OrgName</ns3:name>
</ns3:representedOrganization>
</ns3:assignedAuthor>
</ns5:dataEnterer>
</ns5:patientContact>
</ns3:entry>
</ns3:section>
</ns3:component>
</ns3:structuredBody>
</ns3:component>
</ClinicalDocument>
</ns2:GetPersonalDataCardResponse>
</soap:Body>
</soap:Envelope> |
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:
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<ns4:SaveDataCardRequest xmlns:ns4="http://sundhedsdatastyrelsen.dk/skr/2022/02/10" xmlns:ns10="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ns11="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:ns2="urn:hl7-org:v3" xmlns:ns3="urn:hl7-org:sdtc" xmlns:ns5="urn:hl7-org:fsk" xmlns:ns6="http://www.w3.org/2000/09/xmldsig#" xmlns:ns7="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns8="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:ns9="http://www.w3.org/2001/04/xmlenc#">
<id assigningAuthorityName="CPR" extension="0501792275" root="1.2.208.176.1.2" />
<contactInformation>
<contactInformation>
<lastupdated>20220512112227+0200</lastupdated>
<telecom use="H" value="tel:12345644" />
<dataEnterer>
<ns2:time value="20220512112227+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization>
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
</contactInformation>
</contactInformation>
<relatedPersons>
<relatedPerson>
<id extension="a703f048-7539-450d-8c9c-c60f082ebc2e" root="1.2.208.184.15.3" />
<lastupdated>20220512112227+0200</lastupdated>
<associatedEntity classCode="CON">
<ns2:associatedPerson>
<ns2:name>
<ns2:given>Mathias</ns2:given>
<ns2:family>Jensen</ns2:family>
</ns2:name>
</ns2:associatedPerson>
</associatedEntity>
<relationshipType displayName="Far" codeSystem="1.2.208.184.15.4" code="far" />
<note>A note</note>
<dataEnterer>
<ns2:time value="20220512112227+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization>
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</relatedPerson>
<relatedPerson>
<id assigningAuthorityName="FSK" extension="relatedId1234567" root="1.2.208.184.15.3" />
<lastupdated>20220512112227+0200</lastupdated>
<associatedEntity classCode="CON">
<ns2:associatedPerson>
<ns2:name>
<ns2:given>Anna</ns2:given>
<ns2:family>Nielsen</ns2:family>
</ns2:name>
</ns2:associatedPerson>
</associatedEntity>
<relationshipType displayName="nabo" codeSystem="1.2.208.184.15.4" code="nabo" />
<note>A note</note>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</relatedPerson>
<relatedPerson>
<associatedEntity classCode="CON">
<ns2:associatedPerson>
<ns2:name>
<ns2:given>Tanja</ns2:given>
<ns2:family>Jensen</ns2:family>
</ns2:name>
</ns2:associatedPerson>
</associatedEntity>
<relationshipType displayName="mor" codeSystem="1.2.208.184.15.4" code="mor" />
<note>A note</note>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</relatedPerson>
</relatedPersons>
<temporaryAddress>
<temporaryAddress>
<id extension="2cef7684-fe0f-44df-9f43-ca462b83d6cf" root="1.2.208.184.15.2" />
<lastupdated>20220512112227+0200</lastupdated>
<addr isNotOrdered="false" use="H">
<ns2:streetAddressLine>Fiskergade 66</ns2:streetAddressLine>
<ns2:streetAddressLine>Fiskergade 66</ns2:streetAddressLine>
<ns2:postalCode>8000</ns2:postalCode>
<ns2:city>Aarhus</ns2:city>
<ns2:country>Denmark</ns2:country>
<ns2:useablePeriod value="20220512" />
<ns2:useablePeriod value="20220512" />
</addr>
<dataEnterer>
<ns2:time value="20220512112227+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="ANONYM" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization>
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>true</tobeDeleted>
</temporaryAddress>
</temporaryAddress>
<language>
<language>
<languageCode codeSystem="1.2.208.184.15.7">en</languageCode>
<dataEnterer>
<ns2:time value="20190711015959+0200" />
<ns2:assignedAuthor>
<ns2:id assigningAuthorityName="CPR" extension="0309691444" root="1.2.208.176.1.2" />
<ns2:assignedPerson>
<ns2:name>
<ns2:given>AuthorGivenName</ns2:given>
<ns2:family>AuthorFamilyName</ns2:family>
</ns2:name>
</ns2:assignedPerson>
<ns2:representedOrganization classCode="ORG">
<ns2:id assigningAuthorityName="SOR" extension="1.2.208.176.1.1" root="1.2.208.176.1.1" />
<ns2:name>OrgName</ns2:name>
</ns2:representedOrganization>
</ns2:assignedAuthor>
</dataEnterer>
<tobeDeleted>false</tobeDeleted>
</language>
</language>
</ns4:SaveDataCardRequest>
</soap:Body>
</soap:Envelope> |
Mapning af Yder OID mellem FSK og SKR
SAVEDATACARDSNITFLADE ER DEPRECATED OG SKAL DERFOR IKKE BRUGES LÆNGER
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:
...
Migreringssnitflade
Der er lavet en midlertidig migreringssnitflade der kan benyttes til migrering af lokale stamkort.
...