Skip to content

Latest commit

 

History

History
69 lines (54 loc) · 6.03 KB

File metadata and controls

69 lines (54 loc) · 6.03 KB

Challenge 3: Extract, transform and load C-CDA synthetic medical data

< Previous Challenge - Home - Next Challenge>

Introduction

In this challenge, you will use the FHIR Converter reference architecture in Microsoft Health Architectures, deployed in challenge 2, to ingest, transform, and load clinical healthcare data into FHIR Server. You will generate synthetic patient clinical data (C-CDA), convert them into FHIR Bundle and ingest them into FHIR Server. To generate synthetic patient data, you will use SyntheaTM Patient Generator open source Java tool to simulate patient clinical data in HL7 C-CDA format.

Clinical data ingest and convert scenario

In this scenario, you will develop a logic app based workflow to perform the C-CDA-to-FHIR conversion using FHIR Converter API and import the resulting FHIR Bundle into FHIR Server.

Description

You will use the Microsoft Health Architectures environment and add a new logic app based workflow for the C-CDA-to-FHIR ingest and convert scenarios as follows:

  • Use HL7toFHIR conversion pipeline infrastructure (deployed in challenge 2) to expose the C-CDA Conversion service endpoint:

    https://<SERVICE_NAME>.azurewebsites.net/api/convert/cda/ccd.hbs

  • Create a new logic app based workflow to perform the C-CDA-to-FHIR conversion and import the resulting FHIR Bundle into FHIR Server.

    • Your new logic app needs to perform the following steps in the workflow:
      • Step 1: Create a new BLOB triggered Logic App.
      • Step 2: Get BLOB content from C-CDA XML file.
      • Step 3: Compose BLOB content as Input object.
      • Step 4: Call the FHIR Converter API.
      • Step 5: Import response body (FHIR bundle) in Input object into FHIR Server connected through a FHIR Server Proxy.
  • Generate simulated patient data in C-CDA format using SyntheaTM Patient Generator.

    • Update the default properties for CDA output

      exporter.baseDirectory = ./output/cda
      ...
      exporter.ccda.export = true
      exporter.fhir.export = false
      ...
      # the number of patients to generate, by default
      # this can be overridden by passing a different value to the Generator constructor
      generate.default_population = 1000

      Note: The default properties file values can be found at src/main/resources/synthea.properties. By default, synthea does not generate CCDA, CPCDA, CSV, or Bulk FHIR (ndjson). You'll need to adjust this file to activate these features. See the wiki for more details.

  • Copy the Synthea generated C-CDA patient data (XML) in ./output/cda folder to cda BLOB container in {ENVIRONMENTNAME}store Storage Account created for FHIR Converter. This will trigger the CCDAtoFHIR logic app convert and load workflow.

  • Retrieve new FHIR patient clinical data using Postman.

Success Criteria

  • You have added a new logic app based workflow in the Microsoft Health Architectures environment to handle C-CDA to FHIR conversion.
  • You have generated synthetic FHIR patient clinical data in C-CDA format.
  • You have converted Synthea generated patient clinical data in C-CDA format to FHIR bundle.
  • You have loaded the patient clinical data into FHIR Server.
  • You have use Postman to retrieve the newly loaded patient clinical data in FHIR Server.

Learning Resources