Referral Summary

Referral Summary is a summarize patient health record with identified issues and/or other information related to assist in a referral. The information is usually summarized to detail information which is sufficient enough to allow meaningful information depending on the feasibilty and integration scope of an agreed information exhange project.


Scope and usage

This section of use case is meant to outline a general proposed scope of integeration that can be used as a baseline of information sharing with regards to the MY Core profile and base FHIR standard.


Boundaries and Relationship

The main resources used for retrieval/referencing supporting resources are ServiceRequest (MY Core) and Encounter (MY Core).

Other supporting resource such as Condition (MY Core), AllergyIntolerance (MY Core), MedicationRequest (MY Core), DiagnosticReport (MY Core) or Observation profile will reference or be referenced by the main resources to link the records for easier record retrieval.

If the integration scope is limited, the encounter summary can be shared within the ServiceRequest resource as a narrative xhtml instead of multiple resources. This would at least ensure that information shared can achieve the continuation of care objective of the HIE project. However, this scope of integration will most likely result in difficulties and less reliable data for later operational or analytical purposes.

A referral summary does not directly encourage amendment or appending by base FHIR standard. One of the reason is due to it being part of a workflow resource which may affect the operational flow. It is highly recommended to send a final referral summary only and if amendment is required to reject the initial referral ServiceRequest.status=revoked and create a new referral record instead.


Referral Summary

Below in the overview flow for referral process which align to the Care Coordination concept

Referral Flow

  1. The referring source system will first send a referral (ServiceRequest) record using the relevant API in HIE.
  2. HIE will receive the record and duplicate a copy in Kafka under a specified topic criteria.
  3. The referred source system that is subscribed to the defined criteria will receive the record in Kafka and will retrieve the record for further action.
  4. Once an referral has been acknowledged, the requesting system will send an outcome record ServiceRequest through HIE API.
  5. HIE will again duplicate the updated refferal record in Kafka.
  6. The reffering source system will receive the updated status through Kafka thus completing the loop.

Below are some of the use case scenarios that can be used depending on the scope of integration.

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

Referral only

This scenario only requires a ServiceRequest record to be shared. Source system can send ServiceRequest record individually and later send other supporting records through different API request if required.

However, ServiceRequest (MY Core) mandatories that;

Main Related Profile: ServiceRequest (MY Core), Patient (MY Core), Encounter (MY Core) and Organization (MY Core).


[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 referral only

1.referral template (MyHix),

2.referral sample (MyHix)

PUT [base]/ServiceRequest/@referralId
Retrieve by record id - GET [base]/[type]/@recordId
Retrieve record by encounter identifier - GET [base]/[type]?encounter.identifier=@encounterIdentifier
Retrieve record by patient id - GET [base]/[type]?subject=@patientId
Retrieve record by patient identifier - GET [base]/[type]?subject.identifier=@patientIdentifier

Referral with supporting records

This method of data sharing uses Bundle operation where multiple resource will be send together within a single request.

The supporting document sent varies depending on the integration scope of each project.

A Bundle transaction is not stored in the server as it is only created transiently as a means of trasporting records. Thus, it is highly recommended for source system to assign a unique record id for each of their record for easier retrieval and updating purposes if able. Else, if no id is provided the server will auto generate a random unique 32 alphanumerical id which source system can store via their own respective method for later retrieval/updating purposes.

Main Related Profile: ServiceRequest (MY Core) and Encounter (MY Core)


[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"
@panelObservationId = unique observation panel id defined from source system e.g. "obs-vs-sample"

Sample Description Sample Body API Method API
Create/Update referral bundle

1.bundle with id,

2.bundle without id

POST [base]
Retrieve by record id - GET [base]/[type]/@recordId
Retrieve record by encounter identifier - GET [base]/[type]?encounter.identifier=@encounterIdentifier
Retrieve record by patient id - GET [base]/[type]?subject=@patientId
Retrieve record by patient identifier - GET [base]/[type]?subject.identifier=@patientIdentifier
Retrieve observation panel record with its has-member record - GET [base]/Observation?_include=Observation:has-member&_id=@panelObservationId


External Reference

Refer "Referral only" under Scenarios for sample JSON.

The JSON template is only meant as a suggestion, it is up to each respective source system to decide on the method/scope of integration and entry of record template as long as data can be properly shared and viewed in HIE portal.


Shift + middle mouse to scroll

Data Elements Description Cardinality FHIR Element Id
Document set - Profile:ServiceRequest (MY Core)
Document unique Id A unique identifier of the document 0..1 ServiceRequest.id
Document repository unique id A repository unique identifier of the document 0..* ServiceRequest.identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/service-request-id').value
Document title A descriptive title of the document (eg: Hospital Referral Summary) 0..1 ServiceRequest.code.display
Document confidentiality R=Restricted, V=Very Restricted 0..1 ServiceRequest.meta.security.code
Document creation time Time-stamp when original document was created 1..1 ServiceRequest.authoredOn
Parent document id A unique identifier of previous document (when applicable) - Field not available in MY Core profile
Parent document relationship Identifier on how document is related to previous version (when applicable) - Field not available in MY Core profile
Facility - Profile:ServiceRequest (MY Core)
OID Unique ID assign to facility 1..1 ServiceRequest.encounter.reference:Encounter.serviceProvider.reference
Name 1..1 ServiceRequest.encounter.reference:Encounter.serviceProvider.display
Address Address Type refer Telecommunication Address Use table 0..1 ServiceRequest.encounter.reference:Encounter.serviceProvider.reference:Organization.address
Patient - Profile:Patient (MY Core)
Name 1..1 Patient.name.given
Gender Gender code refer Patient Gender table 1..1 Patient.gender
DOB 1..1 Patient.birthDate
Race 0..1 Patient.extension.where (url = 'http://fhir.hie.moh.gov.my/StructureDefinition/ethnic-my-core')
MRN 1..1 Patient.identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/patient-mrn').value
Address AAddress Type refer Telecommunication Address Use table 0..1 Patient.address
Phone home Phone Type refer Telecommunication Address Use table 0..1 Patient.telecom.where (use = 'home').where (system ='phone').value
Phone office Phone Type refer Telecommunication Address Use table 0..1 Patient.telecom.where (use = 'work').where (system ='phone').value
Fax Phone Type refer Telecommunication Address Use table 0..1 Patient.telecom.where (system ='fax').value
Email address Phone Type refer Telecommunication Address Use table 0..1 Patient.telecom.where (system ='email').value
National id 0..1 Patient.identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/my-kad-no').value
Author - Profile:ServiceRequest (MY Core) , Composition (MY Core)
Name 0..1 ServiceRequest.requester.where (type= 'PractitionerRole')display
MMC 0..1 ServiceRequest.requester.where (type= 'PractitionerRole').identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/mmc-no').value
Facility OID ServiceRequest.encounter.reference:Encounter.serviceProvider.reference
Facility name ServiceRequest.encounter.reference:Encounter.serviceProvider.display
Time Time-stamp when the original document was saved 0..1 Composition.event.period.start
Consultant - Profile:ServiceRequest (MY Core)
Name 0..1 ServiceRequest.requester.where (type= 'PractitionerRole')display
MMC 0..1 ServiceRequest.requester.where (type= 'PractitionerRole').identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/mmc-no').value
Facility OID ServiceRequest.encounter.reference:Encounter.serviceProvider.reference
Facility name ServiceRequest.encounter.reference:Encounter.serviceProvider.display
Time Time-stamp when the original document was approved 0..1 ServiceRequest.extension.where (url = 'http://fhir.hie.moh.gov.my/StructureDefinition/attester-my-core').extension.where (url = 'time').valueDateTime
Visit/Encounter - Profile: Encounter (MY Core)
Admission date 1..1 Encounter.period.start
Referral date 0..1 Encounter.period.end
Visit id 0..1 Encounter.identifier.where (system ='http://fhir.hie.moh.gov.my/sid/encounter-id').value
Time Time-stamp when patient request for service. 0..1 Encounter.statusHistory.where (status = 'planned').period.start
Assign doctor name 0..1 Encounter.participant.where (type.coding.code = 'PPRF').individual.display
Assign doctor MMC 0..1 Encounter.participant.where (type.coding.code = 'PPRF').individual.identifier.where (system = 'http://fhir.hie.moh.gov.my/sid/mmc-no').value
Assign doctor facility OID 1..1 Encounter.serviceProvider.reference
Assign doctor facility name 1..1 Encounter.serviceProvider.display
Service code Refer DSDLOC table 1..1 Encounter.type.coding.where (system = 'http://fhir.hie.moh.gov.my/CodeSystem/specialty-my-core').code
Service name Refer DSDLOC table 0..1 Encounter.type.coding.where (system = 'http://fhir.hie.moh.gov.my/CodeSystem/specialty-my-core').code
Referral - Profile: ServiceRequest (MY Core)
Reason for Referral 0..1 ServiceRequest.reasonReference.reference
Allergies - Profile: AllergyIntolerance (MY Core)
AAllergies and Other Adverse Reactions 0..1 AllergyIntolerance.code.coding.where (system = 'http://fhir.hie.moh.gov.my/CodeSystem/active-ingredient-my-core').code
Reason for care - Profile: Encounter (MY Core)
Hospital Admission Diagnosis 0..* Encounter.diagnosis.where (use.coding.code = 'AD').condition.reference
Other Condition Histories - Profile: Encounter (MY Core)
Active Problems 0..* Encounter.diagnosis.where (use.coding.code = '08' or use.coding.code = '01')
Referral Diagnosis 0..* Encounter.diagnosis.where (use.coding.code = 'DD').condition.reference
Resolved Problems 0..* Encounter.diagnosis.reference:Condition.clinicalStatus=resolved
List of Surgeries 0..* Encounter.diagnosis.condition.where (type = 'Procedure').reference:Procedure.code.coding.code
Medication - Profile: Medication (MY Core)
Medications 0..* MedicationRequest.medicationCodeableConcept.coding.code
Relevant Studies - Profile: Observation profile, DiagnosticReport (MY Core)
Results 0..* Observation.code.coding.code
Hospital Referral Studies Summary 0..* DiagnosticReport.coding.code
Plans of Care - Profile: ServiceRequest (MY Core)
Care Plan 0..1 ServiceRequest.note.text
Correspondence Facility - Profile:
OID Unique ID assign to facility
Name
Address Address Type refer Telecommunication Address Use table
Close