Skip to main content

Serialisation utilities for OMOP CDM cohorts and CQI builder

Project description

OA Cohorts – Reporting & Cohort Execution Engine

This package provides the core machinery for defining, executing, and inspecting cohort-based reports over OMOP-style clinical data. It’s designed to support building real-world evidence reports from composable clinical rules, measures, cohorts, and indicators, with both programmatic APIs and lightweight HTML rendering for debugging and exploration.

The framework implemented here supports configuration-driven clinical quality indicators over OMOP-harmonised data, with explicit support for disease and treatment episodes, temporality, and combinatorial logic. Measures can be defined in terms of diagnoses, treatments, procedures, observations, measurements, and demographics, and composed into clinically interpretable cohorts and indicators.

This enables the same indicator definitions to support bulk benchmarking, trend analysis over time, and patient-level drill-down, without rewriting query logic for each use case. In practice, this provides a bridge between formal indicator specifications and the operational reality of multidisciplinary care.

At a high level, the system lets you:

  • Define query rules (exact, hierarchical, scalar thresholds, phenotypes, etc.)
  • Combine rules into subqueries
  • Build measures from subqueries (including composite measures with AND/OR/EXCEPT logic)
  • Group measures into dash cohorts and cohort definitions
  • Define indicators (numerator/denominator pairs)
  • Assemble everything into a report
  • Execute the report against a database session and materialise results as in-memory member sets
  • Inspect SQL, executability, and structure via HTML renderers (handy in notebooks)

This is intentionally object-centric: once a report is executed, all downstream payloads (cohort pivots, indicator pivots, demographics, etc.) are assembled from the object graph rather than re-querying the database.

What’s here (roughly)

  • Report / ReportCohortMap: Top-level report definition, linking cohorts and indicators.
  • DashCohort / DashCohortDef: User-facing cohort groupings backed by executable measures.
  • Measure / MeasureSQLCompiler / MeasureExecutor: The core executable units. Measures compile to SQL, execute against a session, and materialise member sets with dating and episode context.
  • Indicator: Numerator/denominator semantics over measures, with temporal constraints.
  • QueryRule (+ subclasses): The rule DSL: exact matches, hierarchies, exclusions, scalar thresholds, phenotypes, substring matches, etc.
  • HTMLRenderable mixins: Lightweight visualisation of structure, SQL previews, and executability for debugging and exploration.

Execution model

report.execute(session)
report.assert_executed()

rows = report.members              # all cohort members
indicators = report.indicators     # now have numerator_members / denominator_members

Status

This is a working internal engine under active development. APIs may shift.

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

oa_cohorts-0.3.1.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

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

oa_cohorts-0.3.1-py3-none-any.whl (42.3 kB view details)

Uploaded Python 3

File details

Details for the file oa_cohorts-0.3.1.tar.gz.

File metadata

  • Download URL: oa_cohorts-0.3.1.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oa_cohorts-0.3.1.tar.gz
Algorithm Hash digest
SHA256 00baa3d6721da6dcd79d4f9d6cad2a45994fb6e3be964677ef62a7211a92d79e
MD5 32096a30e09e9ffe6cdaa18cfad43aa0
BLAKE2b-256 f13ba4893772f347d8795fc46b8c8854aa886c5396769398b5625b932122a04d

See more details on using hashes here.

Provenance

The following attestation bundles were made for oa_cohorts-0.3.1.tar.gz:

Publisher: pypi.yml on AustralianCancerDataNetwork/oa_cohort

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oa_cohorts-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: oa_cohorts-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 42.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oa_cohorts-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1f2f7bae93e9fe7e938e2a57ce4bae4b8e80a5f2f457d9d0eae1254780e26cd6
MD5 96dbc0c637a63dad9ef92ec965754fb1
BLAKE2b-256 e7ad789663a4e6f3305ae1b7dc5a92fe6e0a9e4ecca32615970f6282e81abd91

See more details on using hashes here.

Provenance

The following attestation bundles were made for oa_cohorts-0.3.1-py3-none-any.whl:

Publisher: pypi.yml on AustralianCancerDataNetwork/oa_cohort

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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