Use OMOP transformations in healthcare data solutions

Note

This content is currently being updated.

The OMOP transformations capability in healthcare data solutions prepares data for standardized analytics through Observational Medical Outcomes Partnership (OMOP) open community standards. To learn more about the capability and understand how to deploy and configure it, see:

OMOP transformations is an optional capability with healthcare data solutions in Microsoft Fabric.

Prerequisites

Before you run the OMOP transformations pipeline, make sure you complete the following steps:

OMOP ingestion service

When you run the OMOP ingestion service data pipeline, it creates delta table outputs that you can view using SQL endpoints.

OMOP CDM delta table outputs

This section describes the OMOP common data model (CDM) delta table outputs that you can expect from running the service.

  • The service transforms both the flattened Fast Healthcare Interoperability Resources (FHIR) data and the FHIR DocumentReference (unstructured clinical notes) extraction persisted in the silver lakehouse. The transformed data is written as OMOP delta tables to Azure Data Lake.

  • The optional Text Analytics for health service supports extracting the natural language processing (NLP) output from the DocumentReference content to map to the OMOP NOTE_NLP table. For more information about this service, see Unstructured clinical notes enrichment: OMOP transformation.

  • The service transforms reference data from FHIR code system, codes, and codeable concepts to OMOP concepts using the OMOP vocabulary tables.

  • Storing OMOP data in the open delta format maintains update history, enables time travel, and provides query performance on filtering by retrieving the most recent last_updated_date on a record.

Sample query

You can run the following sample query to view all the updates made to the selected person_id. The query should retrieve the top 10 rows (or lesser) from the Person table that was updated over a period. Adjust the query as per the name of the gold omop_database_name in your environment. Also remember to replace or update the person.id parameter with a valid value available in the dataset transformed from silver to gold.

SELECT TOP (10) * FROM [gold_omop].[dbo].[person]
Where [person].[id] = 'de259065a2ff4d5a87b764abf33408bd1b2c8c50'

FHIR to OMOP mapping

The initial FHIR to OMOP mappings are based on the HL7 International guidance as follows:

FHIR Domain Resource OMOP Table Notes
patient PERSON
Organization CARE_SITE
condition CONDITION_OCCURRENCE
Patient DEATH If patient.deceased is populated
Procedure DEVICE_EXPOSURE If procedure.focaldevice isn't null
Medicationrequest DRUG_EXPOSURE
address LOCATION patient.address and organization.address
Observation MEASUREMENT If observation.category is laboratory
Documentreference NOTE
Documentreference NOTE_NLP The Text Analytics for health output from documentreference unstructured note
Observation OBSERVATION If observation.category isn't laboratory
Procedure PROCEDURE_OCCURRENCE If procedure.focaldevice is null
Practitioner PROVIDER
Encounter VISIT_OCCURRENCE

OMOP community references