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 in a well-defined manner.
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 fashion.
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 under data extraction conditions.
- Slicing and Extensions: Supports slicing and FHIR extensions to handle institution-specific resource structures.
- Profile Adherence: Only keeps elements from extracted resources against specified 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: Create 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.
- Custom Resources: TORCH does not support extraction or processing of custom FHIR resources types (beyond the standard specification).
- On the fly profile support: TORCH only supports a set FHIR of profiles given at program startup via config (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.