Skip to content

Process Description v0.3.3

Reto Wettstein edited this page Jul 6, 2021 · 1 revision

The Data Transfer Process in v0.3.3 is composed of 4 different subprocesses:

NUM CODEX Data Transfer process

Trigger Process

The trigger process can be used by a DIC to automatically trigger the data transfer to the CRR on a recurring basis. The trigger process is optional and can be switched on and off. It consists of the following tasks:

  • Scan for new data or new patients every 24 hours
  • Starts the send process, for each (new) patient with new data

Start Trigger Process

To start the trigger process, send this FHIR Task resource to the DIC DSF FHIR Endpoint:

  • Replace the organizations identifier.value Test_DIC for requestor and recipient with the identifier.value of your own DIC
  • Set a UUID in the in input value business-key
  • Use the optional input value export-from to set a date specifying what data is defined as 'new'; if this input value is not defined, every FHIR resource is regarded as new and triggers the send process

Stop Trigger Process

To stop the trigger process, send this FHIR Task resource to the DIC DSF FHIR Endpoint:

  • Replace the organizations identifier.value Test_DIC for requestor and recipient with the identifier.value of your own DIC
  • Use the same UUID for the input value business-key as used in the FHIR Task resource to start the trigger process

Send Process

The send process is used at a DIC to prepare and initiate data sending of a specific patient, defined by his or her DIC pseudonym or the corresponding Bloom Filter, via the GTH to the CRR. This subprocess performs the following steps:

  • Check patient consent to merge, use and transfer data to the CRR
  • Optionally resolve a Bloom Filter for a DIC pseudonym at the federated Trusted Third Party (fTTP)
  • Read, validate and create a transfer bundle from new data from the DIC GECCO FHIR repository
  • Replace pseudonyms in the transfer bundle with placeholders and encrypt the transfer bundle asymmetrically with the CRR public key
  • Provide the transfer bundle for the GTH

Start Send Process with DIC Pseudonym

To start the send process for a specific DIC pseudonym, send this FHIR Task resource to the DIC DSF FHIR Endpoint:

  • Replace the organizations identifier.value Test_DIC for requestor and recipient with the identifier.value of your own DIC
  • Set a logical reference in the input value patient
    • identifier.system: http://www.netzwerk-universitaetsmedizin.de/sid/dic-pseudonym
    • identifier.value: dic_foo/dic_pseudonym (source/original)
  • Use the input value export-to to specify a date until which new data should be extracted, this is usually the current date
  • Use the optional input value export-from to set a date specifying the date of the last execution of the data send process, if this input value is not set, all data until export-to is regarded as new

Start Send Process with Patient Reference

To start the send process for a specific FHIR patient resource containing either a DIC pseudonym or a Bloom Filter, send this FHIR Task resource to the DIC DSF FHIR Endpoint:

  • Replace the organizations identifier.value Test_DIC for requestor and recipient with the identifier.value of your own DIC
  • Set an absolute literal reference in the input value patient
    • reference: http://my.gecco.fhir.server/fhir/Patient/4
  • Use the input value export-to to specify a date until which new data should be extracted, this is usually the current date
  • Use the optional input value export-from to set a date specifying the date of the last execution of the data send process; if this input value is not set, all data until export-to is regarded as new

The patient resource to which the absolute literal reference is referring to, should contain one of the following two identifiers:

  • DIC pseudonym:
    • identifier.system: http://www.netzwerk-universitaetsmedizin.de/sid/dic-pseudonym
    • identifier.value: dic_foo/dic_pseudonym (source/original)
  • Bloom Filter:
    • identifier.system: http://www.netzwerk-universitaetsmedizin.de/sid/bloom-filter
    • identifier.value: J75gYl+RiKSsxeu33tixBEEtFGCZwIEsWIKgvESaluvpSGBte/S... (Base64 encoded BloomFilter)

Translate Process

The translate process is used at the GTH to resolve the DIC pseudonym with a CODEX pseudonym at the fTTP. This ensures that the CRR does not know from which DIC the transferred data originated. This subprocess consists of the following tasks:

  • Download data in a transfer bundle from a DIZ
  • Exchange the DIC pseudonym with the CODEX pseudonym
  • Provide the transfer bundle for the CRR

Receive Process

The translate process is used at the CRR to insert the transferred data into the central data repository. The following steps are executed:

  • Download data in a transfer bundle from the GTH
  • Decrypt the transfer bundle
  • Replace the pseudonym placeholders with the CODEX pseudonym
  • Insert data from the transfer bundle into the CRR GECCO FHIR repository
Clone this wiki locally