NHS North West Genomics
2.0.3 - ci-build United Kingdom flag

NHS North West Genomics, published by NHS North West Genomics. This guide is not an authorized publication; it is the continuous build for version 2.0.3 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

Document Exchange [MHD] Elaboration

This API for the NW GMSA Clinical Data Repository is based on the following:

The search parameters are based on FHIR Search which provides a detailed description of the parameters and value types.

graph LR

publisher[Document Publisher]
provider[Document Access Provider]
consumer[Document Consumer]

publisher --> |Publish Document| provider
consumer --> |Request Documents| provider
provider --> |Respond| consumer

Document Publish

Simplified Publish [ITI-105] Option

Note: the Binary is embedded in the DocumentReference. Document can be FHIR Document or PDF.

sequenceDiagram
    participant Provider as Document Provider
    participant Consumer as Document Consumer

    rect rgb(240, 248, 255)
    Note over Consumer,Provider:Simplified Publish [ITI-105]
    Provider->>Consumer: POST [base]/DocumentReference
    Consumer-->>Provider: Resonse
    end

See Simplified Publish [ITI-105]

System Exchange using NHS England Services Option

The diagram below illustrates the full sequence for a Document Publish; the later parts reuse the 'Document Publish' APIs described above. The document retrieval (NRL: Retrieve information from producer) is optional.

  1. From a R01 event trigger, the RIE (creates and) posts the FHIR DocumentReference to NRL. The url of the (PDF or FHIR) document is embedded in the DocumentReference.
  2. The RIE publishes an event to the MNS, this has a link to the FHIR DocumentReference stored in NRL.
  3. MNS Subscribers receive the event (note a subscription will need to be created by the consumer in MNS beforehand) via MESH or AWS SQS, and retrieve the FHIR DocumentReference from NRL.
  4. The consumer retrieves the document (PDF or FHIR Document) from the producer. For NW Genomics, the FHIR Document will be generated on demand and PDF will be concurrently supported, which type of document that is returned is controlled by Accept header (e.g. application/fhir+json or application/pdf).
sequenceDiagram

participant gdp as Document Provider
participant RIE as Regional Integration Engine
participant nrl as Document Registry (NRL)
participant mns as Subsription Service (MNS)
participant consumer as Document Consumer


gdp -->> RIE: R01 Event Trigger

rect rgb(240, 248, 255)
    Note over RIE,nrl:National Record Locator Service<br/>Create new, or Supersede existing, document pointers
    RIE ->> nrl: POST /DocumentReference
    nrl -->> RIE: Response
end 

rect rgb(240, 248, 255)
    Note over RIE,mns:Multicast Notification Service<br/>Publish Event
    RIE ->> mns: POST /event 
    mns -->> RIE: Response
end    
    alt for each MNS Subscriber
        rect rgb(240, 248, 255)
        Note over mns,consumer:Message Exchange for Social Care and Health<br/>or AWS SQS
        mns ->> consumer: Receive Event (MESH or AWS SQS)
        end
        rect rgb(240, 248, 255)
            Note over nrl,consumer:National Record Locator Service<br/>Get a single document pointer
            consumer -->> nrl: GET DocumentReference/{id}
            nrl -->> consumer: FHIR DocumentReference
        end
 
opt if required
    rect rgb(240, 248, 255)
        Note over gdp,consumer:National Record Locator Service<br/>Retrieve information from producer
        consumer ->> gdp: GET /Binary/{id} 
        gdp -->> consumer: PDF or FHIR Document
    end
end 
end

System Exchange Using FHIR Subscription and IHE DSUBm Option

Is based on Document Subscription for Mobile (DSUBm).

sequenceDiagram

participant gdp as Document Provider
participant RIE as Regional Integration Engine
participant mns as Subscription Service
participant consumer as Document Consumer


gdp -->> RIE: R01 Event Trigger

rect rgb(240, 248, 255)
    Note over RIE,mns:Resource Publish (ITI-111)
    RIE ->> mns: POST /DocumentReference 
    mns -->> RIE: Response
end    
    alt for each Subscriber
        rect rgb(240, 248, 255)
        Note over mns,consumer: Resource Notify (ITI-112)
        mns ->> consumer: Receive Event
        end
        
 
opt if required
    rect rgb(240, 248, 255)
        Note over gdp,consumer: Retrieve Document (ITI-68)
        consumer ->> gdp: GET /Binary/{id} 
        gdp -->> consumer: PDF or FHIR Document
    end
end 
end