updatePatient

Unterstützt ab TTP-FHIR Gateway Version 2.2.0

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:

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdS Σ0..1id
lastUpdatedS Σ0..1instant
sourceS Σ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
id0..1string
extensionI0..0Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
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
id0..1string
id0..1string
extensionI0..0Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ1..1uri
versionΣ0..1string
codeS Σ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textS Σ0..1string
id0..1string
extensionI0..0Extension
url1..1uriFixed Value
valuePeriodPeriod
url1..1uriFixed Value
customIdatValuesS I0..1Extension(Complex)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
activeS Σ ?!0..1boolean
id0..1string
extensionI0..*Extension
useS Σ ?!0..1codeBinding
textΣ0..0string
familyS Σ0..1string
givenS Σ0..*string
id0..1string
id0..1string
extensionI0..0Extension
url1..1uriFixed Value
valueCodecode
value0..1System.String
suffixS Σ0..*string
periodΣ I0..0Period
id0..1string
extensionI0..*Extension
systemS Σ I1..1codeBindingPattern
valueS Σ1..1string
useΣ ?!0..1codeBinding
rankΣ0..1positiveInt
periodΣ I0..1Period
id0..1string
extensionI0..*Extension
systemS Σ I1..1codeBindingPattern
valueS Σ1..1string
useΣ ?!0..1codeBinding
rankΣ0..1positiveInt
periodΣ I0..1Period
genderS Σ0..1codeBinding
birthDateS Σ0..1date
id0..1string
extensionI0..*Extension
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
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ1..1uri
versionΣ0..1string
codeS Σ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textS Σ1..1string
photoI0..0Attachment
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
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:

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedS Σ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
customIdatValuesS I0..*Extension(Complex)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
useS Σ ?!0..1codeBinding
textΣ0..0string
familyS Σ0..1string
givenS Σ0..*string
id0..1string
id0..1string
extensionI0..0Extension
url1..1uriFixed Value
valueCodecode
value0..1System.String
suffixS Σ0..*string
periodΣ I0..1Period
id0..1string
extensionI0..*Extension
systemS Σ I1..1codeBindingPattern
valueS Σ1..1string
useΣ ?!0..1codeBinding
rankΣ0..1positiveInt
periodΣ I0..1Period
id0..1string
extensionI0..*Extension
systemS Σ I1..1codeBindingPattern
valueS Σ1..1string
useΣ ?!0..1codeBinding
rankΣ0..1positiveInt
periodΣ I0..1Period
genderS Σ0..1codeBinding
birthDateS Σ0..1date
id0..1string
extensionI0..*Extension
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
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
id0..1string
extensionI0..*Extension
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
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
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.
  • 404: Parameter mit unbekanntem Inhalt.
  • 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/epix/identifier/MPI" />
            <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/epix/identifier/MPI" />
                    <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>