Encounter Record

Interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient is store as Encounter (MY Core) record.

Encounter record is mainly used as a main resource that will reference or be referenced by other records for later retrieval/updating purposes.


Click MY Core postman API link to view common API used in HIE.

[base] = address url e.g. "https://fhir.hie.moh.gov.my/baseR4/"
[type] = resource type e.g. "Patient | Encounter | Compostion"
@encounterId = unique encounter id defined from source system e.g. "encounter-sample"
@encounterIdentifier = encounter registrtion number defined from source system e.g "HTJ-ENC-2211000036"
@patientId = unique patient id defined from source system e.g "patient-sample"
@patientIdentifier = patient identifier such as mykad number or MRN e.g "HIE-00000003"

Sample Description Sample Body API Method API
Create/Update encounter record JSON PUT [base]/Encounter/@encounterId
Retrieve encounter record by id - GET [base]/Encounter/@encounterId
Retrieve encounter record by identifier - GET [base]/Encounter?identifier=@encounterIdentifier
Retrieve encounter record with patient id - GET [base]/Encounter?subject=@patientId
Retrieve encounter record with patient identifier - GET [base]/Encounter?subject.identifier=@patientIdentifier


Encunter Classification

Encounter (MY Core) classifies an encounter in 3 level:

  • the first level is class Encounter.class, defines the broadest concept of a encounter
    • example: Outpatient (Ambulatory), Inpatient, Emergency or a Virtual encounter (based on base FHIR terminology).
    • Related ValueSet: ValueSetEncounterClass (MY Core).
  • the second level is serviceType Encounter.serviceType, defines the specific type of service that is be delivered or performed.
  • the third level is services Encounter.serviceType, defines the main services performed during the encounter.
    • example: Internal Medicine, General Surgery, Cardiology, Family Medicine, Smoking Cessation, Communicable Disease, Non-communicable Disease (based on multiple combination of service terminology)
    • Related ValueSet: ValueSetSpecialty (MY Core).

Below is a diagram related to classification of encounter to further explain the description above

encounter-class-1 encounter-class-2


Encounter Diagnosis

Diagnosis captured during an encounter will be referenced by related encounter Encounter.diagnosis.condition.reference. The Diagnosis itself is store as a Condition (MY Core) record. However, the role of the diagnosis (example: main diagnosis, discharge diagnosis, admission diagnosis) is stored in Encounter.diagnosis.use.coding.code.

Related Diagnosis Role ValueSet: ValueSetDiagnosisRole (My Core)

Encunter Classification

Encounter (MY Core) classifies an encounter in 3 level:

  • the first level is class Encounter.class, defines the broadest concept of a encounter
    • example: Outpatient (Ambulatory), Inpatient, Emergency or a Virtual encounter (based on base FHIR terminology).
    • Related ValueSet: ValueSetEncounterClass (MY Core).
  • the second level is serviceType Encounter.serviceType, defines the specific type of service that is be delivered or performed.
  • the third level is services Encounter.serviceType, defines the main services performed during the encounter.
    • example: Internal Medicine, General Surgery, Cardiology, Family Medicine, Smoking Cessation, Communicable Disease, Non-communicable Disease (based on multiple combination of service terminology)
    • Related ValueSet: ValueSetSpecialty (MY Core).

Below is a diagram related to classification of encounter to further explain the description above

encounter-class-1 encounter-class-2


Encounter Diagnosis

Diagnosis captured during an encounter will be referenced by related encounter Encounter.diagnosis.condition.reference. The Diagnosis itself is store as a Condition (MY Core) record. However, the role of the diagnosis (example: main diagnosis, discharge diagnosis, admission diagnosis) is stored in Encounter.diagnosis.use.coding.code.

Related Diagnosis Role ValueSet: ValueSetDiagnosisRole (My Core)