Skip to main content

A python package for importing and exporting the CDISC TransCelerate USDM, version 4, using FHIR

Project description

USDM4 FHIR

A Python package for converting between CDISC TransCelerate Unified Study Data Model (USDM), version 4, and HL7 FHIR M11 message bundles.

Supports export (USDM to FHIR) and import (FHIR to USDM) for multiple FHIR profile versions, including PRISM2 and PRISM3 message formats, as well as a Madrid export variant.

Features

  • Export USDM4 study definitions to FHIR M11 Bundle JSON (PRISM2, PRISM3, Madrid)
  • Import FHIR M11 Bundle JSON back to USDM4 study definitions (PRISM2, PRISM3)
  • Schedule of Activities export to FHIR
  • Round-trip fidelity testing between USDM and FHIR representations
  • Built on fhir.resources (Pydantic-based FHIR R5 models)

Installation

pip install usdm4_fhir

Quick Start

Export: USDM to FHIR

from usdm4_fhir.m11.export.export_prism3 import ExportPRISM3

exporter = ExportPRISM3(study, extra)
fhir_bundle_json = exporter.to_message()

Import: FHIR to USDM

from usdm4_fhir.m11.import_.import_prism3 import ImportPRISM3

importer = ImportPRISM3()
wrapper = await importer.from_message("path/to/fhir_bundle.json")
study = wrapper.study

Dependencies

  • usdm4 (>=0.18.0) -- USDM4 API model and assembler
  • fhir.resources (==7.1.0) -- FHIR R5 resource models
  • d4k_ms_base (>=0.3.0) -- shared microservice base

Development

Setup

git clone https://github.com/data4knowledge/usdm4_fhir.git
cd usdm4_fhir
python -m venv .venv
source .venv/bin/activate
pip install -e ".[test]"

Commands

ruff format          # Format code
ruff check           # Lint
pytest               # Run tests

Build and Publish

python3 -m build --sdist --wheel
twine upload dist/*

Project Structure

src/usdm4_fhir/
  factory/        FHIR resource factories (ResearchStudy, PlanDefinition, etc.)
  m11/
    export/       USDM to FHIR export (PRISM2, PRISM3, Madrid)
    import_/      FHIR to USDM import (PRISM2, PRISM3)
    utility/      Shared utilities (address service, HTML parsing, tag references)
  soa/
    export/       Schedule of Activities FHIR export
  utility/        Data store
tests/            Integration test suite with round-trip verification

License

This project is licensed under the GNU General Public License v3.0. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

usdm4_fhir-0.12.0.tar.gz (49.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

usdm4_fhir-0.12.0-py3-none-any.whl (73.8 kB view details)

Uploaded Python 3

File details

Details for the file usdm4_fhir-0.12.0.tar.gz.

File metadata

  • Download URL: usdm4_fhir-0.12.0.tar.gz
  • Upload date:
  • Size: 49.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for usdm4_fhir-0.12.0.tar.gz
Algorithm Hash digest
SHA256 97cc1f8a9935eb81715f1e06bb74147e2b4a5bb6cf8dfefbd816d4ff1e8b6562
MD5 45530bf1ea7d7ed1380b3eff4e19e9a1
BLAKE2b-256 7b188cf1167c74aa77b5259c70ff7d2dd0aabc8bd5fcacfd954d7d5248687680

See more details on using hashes here.

File details

Details for the file usdm4_fhir-0.12.0-py3-none-any.whl.

File metadata

  • Download URL: usdm4_fhir-0.12.0-py3-none-any.whl
  • Upload date:
  • Size: 73.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for usdm4_fhir-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d5fb29ed580d3c34fab20c77ace16f82674959fc726cc0cba1aead0f022ecf30
MD5 ad40834a4ce303fa7a75f02c078f6aff
BLAKE2b-256 7e0282a117f0e043b597d02ebddb98fc5abf3c136789712e1d02847acdddcb9e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page