Workflow

The workflow API Standards are:

HL7 v2 Events and Ad Hoc FHIR RESTful Events

The mappings to FHIR are indicative and would follow FHIR Workflow Ad Hoc Communication - Option A: Simple RESTful POST or PUT

See also NHS England Interoperability Handbook - Message Broker

ResourceMessageBroker

In HL7 v2, the message broker is normally called a Trust Integration Engine (TIE)

NHS England specifications for HL7 v2 ADT

Hl7v2Example

NHS England specifications for HL7 FHIR RESTful Ad Hoc

Admission, Discharge and Transder (ADT)

Event Code Description Event Request FHIR Resource
A28 Create/Register Patient Patient (POST)
A31 Update Patient demographics Patient (PUT)
A01 Patient admitted (inpatient) Encounter (POST)
A02 Patient transferred (between wards) Encounter (POST)
A03 Patient discharged Encounter (POST)
A04 Patient visit (inc arrival for appointment) Encounter (POST)
A05 Pre Admission (inpatient) or Planned Appointment (outpatient)Encounter / Appointment (POST)
A08 Patient visit update Encounter (PUT)
A11 Cancel Admission Encounter (DEL)
A12 Cancel Transfer Encounter (DEL)
A13 Cancel Admission Encounter (DEL)

Other

Group Event Code Description Event Request FHIR Resource
ORM/OMG/ORU/OM1 R01 Observation Message DiagnosticReport (POST)
Observation (POST)
Binary (POST)
ORM/OMG/ORU/OM1 O01 Order (diagnostic test, referral or prescription) ServiceRequest / MedicationRequest (POST)
REF I12 Referral ServiceRequest (POST)
MDM T01 Document Notification DocumentReference (POST)
MDM T02 Document Notification and content Binary (POST)
DocumentReference (POST)
MDM T03 / T04 / T07 / T08 / T09 / T10 Document Notification Update (more fine grained) DocumentReference (PUT)

HL7 FHIR Message and Documents, HL7 v3 and CDA

NHS England standards for FHIR Message API's are:

Events

Request

Will normally follow FHIR Workflow Ad Hoc Communication - Option A: Simple RESTful POST or PUT using either MESH or an operation ($process-message)

See also NHS England Interoperability Handbook - Message Broker

DocumentMessageBroker

Will often focus on either the request part of a workflow or the result outcome - the event. Events are not tied to the Request and will often be generated at key trigger points such as patient admitted or discharged.

Store and Notify

See also NHS England Interoperability Handbook - Store and Notify

Store and Notify is principally a modernistion of the

Command 'pagelink' could not render: Page not found.
. This changes the pattern from sending the Document/Message to sharing the Document/Message. This relies on Shared Clinical Documents being implemented.

DocumentNotificaton

In both cases an event notification is sent to the consumer, who can retrieve the data if required.

This also applies to HL7 v2 Events and Ad Hoc FHIR RESTful Events with the clinical data being shared using Query API and/or Shared Clinical Documents

EventNotification

Workflow Events

Although some workflow interactions are structured/digital particularly the initial request (referral, test request, etc). The subsequent events and sub tasks are predominantly SMS and Email based with the recipient manually updating their computer systems.

TextCommunication

Workflow Events replace the email/SMS interaction with simple structured interactions which is centred around the practitioner/patient requirements to communicate around workflow.

This is roughly the same as Resource, Message and Document notifications discussed previously. The terminology has changed to reflect patient and practitioner focus:

  • Resource / Document Source has become Placer, who is the person making the request.
  • Resource / Document Consumer has become filler, who is the person fulfilling the request.

WorkflowCommunication

In FHIR Workflow these notifications use the FHIR Task resource. Email/SMS are/can still present and they will supplement the structured Placer and Filler interactions.

WorkflowCommunicationExample

TODO Add in more details on FHIR Task

FHIR Task and Coding State Changes

Both the SNOMED CT coding and FHIR Task involve the communication of state changes between providers. The FHIR Workflow diagram illustrates a high-level view of the state changes.

event-state-machine

From a technical perspective FHIR Task is being used here as a both a Request and an Event

FHIR Workflow

Ad Hoc Workflow Patterns

The simplest form of FHIR Workflow involves the POST of a Request, Events relating to the request are posted back.

For Lab Results or Referrals this would be a POST /ServiceRequest for the request and POST /DiagnosticReport for the response.

For more details see FHIR Ad-Hoc Workflow Communication Patterns

workflow-traditional

Supporting information for the ServiceRequest or Observations relating to the DiagnosticReport would be shared via a Query API framework.

Standards in this guide to be used with this pattern are:

Workflow Management Patterns

Ad Hoc workflow Patterns lack support for clinical coordination and communication (see also Workflow Events. Workflow Management Patterns do and this includes direct activities relating to a referral such as rejection or referral acceptance, sub tasks such as booking an appointment relating to a referral.

For more details see FHIR Workflow Mangement Patterns

The following is an extract of the complete set of options.

Task Exchanges between Placer and Filler

FOR Care Coordination elaboration (No broker)

workflow-optiong

Task Exchanges via a Workflow Broker

workflow-optionh

NHS England Systems which follow this pattern are:

Notifications Events

Standards for notification events can include:

  • Multicast Notification Service API Publish and receive patient-related state changes from a single centralised system.
  • FHIR Cast FHIRcast synchronizes healthcare applications in real time to ensure the user acts on the same clinical information across these applications.
  • FHIR Subscription Topic-Based Subscriptions Framework (Note this is a FHIR R5 description which is more mature than FHIR R4, options exist to apply this concept to earlier versions.)

Event Data Mapping

For backwards compatibility it is recommended that the HL7 v2 Event Trigger types v2.0003 is supported for type.

Method type Subject source time data
Multicast Notification Service type subject source time data
FHIR Cast event.hub.event timestamp event.context
Subscription Message MessageHeader.event MessageHeader.source Bundle.timestamp Bundle.entry[] depends on MessageHeader.event
FHIR Workflow Task Task.code Task.for.identifier Http Header Task.meta.lastUpdated Task.focus
HL7 v2 ADT MSH.9 - Message Type PID - Patient identification MSH.3 - Sending Application
MSH.4 - Sending Facility
EVN.2 - Recorded Date/Time Depends on Message.type