-
Notifications
You must be signed in to change notification settings - Fork 6
Process Description v0.7.0
The following BPMN collaboration diagram illustrates the interactions between the four different processes that make up the NUM-CODEX data transfer:
The Data Transfer Process in v0.7.0 is composed of 4 different sub-processes: Trigger, Send, Translate and Receive.
The Trigger process can be used to identify GECCO FHIR resources that have been created or modified after a specified timestamp or after the last execution of the process. Once activated the process is configured to check for changed or created resources every 24 hours. When new or changed resources are found, the Send process is triggered for every patient associated to theses resources. During the 24 hour waiting period the tirgger process can be stopped.
During the Send process executed at the Data Integration Center (DIC) organization, GECCO FHIR resources are read from a local "GECCO" FHIR server for a single patient, validated against the de.gecco | 1.0.5 FHIR Implementation Guide and packaged as a FHIR Bundle for transport. The Bundle is temporarily stored in the local DSF FHIR server after all appearances of the patient pseudonym (DIC PSN) have been replaced with a placeholder and the Bundle is asymmetrically encrypted with the RSA public key from the Central Research Repository (CRR) organization. After the encrypted bundle has been placed in the local DSF FHIR server a Task resource with the patient pseudonym is send to the GECCO Transfer Hub (GTH) organization to start the download of the encrypted transfer Bundle and further processing.
After the Translate process at the GTH organization finishes or fails a Task resource is send back to the DIC organization to finish the Send process.
The Translate process at the GTH organization downloads the encrypted transfer Bundle from the Data Integration Centers (DIC). Exchanges the DIC organization specific patient pseudonym (DIC PSN) by requesting a linked central pseudonym for the Central Research Repository (CRR) organization from the Federated Trusted Third Party (fTTP) organization. Before sending a Task resource with the central pseudonym (CRR PSN) to the CRR in order to start the Send process, the still encrypted transfer Bundle is temporarily stored in the DSF FHIR server of the GTH organization.
After the Send process at the CRR organization finishes or fails a Task resource is send back to the GTH organization to finish the Translate process which in turn sends a Task resource to the DIC organization to finish the Send process.
At the Central Research Repository (CRR) organization the encrypted transfer Bundle is downloaded from the GTH organization at the beginning of the Receive process. After decryption all pseudonym placeholders are replace with the received central pseudonym (CRR PSN). Subsequently the transfer Bundle is executed against the data repository of the CRR organization.
General errors, data validation errors or a success message is send via a Task message back to the GTH organization in order to complete the Translate process.
The executable BPMN 2.0 process diagrams used for application can be found in the repository at codex-processes-ap1/codex-process-data-transfer/src/main/resources/bpe/. FHIR metadata resources that are needed to perform the data transfers between Data Sharing Framework (DSF) instances are located at codex-processes-ap1/codex-process-data-transfer/src/main/resources/fhir/. Together with the executable code of this DSF process plugin both the BPMN diagrams and the FHIR metadata resources are released as a JAR file.