Expand description
SQL-on-FHIR runner abstraction.
This module defines the SofRunner trait, implemented per-backend. Two
strategies exist:
- In-DB runners compile a [
ViewDefinition] to a native query executed inside the storage backend, skipping FHIRPath evaluation entirely: SQLite and PostgreSQL compile to SQL, MongoDB compiles to an aggregation pipeline. - In-process runners stream the resources out of a backend that has no
query engine (S3 object storage, and S3-primary composites) and evaluate
the view with the
helios-sofFHIRPath engine (InProcessSofRunner).
If the configured backend provides no runner at all, the
$viewdefinition-run handler returns 501 Not Implemented. Inline
resource: parameters are materialised into a transient in-memory SQLite
backend so they reuse the same in-DB pipeline.
The handler layer streams the result rows directly into the HTTP response.
Structs§
- View
Filters - Filters that narrow which resources are processed by a view run.
Enums§
- SofError
- Errors that can occur during SQL-on-FHIR view execution.
Traits§
- SofRunner
- Abstraction over in-process and in-DB SQL-on-FHIR execution strategies.