Eswatini HL7 FHIR Implementation Guide
1.0.0 - draft
Eswatini
Eswatini HL7 FHIR Implementation Guide - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferral | Version: 1.0.0 | |||
| Active as of 2026-08-21 | Computable Name: SzReferral | |||
The Eswatini Referral Profile defines the constraints and usage of the HL7 FHIR ServiceRequest resource for representing referrals for healthcare services within the Eswatini National Digital Health Ecosystem. It provides a standardized and interoperable way to document requests to transfer a patient’s care, or part of their care, from one provider, facility, or service point to another. This profile ensures that referral information is captured and exchanged in a consistent, structured, and nationally aligned manner, supporting continuity of care, coordination across levels of service, and referral tracking.
This profile SHALL be used by systems that create, manage, or exchange referral information, including:
Electronic Medical Record (EMR) systems Referral and care coordination platforms Facility management and clinical systems Programme‑specific care and reporting systems National health information exchange (HIE) services
The profile applies to referrals such as:
Referrals between healthcare facilities Referrals from primary to secondary or tertiary care Internal referrals between departments or services Programme‑specific or specialist referrals Referrals for diagnostic, therapeutic, or consultative services
Each Referral represents a formal request for another provider or service to take responsibility for part or all of a patient’s care.
The Eswatini Referral Profile represents a clinical and administrative request for healthcare services to be provided by another provider or organization. It captures the intent and details of the referral, distinct from the actual delivery of care that may follow. A Referral:
Is associated with a Patient Is typically initiated by a Practitioner or organization Specifies the service or care requested May be linked to an Encounter Has a lifecycle, from creation through acceptance, completion, or cancellation
This separation allows systems to clearly distinguish between referral intent and subsequent care delivery.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1 |
![]() ![]() |
Σ | 1..1 | id | Logical id of this artifact |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
1..1 | Reference(Eswatini Organization Profile) | Health facility where the patient is being referred to. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralRecipientExtension | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Service point where the client is being sent. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServicePointExtension Binding: Value set: Eswatini Facility Service Points (required) | |
![]() ![]() ![]() |
0..1 | Reference(Eswatini Organization Profile) | Health facility where the patient received the service requested in the referral. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServiceLocation | |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 1..1 | Identifier | Identifiers assigned to this order |
![]() ![]() |
?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. |
![]() ![]() |
?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Classification of service Binding: ServiceRequestCategoryCodes (example): Classification of the requested service. |
![]() ![]() |
?!Σ | 0..1 | boolean | True if service/procedure should not be performed |
![]() ![]() |
Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred. |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Patient Profile) | Patient associated with the referral |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Encounter Profile) | Visit or Encounter associated with the referral |
![]() ![]() |
Σ | 1..1 | Date the patient is expected to arrive at the reciving facility | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() |
Σ | 1..1 | dateTime | Date the referral was created |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Organization Profile) | Health facility making the referral |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Reason the patient is being referred Binding: ProcedureReasonCodes (example): Diagnosis or problem codes justifying the reason for requesting the service investigation. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std. |
| ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std. |
| ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std. |
| ServiceRequest.reasonCode | Base | example | Procedure Reason Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | ServiceRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present |
orderDetail.empty() or code.exists()
|
This structure is derived from ServiceRequest
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1 | ||||
![]() ![]() |
Σ | 1..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
1..1 | Reference(Eswatini Organization Profile) | Health facility where the patient is being referred to. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralRecipientExtension | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Service point where the client is being sent. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServicePointExtension Binding: Value set: Eswatini Facility Service Points (required) | |||||
![]() ![]() ![]() |
0..1 | Reference(Eswatini Organization Profile) | Health facility where the patient received the service requested in the referral. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServiceLocation | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 1..1 | Identifier | Identifiers assigned to this order | ||||
![]() ![]() |
Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | ServiceRequest | MedicationRequest) | What request fulfills | ||||
![]() ![]() |
Σ | 0..* | Reference(ServiceRequest) | What request replaces | ||||
![]() ![]() |
Σ | 0..1 | Identifier | Composite Request ID | ||||
![]() ![]() |
?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. | ||||
![]() ![]() |
?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Classification of service Binding: ServiceRequestCategoryCodes (example): Classification of the requested service. | ||||
![]() ![]() |
Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. | ||||
![]() ![]() |
?!Σ | 0..1 | boolean | True if service/procedure should not be performed | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred. | ||||
![]() ![]() |
ΣC | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context. | ||||
![]() ![]() |
Σ | 0..1 | Service amount | |||||
![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Patient Profile) | Patient associated with the referral | ||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Encounter Profile) | Visit or Encounter associated with the referral | ||||
![]() ![]() |
Σ | 1..1 | Date the patient is expected to arrive at the reciving facility | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() |
Σ | 0..1 | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |||||
![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() |
Σ | 1..1 | dateTime | Date the referral was created | ||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Organization Profile) | Health facility making the referral | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Performer role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc. | ||||
![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) | Requested performer | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Requested location Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered. | ||||
![]() ![]() |
Σ | 0..* | Reference(Location) | Requested location | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Reason the patient is being referred Binding: ProcedureReasonCodes (example): Diagnosis or problem codes justifying the reason for requesting the service investigation. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Explanation/Justification for service or service | ||||
![]() ![]() |
0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
![]() ![]() |
0..* | Reference(Resource) | Additional clinical information | |||||
![]() ![]() |
Σ | 0..* | Reference(Specimen) | Procedure Samples | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Location on Body Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
![]() ![]() |
0..* | Annotation | Comments | |||||
![]() ![]() |
Σ | 0..1 | string | Patient or consumer-oriented instructions | ||||
![]() ![]() |
0..* | Reference(Provenance) | Request provenance | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| ServiceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std. |
| ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std. |
| ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std. |
| ServiceRequest.code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std. |
| ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std. |
| ServiceRequest.locationCode | Base | example | ServiceDeliveryLocationRoleType | 📦3.0.0 | THO v7.3 |
| ServiceRequest.reasonCode | Base | example | Procedure Reason Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | ServiceRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present |
orderDetail.empty() or code.exists()
|
This structure is derived from ServiceRequest
Summary
Mandatory: 11 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1 |
![]() ![]() |
Σ | 1..1 | id | Logical id of this artifact |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
1..1 | Reference(Eswatini Organization Profile) | Health facility where the patient is being referred to. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralRecipientExtension | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Service point where the client is being sent. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServicePointExtension Binding: Value set: Eswatini Facility Service Points (required) | |
![]() ![]() ![]() |
0..1 | Reference(Eswatini Organization Profile) | Health facility where the patient received the service requested in the referral. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServiceLocation | |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 1..1 | Identifier | Identifiers assigned to this order |
![]() ![]() |
?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. |
![]() ![]() |
?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Classification of service Binding: ServiceRequestCategoryCodes (example): Classification of the requested service. |
![]() ![]() |
?!Σ | 0..1 | boolean | True if service/procedure should not be performed |
![]() ![]() |
Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred. |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Patient Profile) | Patient associated with the referral |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Encounter Profile) | Visit or Encounter associated with the referral |
![]() ![]() |
Σ | 1..1 | Date the patient is expected to arrive at the reciving facility | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() |
Σ | 1..1 | dateTime | Date the referral was created |
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Organization Profile) | Health facility making the referral |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Reason the patient is being referred Binding: ProcedureReasonCodes (example): Diagnosis or problem codes justifying the reason for requesting the service investigation. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std. |
| ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std. |
| ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std. |
| ServiceRequest.reasonCode | Base | example | Procedure Reason Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | ServiceRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present |
orderDetail.empty() or code.exists()
|
Differential View
This structure is derived from ServiceRequest
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1 | ||||
![]() ![]() |
Σ | 1..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
1..1 | Reference(Eswatini Organization Profile) | Health facility where the patient is being referred to. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralRecipientExtension | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Service point where the client is being sent. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServicePointExtension Binding: Value set: Eswatini Facility Service Points (required) | |||||
![]() ![]() ![]() |
0..1 | Reference(Eswatini Organization Profile) | Health facility where the patient received the service requested in the referral. URL: https://eswatinihie.com/fhir/StructureDefinition/SzReferralServiceLocation | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 1..1 | Identifier | Identifiers assigned to this order | ||||
![]() ![]() |
Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | ServiceRequest | MedicationRequest) | What request fulfills | ||||
![]() ![]() |
Σ | 0..* | Reference(ServiceRequest) | What request replaces | ||||
![]() ![]() |
Σ | 0..1 | Identifier | Composite Request ID | ||||
![]() ![]() |
?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. | ||||
![]() ![]() |
?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Classification of service Binding: ServiceRequestCategoryCodes (example): Classification of the requested service. | ||||
![]() ![]() |
Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. | ||||
![]() ![]() |
?!Σ | 0..1 | boolean | True if service/procedure should not be performed | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred. | ||||
![]() ![]() |
ΣC | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context. | ||||
![]() ![]() |
Σ | 0..1 | Service amount | |||||
![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Patient Profile) | Patient associated with the referral | ||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Encounter Profile) | Visit or Encounter associated with the referral | ||||
![]() ![]() |
Σ | 1..1 | Date the patient is expected to arrive at the reciving facility | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() |
Σ | 0..1 | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |||||
![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() |
Σ | 1..1 | dateTime | Date the referral was created | ||||
![]() ![]() |
Σ | 1..1 | Reference(Eswatini Organization Profile) | Health facility making the referral | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Performer role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc. | ||||
![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) | Requested performer | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Requested location Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered. | ||||
![]() ![]() |
Σ | 0..* | Reference(Location) | Requested location | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Reason the patient is being referred Binding: ProcedureReasonCodes (example): Diagnosis or problem codes justifying the reason for requesting the service investigation. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Explanation/Justification for service or service | ||||
![]() ![]() |
0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
![]() ![]() |
0..* | Reference(Resource) | Additional clinical information | |||||
![]() ![]() |
Σ | 0..* | Reference(Specimen) | Procedure Samples | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Location on Body Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
![]() ![]() |
0..* | Annotation | Comments | |||||
![]() ![]() |
Σ | 0..1 | string | Patient or consumer-oriented instructions | ||||
![]() ![]() |
0..* | Reference(Provenance) | Request provenance | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| ServiceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std. |
| ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std. |
| ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std. |
| ServiceRequest.code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std. |
| ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std. |
| ServiceRequest.locationCode | Base | example | ServiceDeliveryLocationRoleType | 📦3.0.0 | THO v7.3 |
| ServiceRequest.reasonCode | Base | example | Procedure Reason Codes | 📍4.0.1 | FHIR Std. |
| ServiceRequest.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | ServiceRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present |
orderDetail.empty() or code.exists()
|
This structure is derived from ServiceRequest
Summary
Mandatory: 11 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Other representations of profile: CSV, Excel, Schematron
The profile constrains the base ServiceRequest resource to ensure capture of essential referral information, including:
Referral status, reflecting the state of the referral request Intent, indicating that the request represents a referral Requested service or reason for referral Subject (Patient) for whom the referral is made Requester, identifying the referring practitioner or organization Authored date, indicating when the referral was initiated
These elements support accurate referral management, follow‑up, and reporting.
This profile is designed to:
Conform to HL7 FHIR R4 ServiceRequest semantics Support interoperability within the Eswatini National HIE Enable consistent exchange of referral data across systems and levels of care Support national referral management, monitoring, and evaluation
Standardized referral data improves continuity of care and reduces fragmentation across the health system.
Systems claiming conformance to this profile SHALL:
Populate all required and Must Support elements defined by the profile Maintain accurate referral status throughout the referral lifecycle Ensure referral data reflects real clinical and administrative workflows
Optional elements from the base ServiceRequest resource may be used where relevant, provided they do not conflict with the constraints defined in this profile.
The Eswatini Referral Profile supports extensibility through standard FHIR mechanisms. Additional referral‑related details—such as programme indicators, referral outcomes, or prioritization information—may be introduced using FHIR extensions, subject to national governance and approval.
The Eswatini Referral Profile provides a standardized and interoperable representation of healthcare referrals, supporting coordinated care, effective use of services, and reliable information exchange across the national health system. Adoption of this profile improves referral tracking, strengthens continuity of care, and enhances interoperability throughout the Kingdom of Eswatini.