Skip to content

TORCH - Transfer Of Resources in Clinical Healthcare

Goal

Transfer Of Resources in Clinical Healthcare or Torch is a project that aims to provide a service that allows the local execution of structured data extraction queries on a FHIR-server.

The main goal of TORCH is to automate the extraction of structured clinical data from FHIR servers as defined by a well defined query language the so called Clinical Resource Transfer Definition Language (CRTDL) .

This is vital inside clinical research networks, where data from multiple institutions needs to be aggregated for centralized and decentralized analysis.

Manual extraction and transformation of data is time-consuming and error-prone, especially in a decentralized scenario.

TORCH aims to solve this problem by providing a tool that can extract data based on a well-defined human-readable structure and apply consent rules to ensure consent compliance. This structure can then be used to extract data from multiple institutions in a consistent manner.

A exemplary use case based on the German Medical Informatics Initiative (MII), where TORCH is used to extract data from hospital FHIR servers for a centralized analysis based on the Clinical Resource Transfer Definition Language (CRTDL) is shown below:

Features

TORCH provides a range of features to support standardized and consent-aware data extraction:

  • Required Fields Validation: Ensures that mandatory fields defined in the CRTDL are present in the extracted resources.
  • Consent Handling: Applies consent rules as defined in the CRTDL to guarantee compliance during data extraction.
  • Reference Resolution: Resolves references between resources while maintaining referential integrity.
  • Slicing and Extensions: Supports slicing and FHIR extensions to handle institution-specific resource structures.
  • Profile Adherence: Only keeps elements from extracted resources as specified by specific FHIR profiles (see Redaction).
  • FHIR Bulk Data Access: Implements the FHIR Bulk Data Access specification for efficient large-scale data extraction.
  • FHIR-to-FHIR Transfer: Creates extracted data in a FHIR-compliant format ready for import into another FHIR server or further FHIR based processing - ensuring maximum interoperability.

Limitations

  • Value Sets Binding Slices: Since TORCH does not have its own terminology service, it does not support slicing by value set bindings.
  • FHIR Version Support: TORCH currently supports only FHIR R4. Other versions (e.g., DSTU2, R5) are not supported.
  • On the fly profile support: TORCH only supports a set of FHIR profiles given at program startup via config by mounting all valid Structure Definitions (see Configuration).
  • Nested Resources: TORCH does not handle deeply nested resources; they are currently treated as a single field rather than fully resolved structures.
  • Performance Constraints: Large-scale extraction is bound by the FHIR Bulk Data Access specification and server capabilities; performance may vary depending on server implementation.
  • Consent Complexity: Consent handling is limited to rule-based approaches defined in the CRTDL. Complex or non-standard consent models may require customization.
  • Interoperability: TORCH ensures FHIR compliance but does not guarantee interoperability with all vendor-specific FHIR implementations.

License

TORCH is licensed under the Apache License, Version 2.0. See the LICENSE file for details.