Patsientide üldandmete teenus / Master Patient Index
1.0.0 - ballot Estonia flag

Patsientide üldandmete teenus / Master Patient Index - Local Development build (v1.0.0). See the Directory of published versions

Toetavad operatsioonid

FHIR operatsioon on eritegevus, mida ei ole võimalik või väga raske väljendada standardse FHIR süntaksi kaudu. Tegevuse realiseerimine operatsioonina võib olla tingitud teise osapoole (nt xTee andmekogu) käideldavuse tõttu või erilise ligipääsu reeglite tõttu.

Välised allikad, kust MPI andmeid pärib, ei toeta tavaliselt lehekülgede numeratsiooni päringu parameetrina. Seetõttu tagastavad enamus MPI operatsioonidest andmed “collection” tüübi Bundle-ina, mis ei sisalda informatsiooni ridade arvu ega lehekülgede kohta.

Patsient

Patsientide sidumine ja lahti sidumine

Patsientide sidumise ja lahti sidumise loogika ja operatsioonid on seletatud leheküljel.

Välismaalaste otsing

Välismaalaste otsimiseks või patsientide otsimiseks ilma identifikaatorita tuleb kasutada operatsiooni Patient/$foreigner. Toetavate parameetrite hulka kuuluvad: identifikaatori väljastanud riik, eesnimi, perekonnanimi, sünnikuupäev, sugu ja kontaktandmed.

GET {MPI}/Patient/$foreign?family=smith&gender=male

Vastusena tuleb (collection) Bundle mis tagastab kollektsiooni leitud ressurssidest (ilma metainformatsioonita):

{
    "resourceType": "Bundle",
    "type": "collection",
    "entry": [
        {
            "resource": {
                "resourceType": "Patient",
                "id": "1027",
                "meta": {
                    "profile": [
                        "https://hl7.ee/fhir/StructureDefinition/EEMPI-Patient-Verified"
                    ]
                },
                "active": true,
                "name": [
                    {
                        "family": "SMITH",
                        "given": [
                            "JAI"
                        ]
                    }
                ],
                "gender": "male",
                "birthDate": "1930-02-20",
                "_birthDate": {
                    "extension": [
                        {
                            "url": "http://hl7.org/fhir/StructureDefinition/patient-birthTime",
                            "valueDateTime": "1930-02-20T00:00:00+00:00"
                        }
                    ]
                }
            }
        }
    ]
}

Eesti isikukoodiga patsiendi otsing

Andmed erinevatest infosüsteemidest saab pärida Patient/$lookup operatsiooniga. Toetavate parameetrite hulka kuuluvad: identifikaator ja allikas, kust andmeid päritakse. Hetkel toetatakse päringuna:

  • Rahvastikuregistrist (source=https://rahvastikuregister.ee)
  • MPI Patsiendiregistrist (source=https://mpi.tehik.ee)
GET {MPI}/Patient/$lookup?identifier=https://fhir.ee/sid/pid/est/ni|52007010062&source=https://rahvastikuregister.ee
{
    "resourceType": "Bundle",
    "type": "collection",
    "entry": [
        {
            "resource": {
                "resourceType": "Patient",
                "id": "3744",
                "meta": {
                    "profile": [
                        "https://hl7.ee/fhir/StructureDefinition/EEMPI-Patient-Verified"
                    ]
                },
                "text": {
                    "status": "generated",
                    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><div class=\"hapiHeaderText\">CARL <b>PEREA </b></div><table class=\"hapiPropertyTable\"><tbody><tr><td>Identifier</td><td>52007010062</td></tr><tr><td>Date of birth</td><td><span>01 July 2020</span></td></tr></tbody></table></div>"
                },
                "identifier": [
                    {
                        "system": "https://fhir.ee/sid/pid/est/ni",
                        "value": "52007010062"
                    }
                ],
                "active": true,
                "name": [
                    {
                        "family": "PEREA",
                        "given": [
                            "CARL"
                        ]
                    }
                ],
                "gender": "male",
                "birthDate": "2020-07-01"
            }
        }
    ]
}

Sotsiaalsed tunnused

Sotsiaalsed tunnused päritakse xTee teenuste kaudu ja tagastatakse Observation ressurssidena. Tüüpiliselt tagastatav Observation ressurss ei sisalda “id” väärtust ja peegeldab hetkeseisu situatsiooni. Sotsiaalsete tunnuste operatsioonid pärivad alati andmed allikregistritest (sõltumatu andmete olemasolust vahemälus).

Seadusliku eeskostja staatus

Andmed päritakse $legal-guardian operatsiooniga, mis saab ühe parameetri - viide patsiendile:

GET {MPI}/Patient/$legal-guardian?patient=Patient/3744

ning saab vastuseks Observationi:

{
    "resourceType": "Bundle",
    "type": "collection",
    "entry": [
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "1193838006",
                            "display": "Legal guardian status"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T12:58:38.136+00:00",
                "performer": [
                    {
                        "reference": "RelatedPerson/3746"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/legal-capacity-type",
                            "display": "FIXME"
                        }
                    ]
                },
                "note": [
                    {
                        "text": "gfhsgadfjsfgdhjk\n"
                    }
                ]
            }
        },
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "1193838006",
                            "display": "Legal guardian status"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T12:58:38.350+00:00",
                "performer": [
                    {
                        "reference": "RelatedPerson/3747"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/legal-capacity-type",
                            "display": "FIXME"
                        }
                    ]
                },
                "note": [
                    {
                        "text": "gfhsgadfjsfgdhjk\n"
                    }
                ]
            }
        }
    ]
}

Power of attorney

Andmed päritakse $power-of-attorney operatsiooniga, mis saab ühte parameetri - viidet patsiendile.

GET {MPI}/Patient/$power-of-attorney?patient=Patient/3744

ning saab vastuseks Observationi:

{
    "resourceType": "Bundle",
    "type": "collection",
    "entry": [
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "186063005"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T13:02:32.726+00:00",
                "performer": [
                    {
                        "type": "RelatedPerson"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/guardian-rights",
                            "display": "täielik isikuhooldusõigus"
                        }
                    ]
                }
            }
        },
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "186063005"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T13:02:32.726+00:00",
                "performer": [
                    {
                        "type": "RelatedPerson"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/guardian-rights",
                            "display": "täielik varahooldusõigus"
                        }
                    ]
                }
            }
        },
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "186063005"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T13:02:32.726+00:00",
                "performer": [
                    {
                        "type": "RelatedPerson"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/guardian-rights",
                            "display": "täielik isikuhooldusõigus"
                        }
                    ]
                }
            }
        },
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-legal-guardian-status"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "186063005"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "effectivePeriod": {
                    "start": "2020-09-28T00:00:00+03:00"
                },
                "issued": "2023-04-27T13:02:32.726+00:00",
                "performer": [
                    {
                        "type": "RelatedPerson"
                    }
                ],
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/guardian-rights",
                            "display": "täielik varahooldusõigus"
                        }
                    ]
                }
            }
        }
    ]
}

Haridus

Andmed päritakse $education operatsiooniga, mis saab ühe parameetri - viide patsiendile:

GET {MPI}/Patient/$education?patient=Patient/3744

ning saab vastuseks Observationi

{
    "resourceType": "Bundle",
    "type": "collection",
    "entry": [
        {
            "resource": {
                "resourceType": "Observation",
                "meta": {
                    "profile": [
                        "https://tehik.ee/StructureDefinition/ee-mpi-social-history-education-level"
                    ]
                },
                "status": "final",
                "category": [
                    {
                        "coding": [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                                "code": "social-history",
                                "display": "Social History"
                            }
                        ]
                    }
                ],
                "code": {
                    "coding": [
                        {
                            "system": "http://snomed.info/sct",
                            "code": "82589-3",
                            "display": "Highest level of education"
                        }
                    ]
                },
                "subject": {
                    "reference": "Patient/3744"
                },
                "issued": "2023-04-27T13:11:56.188+00:00",
                "valueCodeableConcept": {
                    "coding": [
                        {
                            "system": "https://mpi.tehik.ee/rr/education-level",
                            "code": "Hariduseta, alusharidus",
                            "display": "Hariduseta, alusharidus"
                        }
                    ]
                }
            }
        }
    ]
}

Puude määr

Operatsioon tagastab Disability objekti.

Tööprintsiip

Vahemälu (cache)

MPI operatsioonid teostavad päringu algallikasse (registrisse) ning tagastavad vastuse kasutajale ilma andmeid salvestamata MPI andmebaasi. Iga välise registri eest vastutab omaette mikroteenus, mis säilitab päringu vastuse oma vahemälus konfigureeritud ajaks (tavaliselt ühe päeva jooksul). Päring algallikast värskendab andmed vahemälus.

Vahemälust pärimine

Iga operatsioon mis toetab vahemälu sisaldab parameetri nocache. nocache parameetri vaikimisi väärtuseks on false, s.t. vaikimisi andmed võetakse vahemälust. xTee päringu käivitamiseks ilmutatud kujul nocache väärtuseks tuleb määrata true.