Patsiendi üldandmete teenus / Master Patient Index
1.5.0 - trial-use Estonia flag

Patsiendi üldandmete teenus / Master Patient Index - Downloaded Version 1.5.0 See the Directory of published versions

OperationDefinition: Resolve Patient Reference

Official URL: https://fhir.ee/mpi/OperationDefinition/patient-resolve-reference Version: 1.5.0
Standards status: Trial-use Maturity Level: 1 Computable Name: EEMPIPatientResolveReference

Resolves patient identifiers to MPI Patient references.

Kirjeldus

Operatsioon on lubatud kõigile, autoriseerimine ei ole vajalik. Iga esitatud identifikaatori system kontrollitakse väärtushulga patsiendi-identifikaatorite-domeen vastu. Vastuses tagastatakse alati sama identifikaator, mis päringus, lisaks kas viide leitud patsiendile või OperationOutcome (kui patsienti ei leitud või identifikaatori süsteem ei ole lubatud).

Päring

URL: [base]/Patient/$resolve-reference

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INidentifier1..*Identifier

Patient identifier to resolve. At least one is required, and system and value are mandatory. identifier.system must be a code of the https://fhir.ee/ValueSet/patsiendi-identifikaatorite-domeen value set, or the value of that code's oid property. At most 100 identifiers per request.

OUTmatch1..*

Result for each submitted identifier. Contains either patient or issue. Clients should pair results with the request by match.identifier.

OUTmatch.identifier1..1Identifier

Identifier as submitted in the request.

OUTmatch.patient0..1Reference (EE MPI Patient)

Reference to the found patient.

OUTmatch.issue0..1OperationOutcome

OperationOutcome for this identifier: warning if patient not found, error if identifier.system is not allowed.

Only POST is supported. identifier.system must be a code of the patsiendi-identifikaatorite-domeen value set, or the value of that code's oid property. An identifier without system or value fails the whole request. If the total number of identifiers exceeds 100, the whole request fails. An invalid system is returned in match.issue. Per-identifier issues do not fail the request: the response is HTTP 200 with a Parameters resource, even if every identifier has an issue.

Notes:

Identifikaatori valideerimine

identifier.system peab olema väärtushulga patsiendi-identifikaatorite-domeen kood (nt https://fhir.ee/sid/pid/est/ni) või selle koodi oid omaduse väärtus (nt urn:oid:1.3.6.1.4.1.28284.6.2.2.16.752.2).

Näited

Näide päringust:

POST {MPI}/Patient/$resolve-reference
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "identifier",
      "valueIdentifier": {
        "system": "https://fhir.ee/sid/pid/est/ni",
        "value": "37302102711"
      }
    },
    {
      "name": "identifier",
      "valueIdentifier": {
        "system": "https://fhir.ee/sid/pid/fin/ni",
        "value": "131052-308T"
      }
    },
    {
      "name": "identifier",
      "valueIdentifier": {
        "system": "urn:oid:1.3.6.1.4.1.28284.6.2.2.16.752.2",
        "value": "198112189876"
      }
    },
    {
      "name": "identifier",
      "valueIdentifier": {
        "system": "https://fhir.ee/sid/pid/est/ni",
        "value": "49010012345"
      }
    },
    {
      "name": "identifier",
      "valueIdentifier": {
        "system": "https://example.com/unknown-system",
        "value": "12345678901"
      }
    }
  ]
}

Vastusena tuleb iga identifikaatori kohta match, mis sisaldab kas viidet leitud patsiendile (patient) või issue osa: hoiatus (warning), kui patsienti ei leitud (MPI-021), või viga (error), kui identifikaatori süsteem ei ole lubatud (MPI-067). Vastust tuleb päringuga siduda match.identifier järgi. Vastus on alati HTTP 200 koos Parameters ressursiga, ka siis, kui ühegi identifikaatori kohta patsienti ei leitud:

{
  "resourceType" : "Parameters",
  "id" : "patient-resolve-reference-example",
  "parameter" : [
    {
      "name" : "match",
      "part" : [
        {
          "name" : "identifier",
          "valueIdentifier" : {
            "system" : "https://fhir.ee/sid/pid/est/ni",
            "value" : "37302102711"
          }
        },
        {
          "name" : "patient",
          "valueReference" : {
            🔗 "reference" : "Patient/pat1"
          }
        }
      ]
    },
    {
      "name" : "match",
      "part" : [
        {
          "name" : "identifier",
          "valueIdentifier" : {
            "system" : "https://fhir.ee/sid/pid/fin/ni",
            "value" : "131052-308T"
          }
        },
        {
          "name" : "patient",
          "valueReference" : {
            🔗 "reference" : "Patient/pat4"
          }
        }
      ]
    },
    {
      "name" : "match",
      "part" : [
        {
          "name" : "identifier",
          "valueIdentifier" : {
            "system" : "urn:oid:1.3.6.1.4.1.28284.6.2.2.16.752.2",
            "value" : "198112189876"
          }
        },
        {
          "name" : "patient",
          "valueReference" : {
            🔗 "reference" : "Patient/pat3"
          }
        }
      ]
    },
    {
      "name" : "match",
      "part" : [
        {
          "name" : "identifier",
          "valueIdentifier" : {
            "system" : "https://fhir.ee/sid/pid/est/ni",
            "value" : "49010012345"
          }
        },
        {
          "name" : "issue",
          "resource" : {
            "resourceType" : "OperationOutcome",
            "id" : "PatientResolveReferenceNotFoundIssue",
            "issue" : [
              {
                "severity" : "warning",
                "code" : "not-found",
                "details" : {
                  "coding" : [
                    {
                      "system" : "https://mpi.tehik.ee",
                      "code" : "MPI-021"
                    }
                  ],
                  "text" : "Patsienti ei leitud"
                }
              }
            ]
          }
        }
      ]
    },
    {
      "name" : "match",
      "part" : [
        {
          "name" : "identifier",
          "valueIdentifier" : {
            "system" : "https://example.com/unknown-system",
            "value" : "12345678901"
          }
        },
        {
          "name" : "issue",
          "resource" : {
            "resourceType" : "OperationOutcome",
            "id" : "PatientResolveReferenceInvalidSystemIssue",
            "issue" : [
              {
                "severity" : "error",
                "code" : "invalid",
                "details" : {
                  "coding" : [
                    {
                      "system" : "https://mpi.tehik.ee",
                      "code" : "MPI-067"
                    }
                  ],
                  "text" : "Patsiendi identifikaatori süsteem https://example.com/unknown-system ei ole lubatud"
                }
              }
            ]
          }
        }
      ]
    }
  ]
}

Vead

Kogu päring lükatakse tagasi, kui:

  • päringus puudub identifier parameeter või identifikaatoril puudub system või value — viga MPI-078;
  • ühe süsteemiga identifikaatorite arv ületab limit väärtust — viga MPI-095.

Näide vastusest (MPI-078):

{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "required",
      "details": {
        "coding": [
          {
            "system": "https://mpi.tehik.ee",
            "code": "MPI-078"
          }
        ],
        "text": "Puudub kohustuslik 'identifier' parameeter"
      }
    }
  ]
}