Skip to main content

FHIR schemas tools for bioinformatics.

Project description

iceberg-schema-tools

Create and maintain central iceberg schema. Render and validate FHIR data.

Overview

image

Code that generates the base schema from FHIR goes here. Additional tools are provided to lints, validates and visualize the schema.

Note: The actual schemas are stored in iceberg

Setup

pip install iceberg-tools

Use

$ iceberg schema
Usage: iceberg schema [OPTIONS] COMMAND [ARGS]...

  Manage bmeg or gen3 schemas from FHIR resources.

Options:
  --help  Show this message and exit.

Commands:
  generate  Generate from FHIR resources.
  compile   Create aggregated json file from individual yaml schemas

$ iceberg data

Usage: iceberg data [OPTIONS] COMMAND [ARGS]...

  Project data (ResearchStudy, ResearchSubjects, Patient, etc.).

Options:
  --help  Show this message and exit.

Commands:
  simplify             Renders PFB friendly flattened records.
  validate             Check FHIR data for validity and conventions.
  validate-simplified  Check simplified data for validity and conventions.
  pfb                  Write simplified FHIR files to a PFB.
  migrate              Migrate from FHIR R4B to R5.0.
  report               Aggregate avro pfb files into a cytoscape tsv.

Note: pfb_fhir and iceberg are synonymous in this context.

Examples

The commands:

pfb_fhir schema generate simplified
pfb_fhir data simplify --schema_path  iceberg/schemas/simplified/simplified-fhir.json tests/fixtures/simplify/study/ tmp/simplified
pfb_fhir data pfb tmp/simplified/ tmp/study.pfb
tree tmp

Will generate the following output:

INFO:'Records with relationships': 59413
INFO:'Records': 59460
tmp
├── simplified
│   ├── Condition.ndjson
│   ├── DocumentReference.ndjson
│   ├── Encounter.ndjson
│   ├── MedicationAdministration.ndjson
│   ├── Observation.ndjson
│   ├── Patient.ndjson
│   ├── ResearchStudy.ndjson
│   ├── ResearchSubject.ndjson
│   ├── Specimen.ndjson
│   └── Task.ndjson
└── study.pfb

Contributing

See CONTRIBUTING.md for developer notes.

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

iceberg_tools-0.0.5.tar.gz (73.5 kB view hashes)

Uploaded Source

Built Distribution

iceberg_tools-0.0.5-py3-none-any.whl (115.0 kB view hashes)

Uploaded Python 3

Supported by

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