Introduction
In Malaysia, a significant portion of the adult population struggles with chronic health conditions. According to the National Health and Morbidity Survey (NHMS), nearly one in five adults (or 3.9 million people aged 18 and above) have diabetes. Additionally, high blood pressure affects three in ten adults (6.4 million), and high cholesterol is prevalent in four out of ten (eight million).
Background
The Malaysian Ministry of Health (MOH) established the National Health Screening Initiative (NHSI) to address this growing concern. NHSI aims to detect, prevent, and manage non-communicable diseases (NCDs) through early intervention. This initiative reflects the Ministry's recognition of health screening as a vital public health strategy, similar to the behavioral science approaches that proved successful in mitigating the Covid-19 pandemic.
HIE Scope & Role
The Health Information Exchange (HIE) (using the MY Core Specification as the exchange standard) serves as a central platform for consolidating health screening data collected from various sources.
This centralized system allows authorized healthcare providers to easily retrieve patient screening records for further evaluation and treatment.
Below (Diagram 1) is a simplified overview flow for this use case:
Actor
Below are the involved actor for this use cases:
Sharer - These are source system that conduct health screenings and contribute the data to the HIE.
Receiver - These are source system authorized to access patient screening information stored in the HIE.
Take note that a Source System can function as both Sharer & Receiver depending on its role in a specific patient's care journey.
API
Below are the related API for this use case:
No | API Function | Method | API |
---|---|---|---|
1 | Send Bundle | POST | [base] |
2 | Retrieve Bundle by Patient identifier | GET | [base]/Composition?_include=Composition:*&type=64285-0&subject.identifier=@patientIdentifier |
1 | Retrive Bundle by Custodian | GET | [base]/Composition?_include=Composition:*&type=64285-0&custodian=@organizationId |
1 | Retrieve Bundle by Authored Date Range | GET | [base]/Composition?_include=Composition:*&type=64285-0&custodian=@organizationId&date=ge(YYYY-MM-DD)&date=le(YYYY-MM-DD) |
Resource Breakdown
Following the International Patient Summary implementation guide format of exchanging information, Composition will used as the FHIR resource of choice to summarized a patient health screening record.
Resource By Integration Point
Below is the list integration point identified for this use case:
Integration Point | Profile/Questionnaire Related | Mandatory | Sample Data |
---|---|---|---|
Record Summary | CompositionHealthScreening (MY Core) | Required | HS Composition |
Patient | Patient (MY Core) | Required | Patient Conditional Create |
Encounter | Encounter (MY Core) | Required | Encounter Conditional Create |
Diagnosis | Condition (MY Core) | Optional | Condition |
Vital signs | Panel Vital Sign (MY Core) | Optional | Vital Sign Panel Transaction Bundle |
Anthropometry | Panel Anthropometry (MY Core) | Optional | Anthropometry Panel Transactional Bundle |
Smoking History | Smoking History (MY Core) | Optional | Smoking History |
Alcohol Use History | Questionnaire-Audit-10 | Optional | Alcohol Use History |
Lab Diagnostic Report | DiagnosticReport (MY Core) | Optional | Diagnostic Report Transaction Bundle |
Refer to each integration point Profile/Questionnaire Related for further details.
Bundle Details
Below (Diagram 2) is simplified bundle diagram example of how the document will utilize each FHIR Resource:
Health Screening Bundle
Compared to IPS specification, the Bundle will be sent from the sharer source system as a "Transaction" to be stored directly in the FHIR server. Example as link below:
Conditional Create Patient & Encounter
For the Patient & Encounter Resource, it is required to send as a Conditional Create when provided in the bundle to prevent duplicate creation of the same Patient/Encounter Resource. For further reading refer HL7 FHIR Conditional Create. Below is an exampe of the Bundle.entry.request.ifNoneExist
for snippet:
Patient Conditional Create Snippet
{ "resourceType": "Bundle", "type": "transaction", "entry": [ { "fullUrl": "patient-placeholder", "request": { "method": "POST", "ifNoneExist": "?identifier=http://fhir.hie.moh.gov.my/sid/patient-mrn|PEKA-921005806671A" }, "resource": {
Encounter Conditional Create Snippet
{{ "resourceType": "Bundle", "type": "transaction", "entry": [ { "fullUrl": "encounter-placeholder", "request": { "method": "POST", "ifNoneExist": "?identifier=http://fhir.hie.moh.gov.my/sid/encounter-id|PEKA-ENC-12345" },
It is required for the sharer source system to comply and supply ifNoneExist search parameter as specified in the snippet for Patient and Encounter Resource.