NHS North West Genomics, published by NHS North West Genomics. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/nw-gmsa/nw-gmsa.github.com/ and changes regularly. See the Directory of published versions
Data Sharing is based on FHIR RESTful API's, and asynchronous messaging used to deliver the orders and reports in mostly HL7 v2 and IHE Laboratory Testing Workflow (LTW) based .
The diagram below shows multiple interoperability pathways for exchanging diagnostic reports—either as structured data or documents—between systems.
It maps out which standards (FHIR, HL7 v2, IHE, XDS/MHD), APIs, and NHS England national services (UGR, NIR, NRL, Genomic OMS, etc.) are involved depending on:
Which API is used
Event API
Data Sharing API
Whether an existing interface already exists
Whether the exchange is structured data or unstructured documents
NHS England services are coded in blue, while currently implemented services are coded in green.
graph TD
B[Diagnostic Report Interoperabilty] --> C{"Options <br/>Both answers<br/>are likely"}
C -->|Event API| D{Existing Interface?}
C -->|Data Sharing API| E{Document <br/>or Data}
E --> |Data| Data[Structured]
E --> |Document<br/>and hybrid| Documents["Unstructured (and Clinical) Documents"]
Data --> REST["FHIR RESTful API<br/>IHE Query for Existing Data (QEDm)"]
REST --> UGR[NHS England Unified Genomic Record<br/>NHS England Patient Data Manager]
Documents --> XDS["FHIR RESTful API<br/>IHE Mobile access to Health Documents (MHD) <br/>or XML SOAP IHE XDS <br/>e.g. NHS England National Record Locator"]
XDS --> Format{Format}
Format --> |Binary| Binary[PDF, PMG, html, etc]
Format --> |Structured - Imaging| RAD[DICOM]
Format --> |Clinical Document - Laboratory| FHIRDocument["Structured and Unstructured<br/><br/>FHIR Document<br/>e.g. NHS England National Record Locator <br/> e.g. Internation Patient Summary (IPS),<br/>EU Laboratory and Imaging Reports,<br/>XPanDH/EU Hospital Discharge Report (HDR)"]
D --> |Yes| V2{Structured or<br/>Unstructured}
V2 --> |Structured| LTW[HL7 v2 ORU_R01<br/>IHE Laboratory Testing Workflow LTW LAB-3<br/>and IHE RAD]
V2 --> |Unstructured| MDM[HL7 v2 MDM_T02 or MDM_T01 <br/> e.g. ICS/LHCRE Systems]
MDM --> NRL["NHS England National Record Loactor Feed<br/>(POST DocumentReference)<br/>"]
D --> |No| Workflow[FHIR Workflow <br/> e.g. NHS England Genomic Order Management Service]
Workflow --> PubSub[FHIR Subscription]
LTW --> Pathology[FHIR Message <br/> e.g. NHS England Pathology]
RAD --> NIR[NHS England National Imaging Registry]
classDef blue fill:#DAE8FC;
classDef green fill:#D5E8D4;
class Pathology,UGR,NIR,FHIRDocument,XDS,NRL,Workflow blue
class LTW,REST,MDM green
Enterprise Integration
The Intermediary, North West GMSA Regional Integration Engine (RIE) is an Enterprise Service Bus most commonly known in the NHS as a Trust Integration Engine (TIE).
This implement as series of Enterprise Integration Patterns based around messaging, the diagrams below follow conventions used for these patterns.
The ESB has a Canonical Data Model which is expressed in this Implementation Guide using HL7 FHIR. This model is common to all the exchange formats used in the ESB:
This canonical model is not specific to Genomics. It is focused on standard message construction patterns in particular CorrelationIdentifier such as Order Numbers and Episode/Stay Identifiers and use of Clinical Coding Systems such as UK SNOMED CT.
To support genomics workflow, this guide is aligned to enterprise workflow processes described in IHE Laboratory Testing Workflow, terminology from this guide especially around Actors is used throughout this Implementation Guide.
Three types of messages are used within this workflow process:
Converts HL7 FHIR O21 messages into HL7 v2.5.1 OML_O21 format.
These transformed messages are sent to NW GMSA LIMS iGene.
Genomic Order Management Adaptor Service FHIR API (Messaging Gateway)
Targets NHS England Genomic Order Management Service FHIR API which is the interface to external GMSA.
This uses a FHIR RESTful API, similar to the Clinical Data Repository Adaptor, and like this service, the business logic (how to update the repository) is held within Regional Integrations Engine and this is not exposed externally.
Stores and enhances the message with additional data elements (GP Practice and ICS).
Ensures only traced NHS Numbers are present in the message.
Update Genomic Data Repository & Enrich Content (Content Enricher)
Stores and enhances the message with additional data elements.
Provides a consistent, enriched dataset for downstream use.
Routing
Router
Determines where the message should be delivered (e.g., hospital systems, care records, repositories).
Reports are sent to the NHS Trust which ordered the test (Message Router)
Reports are sent to NHS ICS Health Information Exchange (HIE) for sharing the reports within the ICS, this is based on the GP Surgery for the patient which is obtained via a PDS lookup. (Dynamic Router)
Converts enriched content back into a structured HL7 v2.x format for downstream systems that still rely on v2.
This ensures backward compatibility with existing hospital systems.
Output
Reports are sent as:
HL7 v2.5.1 ORU_R01 or MDM_T02 messages (for systems using HL7 v2).
HL7 over HTTP with OAuth2 (for secure API-based delivery).
Repository Service
A dedicated Repository Service captures and stores all enriched FHIR data. (Messaging Gateway)
FHIR Repository Adapter converts incoming HL7 FHIR messages into a format suitable for storage.
Data is stored in the Clinic Data Repository (IRIS FHIR Repository).
Access is available via HL7 FHIR RESTful API.
Laboratory Report Routing - NHS Trust (ORU_R01)
This routing is based on the ODS Code of the ordering facility.
Note: Routing logic for rest of England and Wales if for illustration purposes, neither are implemented.
This routing is based on the GP Practice (ODS Code) of the Patient, for GMCR (QOP OCS Code) a further check is performed on the Patients postcode (if patient postcode is not in GMCR region then send to the Dead Letter Queue).
As we are using http RESTful for communication between the Trust Integration Engines, this security and authorisation can be solved in a number of ways such as:
TLA-MA
openid
These are practical for point-to-point connections, but as the solution grows it can become complicated, so it is preferred we move to enterprise level security such as OAuth2 Client Credentials Grant.
If the RIE doesn’t understand the message for technical reasons, it will respond immediately with an error message.
Validation The RIE performs FHIR Validation on the order against the requirements listed in this Implementation Guide. The validation contains no errors, it is accepted; any errors will cause the message to be rejected. The RIE responds to the order placer asynchronously via a message queue, this is accessed by the order placer via a Polling Consumer
Distribution List If the message is accepted, it is passed to a router, at present this router passes the message onto the next process. This router is for future use with the national broker.
Transform to HL7 v2 The RIE will convert the FHIR Message to a HL7 v 2.4 ORM O01 and send this to iGene.