Getting Started

Ready to dive into toFHIR? Explore our tutorial section to familiarize yourself with key concepts and terms, and follow step-by-step video guides that showcase the tool’s functionality with clear, detailed explanations.

Project

In toFHIR, a project serves as the foundation for your work, acting as a container for multiple ETL pipelines, referred to as jobs. Each job encompasses all the essential configurations and definitions needed to execute the mapping process from start to finish.

Schema

Schemas define the metadata for the source data format and act as a validation framework to ensure the input data meets the required standards before mapping begins. They provide a structured representation of EHR data entities to be mapped and are seamlessly integrated into the mapping process.

Job

Jobs act as ETL pipelines, encompassing all the necessary definitions to execute the data transformation process. When a job is run, the following components are utilized:

  • Data Source Settings: Configuration details for connecting to the source data.
  • Mappings: Detailed instructions for transforming source data into the desired FHIR resources.
  • FHIR Sink Configuration: Settings specifying the destination where the FHIR resources will be stored or transmitted.
  • FHIR Terminology Service: Integration details for the terminology service used during mapping to ensure consistent and accurate coding.

Mapping

Mappings define the transformation rules for converting source data into the desired FHIR resources. They are created using HL7 FHIR® resource templates written in a format and template language specific to toFHIR, which supports standard FHIRPath expressions alongside toFHIR-specific methods. A single mapping definition can include multiple mappings, allowing for one-to-many and many-to-many transformation scenarios. Additionally, mappings can leverage multiple data source schemas and contexts, providing extensive flexibility and customization to meet diverse use cases.

Mapping Context

A mapping context provides additional information used to enhance the mapping process. It enables seamless integration and alignment between healthcare concepts, ensuring that mappings are accurate and comprehensive. Mapping contexts are referenced within mappings to support more dynamic and context-aware transformations.

Terminology Service

toFHIR integrates seamlessly with FHIR terminology services to ensure accurate and standardized data representation. This integration supports two modes:

  • Remote FHIR Terminology Service: Connect to external terminology servers to utilize established clinical concepts and their translations, promoting interoperability and adherence to standards.
  • Local Terminology Service: Define and manage custom code systems, value sets and their code translations tailored to your organization's unique requirements, ensuring precise and context-specific data representation.

Tutorial

  • 01 Creating Project: The initial step

    Welcome to the very first toFHIR tutorial! This video walks you through creating a new project in toFHIR, including steps like setting a project name and defining project-specific configurations.

  • The goal of a schema definition is to describe the data source (its shape such as field names, data types etc.) to the system. Data source schemas are provided to the engine as a configuration of FHIR StructureDefinition resources. The tutorial explains how schemas are defined and how they provide metadata and validation for input data, ensuring the mapping process starts with well-defined data structures.

  • This video guides you through the process of creating mappings, using HL7 FHIR resource templates and the toFHIR-specific template language. It highlights the importance of FHIRPath expressions and custom functions as the foundation for defining mappings. You'll learn how to effectively use FHIRPath and toFHIR methods to design precise and efficient mappings.

  • This tutorial demonstrates how to connect and work with data sources featuring various relationships using toFHIR. Learn how to efficiently handle complex EHR data and explore different use cases where toFHIR simplifies the process.

  • Mapping variables in toFHIR enable users to create and reuse repetitive expressions efficiently. This feature enhances the flexibility and reusability of your mappings, making your overall mapping process more streamlined. Follow along with the video to understand how mapping variables can optimize your toFHIR workflows.

  • toFHIR empowers users to set preconditions for mappings, acting as filters to determine whether a mapping should be executed based on specific conditions. By setting clear criteria based on the source data, you can filter out records that do not meet the specified conditions. In this tutorial video, you'll explore the process of defining a precondition for an example mapping, gaining a comprehensive understanding of how preconditions enhance mapping process.

  • Mapping contexts in toFHIR, which are simple CSV files, are categorized as concept-map and unit-conversion. The objective of a mapping context is to provide a term/concept mapping or unit conversion by defining these in separate CSV files instead of embedding into the mapping scripts depicted with FHIRPath. These contexts play a vital role in facilitating the exchange and mapping of healthcare data. Concept-maps enable the mapping of concept codes between different systems, while unit-conversion focuses on mappings between different healthcare data units. In this tutorial video, you'll learn how to define a mapping context and effectively utilize it within your mappings, expanding your capabilities in toFHIR.

  • Jobs serve as complete ETL pipelines, bringing together essential definitions such as schemas, mappings etc. When executing a job, toFHIR seamlessly orchestrates the entire process, from reading the specified data to executing the defined mappings and writing the results to the designated FHIR sink. In this tutorial video, you'll learn the step-by-step process of defining a job, including configuring data source settings, setting up FHIR sink settings, and selecting mappings to be executed.

  • toFHIR provides a separate panel for the execution of jobs. After executing a job, users can easily access valuable information such as the number of successfully created FHIR resources and any encountered errors. Learn how to monitor results for any faulty resources and take appropriate actions to ensure optimal mapping outcomes. This video tutorial demonstrates how to execute a job seamlessly within the GUI and provides guidance on analyzing the execution results.

  • toFHIR offers a built-in testing feature that lets you test your mapping definitions during development. With this feature, you can ensure your mappings work as expected and that the generated FHIR resources meet desired standards, including validation against a FHIR server. In this video, you'll learn how to test and validate your mappings, as well as how to identify and fix errors in toFHIR.

  • toFHIR supports remote FHIR terminology services and enables you to create and manage your own local terminology service. This tutorial guides you through building a local terminology service from scratch, helping you ensure precise data representation and seamless concept exchange. You'll also learn how to integrate the local terminology service into your mappings, enhancing healthcare data integration effectively.