updatePatient

Zweck

Aktualisierung eines vorhandenen Datensatzes von personenidentifizierenden Informationen eines vorhandenen Patienten unter Angabe eines vormals vergebenen Master Person Index (MPI ID).

Voraussetzung

Die angegebenen Parameter zur Spezifikation der Matching-Domäne, der Datenquelle und der MPI-ID müssen im E-PIX vorhanden sein.

Aufruf und Rückgabe

Die bereitgestellte Funktionalität kann per POST-Request aufgerufen werden. Die erforderlichen Angaben werden per POST-BODY in Form von FHIR Parameters übermittelt.

<HOST>:<PORT>/ttp-fhir/fhir/epix/$updatePatient

Der Funktionsaufruf liefert eine Parameters-Ressource zurück.

Invocations

URL: [base]/$updatePatient

This operation changes content

Parameters (In)

NameCardinalityTypeDocumentation
domain1..1string

Angabe der Matchingdomain

source1..1string

Datenquelle

mpiIdentifier1..1Identifier

Identifikator des MPI-Eintrags (MPI-ID)

identity1..1Patient

Patient-Ressource (analog zu der Patienten-Identität)

force1..1boolean

Return Values (Out)

NameCardinalityTypeBindingDocumentation
matchStatus1..1CodingMatchStatus (required)

Match-Status aus dem Matching der übermittelten Patienten-Identität

mpiPerson0..1Person

Person-Ressource, die den MPI-Eintrag repräsentiert.

identity0..*Patient

Patient-Ressource (analog zu Patienten-Identität, referenziert aus dem MPI-Index der Personen-Ressource).

Aktualisiert Patienten-Identitäten eines MPI-Eintrags.

Der Parameter "identity" enthält eine Patient-Ressource entsprechend dem allgemeinen Patient-Profil:

versionIdS Σ0..1id
lastUpdatedS Σ0..1instant
sourceS Σ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
url1..1System.StringFixed Value
useΣ ?!0..0codeBinding
typeΣ0..0codeBinding
textΣ0..0string
lineΣ0..0string
cityS Σ1..1string
districtΣ0..0string
stateΣ0..0string
postalCodeΣ0..0string
countryΣ0..0string
periodΣ I0..0Period
url1..1uriFixed Value
systemS Σ1..1uri
versionΣ0..1string
codeS Σ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textS Σ0..1string
url1..1uriFixed Value
valuePeriodPeriod
url1..1System.StringFixed Value
customIdatValuesS I0..1Extension(Complex)
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
activeS Σ ?!0..1boolean
useS Σ ?!0..1codeBinding
textΣ0..0string
familyS Σ0..1string
givenS Σ0..*string
url1..1System.StringFixed Value
valueCodecode
suffixS Σ0..*string
periodΣ I0..0Period
telecomΣ I0..0ContactPoint
genderS Σ0..1codeBinding
birthDateS Σ0..1date
useΣ ?!0..1codeBinding
typeΣ0..1codeBinding
textΣ0..0string
lineS Σ0..*string
cityS Σ0..1string
districtΣ0..0string
stateS Σ0..1stringBinding
postalCodeS Σ0..1string
countryS Σ0..1stringBinding
periodΣ I0..0Period
systemS Σ1..1uri
versionΣ0..1string
codeS Σ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textS Σ1..1string
photoI0..0Attachment
systemS Σ1..1uri
versionΣ0..1string
codeS Σ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textS Σ0..1string
preferredS1..1booleanFixed Value
generalPractitionerI0..0Reference(Organization | Practitioner | PractitionerRole)
managingOrganizationΣ I0..0Reference(Organization)

Der Parameter "mpiPerson" enthält eine Person-Ressource entsprechend dem allgemeinen Person-Profil. Die Angabe link.assurance='level4' kennzeichnet hierbei die Referenz-Identität:

versionIdΣ0..1id
lastUpdatedS Σ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
customIdatValuesS I0..*Extension(Complex)
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
useS Σ ?!0..1codeBinding
textΣ0..0string
familyS Σ0..1string
givenS Σ0..*string
url1..1System.StringFixed Value
valueCodecode
suffixS Σ0..*string
periodΣ I0..1Period
telecomΣ I0..0ContactPoint
genderS Σ0..1codeBinding
birthDateS Σ0..1date
useΣ ?!0..1codeBinding
typeΣ0..1codeBinding
textΣ0..0string
lineS Σ0..*string
cityS Σ0..1string
districtΣ0..0string
stateS Σ0..1string
postalCodeS Σ0..1string
countryS Σ0..1string
periodΣ I0..0Period
photoI0..0Attachment
referenceΣ I0..1string
typeΣ0..1uriBinding
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
activeS Σ ?!0..1boolean
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
assuranceS0..1codeBinding

Im Erfolgsfall wird der HTTP Statuscode 200 zurückgegeben.

Im Fehlerfall wird einer der folgenden HTTP Statuscodes in Verbindung mit einer OperationOutcome-Ressource zurückgegeben:

  • 400: Fehlende oder fehlerhafte Parameter.
  • 401: Fehlende Authentifizierung oder Autorisierung.
  • 422: Fehlende oder falsche Patienten-Attribute.
Beispiel

Beispielhafter Request-Body:

<Parameters xmlns="http://hl7.org/fhir">
    <id value="Parameters-UpdatePatient-request-example-1" />
    <parameter>
        <name value="domain" />
        <valueString value="MIRACUM" />
    </parameter>
    <parameter>
        <name value="source" />
        <valueString value="KlinikumXY" />
    </parameter>
    <parameter>
        <name value="mpiIdentifier" />
        <valueIdentifier>
            <system value="https://ths-greifswald.de/fhir/identifier/BeispielMpiId" />
            <value value="1001000000066" />
        </valueIdentifier>
    </parameter>
    <parameter>
        <name value="identity" />
        <resource>
            <Patient>
                <meta>
                    <profile value="https://ths-greifswald.de/fhir/StructureDefinition/epix/Patient" />
                </meta>
                <name>
                    <family value="xxxxx" />
                    <given value="Stefanie" />
                </name>
                <birthDate value="1962-12-16" />
                <address>
                    <city value="Sp&#246;ck" />
                    <postalCode value="76297" />
                </address>
            </Patient>
        </resource>
    </parameter>
    <parameter>
        <name value="force" />
        <valueBoolean value="false" />
    </parameter>
</Parameters>

Beispielhafte Response:

<Parameters xmlns="http://hl7.org/fhir">
    <id value="Parameters-UpdatePatient-response-example-1" />
    <parameter>
        <name value="matchStatus" />
        <valueCoding>
            <system value="https://ths-greifswald.de/fhir/CodeSystem/epix/MatchStatus" />
            <code value="PERFECT_MATCH_WITH_UPDATE" />
        </valueCoding>
    </parameter>
    <parameter>
        <name value="mpiPerson" />
        <resource>
            <Person>
                <id value="52" />
                <meta>
                    <lastUpdated value="2021-06-17T08:28:03.200+02:00" />
                    <profile value="https://ths-greifswald.de/fhir/StructureDefinition/epix/Person" />
                </meta>
                <identifier>
                    <system value="https://ths-greifswald.de/fhir/identifier/BeispielMpiId" />
                    <value value="1001000000066" />
                </identifier>
                <managingOrganization>
                    <identifier>
                        <value value="MIRACUM" />
                    </identifier>
                </managingOrganization>
                <active value="true" />
                <link>
                    <target>
                        <reference value="Patient/52" />
                    </target>
                </link>
                <link>
                    <target>
                        <reference value="Patient/53" />
                    </target>
                    <assurance value="level4" />
                </link>
            </Person>
        </resource>
    </parameter>
    <parameter>
        <name value="identity" />
        <resource>
            <Patient>
                <id value="52" />
                <meta>
                    <versionId value="1" />
                    <lastUpdated value="2021-06-17T08:28:03.200+02:00" />
                    <source value="dummy_safe_source" />
                    <profile value="https://ths-greifswald.de/fhir/StructureDefinition/epix/Patient" />
                </meta>
                <active value="true" />
                <name>
                    <family value="xxxxx" />
                    <given value="Stefanie" />
                </name>
                <gender value="male" />
                <birthDate value="1962-12-17" />
            </Patient>
        </resource>
    </parameter>
    <parameter>
        <name value="identity" />
        <resource>
            <Patient>
                <id value="53" />
                <meta>
                    <versionId value="1" />
                    <lastUpdated value="2021-10-28T09:10:11.120+02:00" />
                    <source value="KlinikumXY" />
                    <profile value="https://ths-greifswald.de/fhir/StructureDefinition/epix/Patient" />
                </meta>
                <active value="true" />
                <name>
                    <family value="xxxxx" />
                    <given value="Stefanie" />
                </name>
                <gender value="male" />
                <birthDate value="1962-12-16" />
                <address>
                    <city value="Sp&#246;ck" />
                    <postalCode value="76297" />
                </address>
            </Patient>
        </resource>
    </parameter>
</Parameters>