All events
SQL on FHIR WG Meetings

Weekly meetings of the HL7 SQL on FHIR working group — spec discussions, implementer demos, and open design questions. Recordings are public; no registration needed.

120 talks

SQL on FHIR WG Meeting — July 14, 2026

Nikolai showed a draft MaterializedView resource, and the group warmed to building data quality checks on top of SQL on FHIR.

Nikolai RyzhikovGino Canessa
BK
John Grimes
EM

Several speakers

6 presenters

SQL on FHIR WG Meeting — July 7, 2026

Evan Machusak walked the group through compiling CQL into SQL, and why writing measures one patient at a time is what makes them slow.

EM
Nikolai RyzhikovJohn GrimesGino CanessaArjun Sanyal

Several speakers

5 presenters

SQL on FHIR WG Meeting — June 23, 2026

Whether materialise should be a resource or just operations, three spec PRs reviewed, and the ballot notice going in.

Arjun SanyalNikolai RyzhikovGino CanessaJohn Grimes
AC

Several speakers

5 presenters

SQL on FHIR WG Meeting — June 9, 2026

John Grimes walked through the merged inter-query dependencies, and Steve Munini's six consistency fixes opened up the FHIR async mess.

Nikolai RyzhikovJohn GrimesSteve Munini
AC

Several speakers

4 presenters

SQL on FHIR WG Meeting — June 2, 2026

John Grimes moved the spec into an HL7 repo, and the group argued out whether a SQL view deserves a profile of its own.

Gino CanessaJohn GrimesNikolai RyzhikovSteve Munini

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — May 26, 2026

Nikolai Ryzhikov demoed FHIR-to-OMOP and the reason it's hard: one Condition can land in three tables, and the terminology decides which.

Nikolai RyzhikovArjun SanyalSteve Munini

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — May 12, 2026

Nikolai Ryzhikov showed an early FHIR-to-OMOP prototype, and John Grimes warned that shipping a rival mapping would just make enemies.

Nikolai RyzhikovJohn Grimes
CM
AC

Several speakers

4 presenters

SQL on FHIR WG Meeting — May 5, 2026

A thin week: Craig McClendon, Steve Munini and Arjun Sanyal compared two ways to flatten FHIR, and what each one costs you later.

Arjun SanyalSteve Munini
CM

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — April 28, 2026

Ilya Korover demoed a data governance layer over SQL on FHIR that traces every column back to the FHIRPath it came from.

Arjun SanyalNikolai RyzhikovJohn GrimesGino CanessaIlya Korover

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — April 21, 2026

With most of the group away, John Grimes made the case that the way to spread SQL on FHIR is a slow, naive implementation inside HAPI.

Arjun SanyalJohn GrimesGino CanessaSteve Munini
CM

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — April 7, 2026

Nikolai Ryzhikov pitched a dbt-style DAG of queries, and Gino Canessa asked whether `dependsOn` is even the right word for it.

Nikolai RyzhikovArjun SanyalGino CanessaJohn Grimes
AC

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — March 31, 2026

Nikolai Ryzhikov said quality measures look better in OMOP; Gino Canessa pushed back that OMOP's modelling bets are why SQL on FHIR exists.

Arjun SanyalNikolai RyzhikovGino Canessa
AC
Steve Munini

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — March 4, 2026

Should SQL on FHIR bolt onto CQL's evaluate operation, or is the Measure resource far more machinery than anyone needs?

Video
SQL on FHIR WG Meeting — February 24, 2026

Key-values nested inside key-values for $run parameters, and nobody has a good answer for authorising an arbitrary SQL query.

Video
SQL on FHIR WG Meeting — February 17, 2026

A payer explains why claims data can never answer a seven-day follow-up question, and what he wants from FHIR instead.

Video
SQL on FHIR WG Meeting — February 10, 2026

Where the human-readable SQL goes, which dialect you're in, and why rowIndex can't just be FHIRPath's $index.

Video
SQL on FHIR WG Meeting — January 27, 2026

If an agent writes your ViewDefinitions, how do you know they're any good? The group went hunting for a gold standard.

Video
SQL on FHIR WG Meeting — January 20, 2026

Why $export hands back a 303 instead of the result, and who is actually going to write the queries once the FHIR data arrives.

Video
SQL on FHIR WG Meeting — January 13, 2026

join on an empty collection: FHIRPath says empty, the SQL on FHIR tests say empty string, and fixing it breaks implementations.

SQL on FHIR WG Meeting — December 9, 2025

Arjun Sanyal spent an open session making the economic case for FHIR analytics: a standard that raises your costs is a terrible sales pitch.

Arjun Sanyal
JT
MW
TT

Several speakers

4 presenters

SQL on FHIR WG Meeting — December 2, 2025

John Grimes walked through the project scope statement that turns SQL on FHIR into an official HL7 project, with a September ballot in view.

John GrimesArjun SanyalBashir SadjadSteve Munini

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — November 25, 2025

Nikolai Ryzhikov argued the async draft is half hypermedia and half convention, and gets the worst of both.

Arjun SanyalNikolai RyzhikovJohn Grimes

Several speakers

3 presenters

SQL on FHIR WG Meeting — November 18, 2025

John Grimes argued that turning a clinical guideline into computable criteria quietly deletes the nuance clinicians were actually applying.

Arjun SanyalJohn GrimesSteve Munini

Several speakers

3 presenters

SQL on FHIR WG Meeting — November 11, 2025

Gino Canessa explained why reporting a failed job as an HTTP error breaks HTTP — and quietly breaks somebody's error budget.

Arjun SanyalNikolai RyzhikovJohn GrimesGino CanessaKseniia Nikolaienko

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — November 4, 2025

Nikolai Ryzhikov pushed back on the draft async pattern: why make a client fetch the result just to find out the job failed?

Arjun SanyalNikolai RyzhikovJohn GrimesSteve MuniniEugene Vestel

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — October 28, 2025

Eugene Vestel pitched compiling CQL into ViewDefinitions plus plain SQL — and John Grimes noted the most common CQL engine today is still a ...

Arjun SanyalSteve MuniniJohn GrimesEugene Vestel

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — October 21, 2025

John Grimes made the case for HL7 bureaucracy: the group runs loose enough that decisions get made without the people who would have objecte...

Arjun SanyalJohn GrimesSteve Munini

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — October 15, 2025

Why ViewDefinition can't simply be declared a FHIR resource, and a repeat directive for data that nests all the way down.

SQL on FHIR WG Meeting — October 14, 2025

Gino Canessa explained what it takes for ViewDefinition to become a real FHIR resource, and why HL7 has to own the short name.

Gino CanessaArjun SanyalNikolai RyzhikovJohn Grimes
AC

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — October 7, 2025

The group gave up on making ViewDefinition work properly in R4 and aimed at R6, and John Grimes demoed a SQL on FHIR runner for SQL Server.

Nikolai RyzhikovJohn GrimesGino CanessaArjun Sanyal

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — September 30, 2025

Nikolai argued backport IGs may cost the ecosystem more than they're worth, and that SQL on FHIR should live outside the FHIR core for good.

Nikolai RyzhikovArjun SanyalSteve MuniniEugene Vestel

Several speakers

4 presenters

SQL on FHIR WG Meeting — September 23, 2025

Nikolai and Arjun agreed the first API release ships R4-compatible, on the reasoning that R4 is what people will actually run for years yet.

Arjun SanyalNikolai Ryzhikov

Several speakers

2 presenters

Video
SQL on FHIR WG Meeting — September 9, 2025

John Grimes wants to count a cohort before extracting it. Every obvious way of doing it breaks, so he's betting on a FHIRPath search paramet...

John GrimesArjun SanyalSteve Munini

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — August 26, 2025

The group settled on targeting R4 with system-level operations, and John Grimes explained why a `repeat` directive needs a `repeatOrNull` tw...

Arjun SanyalNikolai RyzhikovJohn GrimesEugene VestelSteve Munini

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — August 19, 2025

Gene Vestel demoed translating CQL measures into SQL on FHIR, and Nikolai pitched an API for keeping a view materialised and up to date.

Arjun SanyalNikolai RyzhikovEugene VestelSteve Munini

Several speakers

4 presenters

SQL on FHIR WG Meeting — August 12, 2025

Brian Kaney and Nikolai went looking for a way to point a ViewDefinition at a questionnaire, and found FHIR's own answer already sitting the...

Nikolai RyzhikovArjun Sanyal
BK
Bashir SadjadSteve Munini

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — August 8, 2025

How a ViewDefinition points back at the questionnaire it was built for, and why it can't be a typed operation parameter in R4.

SQL on FHIR WG Meeting — August 5, 2025

Gino Canessa explained why ViewDefinition can't be a proper resource in R4, and why every workaround costs more than just moving to R6.

Arjun SanyalGino CanessaJohn GrimesSteve Munini

Several speakers

4 presenters

SQL on FHIR WG Meeting — July 29, 2025

Steve Munini demoed a Rust SQL on FHIR runner that passes the whole test suite, and the group spent the rest of the hour arguing about names...

Nikolai Ryzhikov
BK
Gino CanessaSteve MuniniJohn Grimes

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — July 22, 2025

Brian Kaney argued the base64 objection to Library is a red herring — nobody edits SQL inside JSON anyway — and largely won the room.

BK
Nikolai RyzhikovGino CanessaArjun SanyalJohn Grimes

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — July 15, 2025

John Grimes argued for default type hints so two runners produce columns you can run the same SQL over; Nikolai Ryzhikov talked him round on...

Nikolai RyzhikovArjun SanyalJohn GrimesSteve MuniniBashir Sadjad

Several speakers

6 presenters

SQL on FHIR WG Meeting — July 8, 2025

Nikolai Ryzhikov walked through the $export draft, and the group spent most of the hour working out what _count should actually count.

Nikolai RyzhikovSteve MuniniArjun SanyalGino Canessa
AC

Several speakers

5 presenters

SQL on FHIR WG Meeting — July 1, 2025

John Grimes proposed proving the query resource the way view definitions were proved: run the same SQL on four engines and check the answers...

Arjun SanyalJohn GrimesSteve Munini

Several speakers

3 presenters

SQL on FHIR WG Meeting — June 24, 2025

Eugene Vestel demoed a tool that builds ViewDefinitions straight from IG profiles, and Arjun Sanyal brought a third draft of the query resou...

Arjun SanyalNikolai RyzhikovGino Canessa
AC
Steve Munini

Several speakers

9 presenters

Video
SQL on FHIR WG Meeting — June 23, 2025

Where should a SQL query live — inside the clinical-reasoning Library machinery, or in something small of its own?

SQL on FHIR WG Meeting — June 17, 2025

Arjun Sanyal made the case for packing SQL into a FHIR Library; Gino Canessa and Nikolai Ryzhikov each turned up with a rival sketch.

Gino CanessaNikolai RyzhikovArjun SanyalJohn GrimesEugene Vestel

Several speakers

6 presenters

SQL on FHIR WG Meeting — June 10, 2025

Graham Grieve asked whether you can put a SQL statement into the FHIR search API; Gino Canessa said not raw SQL, and offered named queries i...

Gino CanessaArjun SanyalJohn GrimesSteve MuniniBashir Sadjad

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — May 27, 2025

John Grimes brought a list of holes in the FHIRPath subset, starting with the fact that the test suite doesn't obey the subset it is testing...

AC
John GrimesArjun SanyalNikolai RyzhikovSteve Munini

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — May 20, 2025

Nikolai Ryzhikov floated a $materialise operation — tell the server to keep a view up to date elsewhere — and Steve Munini said why that get...

Nikolai RyzhikovArjun SanyalSteve Munini

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — May 6, 2025

Gino Canessa introduced the feature-query IG, built after years of failing to rebuild the capability statement, as how a server says what it...

Nikolai RyzhikovGino CanessaJohn GrimesSteve MuniniArjun Sanyal

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — April 29, 2025

Nikolai Ryzhikov and John Grimes went round and round on how a client is meant to find out what a server can do, and FHIR had no good answer...

Nikolai RyzhikovArjun SanyalJohn Grimes

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — April 15, 2025

Nikolai Ryzhikov showed a client that builds its own forms out of the OperationDefinition, so the API describes itself instead of being writ...

Nikolai RyzhikovArjun SanyalBashir Sadjad

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — April 8, 2025

Bartek demoed FHIRboard, which groups ViewDefinitions into an "analytical case", and John Grimes explained why he points an LLM at SQL inste...

John GrimesArjun SanyalSteve Munini

Several speakers

3 presenters

Video
SQL on FHIR WG Meeting — April 4, 2025

Splitting $run from $evaluate, and a hard look at why FHIR versions can't be mapped mechanically.

SQL on FHIR WG Meeting — April 1, 2025

Gino Canessa argued for splitting run and evaluate into two operations, and filed a FHIR ticket mid-call rather than trust himself to rememb...

Nikolai RyzhikovGino CanessaArjun SanyalSteve MuniniBashir Sadjad

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — March 28, 2025

How do you describe an operation whose answer is a CSV file? FHIR makes you say it returns a Binary, and nobody actually does.

SQL on FHIR WG Meeting — March 25, 2025

Gino Canessa walked the group through how you describe an operation's input and output in FHIR, and where that approach quietly stops workin...

Gino CanessaNikolai RyzhikovArjun SanyalJohn Grimes

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — March 21, 2025

A reference server for the API, built to force the design questions out into the open — and they came out fast.

SQL on FHIR WG Meeting — March 18, 2025

Nikolai Ryzhikov started writing the reference server instead of the spec, and the questions it threw up ran the rest of the meeting.

Nikolai RyzhikovGino CanessaJohn GrimesSteve Munini

Several speakers

4 presenters

SQL on FHIR WG Meeting — March 11, 2025

Arjun Sanyal sketched a query resource and the portable analytic it might sit inside; Steve Munini said his team keeps running into the same...

Steve MuniniArjun Sanyal

Several speakers

2 presenters

Video
SQL on FHIR WG Meeting — February 26, 2025

Is plain SQL over raw Parquet a goal or not — plus a first pass at packaging and executing ViewDefinitions the FHIR way.

Video
SQL on FHIR WG Meeting — February 25, 2025

Nikolai Ryzhikov laid out five use cases an API would have to serve, and Brian Kaney showed a rival sketch built on CRMI packaging.

Nikolai RyzhikovJohn Grimes
BK
Arjun SanyalSteve Munini

Several speakers

6 presenters

Video
SQL on FHIR WG Meeting — February 24, 2025

DuckDB benchmarks over Parquet that came out oddly flat, and what happens when a query asks for a field the schema doesn't have.

SQL on FHIR WG Meeting — February 18, 2025

Dan Gottlieb brought DuckDB numbers that surprised everyone: 75GB of NDJSON queried in about the same time as 100MB of Parquet.

Nikolai RyzhikovDan GottliebArjun SanyalBashir SadjadJohn Grimes

Several speakers

5 presenters

SQL on FHIR WG Meeting — February 11, 2025

John Grimes showed a Parquet file built from FHIR JSON with no structure definitions involved, and Bashir asked what Parquet on FHIR is actu...

Arjun SanyalJohn GrimesBashir Sadjad
BK

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — February 7, 2025

Three Parquet-for-FHIR schemas compared, and the case for not fixing your schema in advance.

SQL on FHIR WG Meeting — February 4, 2025

John Grimes diffed three ways of putting FHIR into Parquet — Pathling, FHIR Data Pipes and the new spec — and made the case against one gian...

Arjun SanyalGino CanessaJohn GrimesBashir Sadjad

Several speakers

4 presenters

Video
SQL on FHIR WG Meeting — January 28, 2025

Nikolai Ryzhikov walked his draft export API past Dan Gottlieb, who could say exactly which parts of bulk export he'd do differently today.

Nikolai RyzhikovDan GottliebJohn GrimesArjun SanyalBashir Sadjad

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — January 22, 2025

Designing the bulk export operation: one view or many, files or tables, and why streaming keeps turning back into subscriptions.

SQL on FHIR WG Meeting — January 21, 2025

Dan Gottlieb argued that handing back files and maintaining a table on the server are two different operations, not one operation with a par...

Nikolai RyzhikovDan GottliebJohn GrimesBashir SadjadGino Canessa

Several speakers

5 presenters

Video
SQL on FHIR WG Meeting — January 14, 2025

A demo of using ViewDefinitions to measure how differently hundreds of payers fill in their FHIR, plus a first pass at what an API is for.

Video
SQL on FHIR WG Meeting — January 8, 2025

The 2025 work streams, a first sketch of a query resource, and how much of the IG integration the publisher already does.

Video
SQL on FHIR WG Meeting — December 13, 2024

Carving next year into work streams, and the rule that nothing gets specified without a real implementation running beside it.

Video
SQL on FHIR WG Meeting — October 9, 2024

How to actually publish a release of the IG, and whether a spec that promises not to break needs versioning at all.

Video
SQL on FHIR WG Meeting — September 25, 2024

A DuckDB evaluation: quick on flat data, five to ten times slower once lateral joins appear, and schema inference you can't lean on.

Video
SQL on FHIR WG Meeting — September 10, 2024

Cutting the last change down to a single link so v2 can ship, and what SQL on FHIR would add to a FHIR-to-OMOP conversion.

Video
SQL on FHIR WG Meeting — August 28, 2024

The second sitting of the Milestone 1 agenda, opening on what Delta Lake and Iceberg actually add on top of Parquet.

Video
SQL on FHIR WG Meeting — August 27, 2024

Closing out Milestone 1, and why the FHIRPath subset belongs in a shareable profile rather than in the base spec.

Video
SQL on FHIR WG Meeting — July 17, 2024

Part of the normative spec points at an unreleased FHIRPath build, and the group decided to stop doing that before tagging a version.

Video
SQL on FHIR WG Meeting — July 16, 2024

A proposal for a Parquet schema that fits the data instead of trying to cover all of FHIR, and what that pushes onto the view runner.

Video
SQL on FHIR WG Meeting — July 2, 2024

Two implementations: 250 lines of TypeScript typed straight from the spec's pseudocode, and a team that gave up on Parquet for Redshift.

Video
SQL on FHIR WG Meeting — June 19, 2024

A draft Parquet spec that derives the schema from the data, and why FHIR to OMOP is a join of two views rather than a cleverer ViewDefinitio...

Video
SQL on FHIR WG Meeting — June 5, 2024

What API a ViewDefinition builder needs, whether CRMI applies once ViewDefinition is canonical, and keeping the spec's informal voice.

Video
SQL on FHIR WG Meeting — June 4, 2024

Whether SQL on FHIR needs full FHIRPath, the view runner already inside the IG publisher, and picking a real dataset to test against.

Video
SQL on FHIR WG Meeting — May 29, 2024

A push for full FHIRPath with resolve(), a view runner already shipping inside the IG publisher, and MIMIC-IV as a real dataset to test on.

Video
SQL on FHIR WG Meeting — May 17, 2024

A decimal limit in JavaScript that the group decided not to work around, and why sorting a ViewDefinition makes no sense.

Video
SQL on FHIR WG Meeting — May 8, 2024

The Parquet session: three different jobs people want Parquet for, why a lossless FHIR schema gets enormous, and two ways to handle extensio...

Video
SQL on FHIR WG Meeting — May 2, 2024

Why a decimal test cannot assert integer, which FHIR versions are safe to declare, and the case for standardising a lossless Parquet before ...

Video
SQL on FHIR WG Meeting — April 23, 2024

Shareable and tabular ViewDefinition profiles, a FHIRPath bug found by a newcomer, and why the FHIR version question was really about FHIRPa...

Video
SQL on FHIR WG Meeting — April 17, 2024

Boundary functions missing from the JavaScript FHIRPath engine, what sibling selects actually cross join, and a C++ view runner built on sim...

Video
SQL on FHIR WG Meeting — April 12, 2024

Type assertions the reference implementation cannot enforce, why JSON became the source of truth for tests, and schema output from view runn...

Video
SQL on FHIR WG Meeting — April 2, 2024

FHIR to OMOP — integer person IDs, the missing standard concepts, and whether ViewDefinitions or plain SQL should finish the transform.

Video
SQL on FHIR WG Meeting — March 25, 2024

A shareable ViewDefinition profile that makes column types required, and a second profile for views that map straight to CSV.

Video
SQL on FHIR WG Meeting — March 5, 2024

Labelling a ViewDefinition with its intent — an enum on the resource or a FHIR profile — and what a view runner should tell you besides rows...

Video
SQL on FHIR WG Meeting — February 27, 2024

A test runner driven straight from JSON, the column ordering resolution, and cutting the spec back to background plus one normative section.

Video
SQL on FHIR WG Meeting — February 20, 2024

Should one ViewDefinition cover several resource types? Plus column ordering in the tests, and what `where` should do with an empty result.

Video
SQL on FHIR WG Meeting — February 13, 2024

Cutting the data layer guidance out of the core spec, and whether `ofType` with a bogus type should fail or quietly return null.

Video
SQL on FHIR WG Meeting — February 8, 2024

Roadmap — publish what already exists as v1, hand a ViewDefinition to bulk export, and split FHIR-on-Parquet out into its own spec.

Video
SQL on FHIR WG Meeting — January 30, 2024

A walkthrough of compiling a ViewDefinition into SQL, and four implementations disagreeing about how to avoid grinding to a halt.

Video
SQL on FHIR WG Meeting — January 23, 2024

Treating every ViewDefinition node as a function, and the edge cases the tests keep dragging into the open.

Video
SQL on FHIR WG Meeting — January 16, 2024

Should a ViewDefinition state its column types, or should every implementation be expected to infer them?

Video
SQL on FHIR WG Meeting — December 12, 2023

Freezing the feature list for a first release, why it will be called 2.0 rather than 1.0, and where the spec stops.

Video
SQL on FHIR WG Meeting — November 21, 2023

Why FHIR-to-OMOP is not a mechanical mapping, and whether niche use cases should be allowed to shape the spec.

Video
SQL on FHIR WG Meeting — November 14, 2023

Recursive data with no known depth, four ways to handle it, and a use case for resolve that has nothing to do with analytics.

Video
SQL on FHIR WG Meeting — November 2, 2023

Why `alias` went back to being `name`, and pinning down what a union actually means when its branches disagree.

Video
SQL on FHIR WG Meeting — August 11, 2023

FTR, a git-like format for shipping expanded value sets, plus a first cut of the spec as a real HL7 implementation guide.

Video
SQL on FHIR WG Meeting — July 14, 2023

Value sets in ViewDefinitions — a memberOf demo over a flat expansion table, and whether `where` belongs in three places at once.

Video
SQL on FHIR WG Meeting — July 7, 2023

Flooring a partial date into an instant, and the objection that erasing precision quietly breaks quality measures.

Video
SQL on FHIR WG Meeting — June 23, 2023

Someone six weeks into FHIR built two views and joined them — and forEachOrNull finally got its name.

Video
SQL on FHIR WG Meeting — June 16, 2023

forEach lands as an inner join by default, and nobody can name the version that keeps the row when there's nothing there.

Video
SQL on FHIR WG Meeting — May 26, 2023

A walkthrough of FQL, whose nested selects made the group's own variables section look unnecessary.

Video
SQL on FHIR WG Meeting — May 19, 2023

The first draft spec, and test cases showing that nobody agrees what two unnests next to each other should mean.

Video
SQL on FHIR WG Meeting — April 28, 2023

A view definition running in a browser over NDJSON, and the problem that you can't compile FHIRPath without knowing FHIR.

Video
SQL on FHIR WG Meeting — April 21, 2023

How to write a flattened view down — arrays or extra rows — and whether it should be a StructureDefinition or just some JSON.

Video
SQL on FHIR WG Meeting — April 14, 2023

UUIDs as join keys, whether versioned references matter, and pinning down the smallest set of transformations everyone needs.

Video
SQL on FHIR WG Meeting — April 7, 2023

The first sketch of a layered design: normalise a few things everywhere, then define flattened views on top of that with FHIRPath.

Video
SQL on FHIR WG Meeting — March 31, 2023

Google's FHIRPath-to-SQL work lands on the table, and the goal shifts from querying FHIR in ANSI SQL to describing flattened views.

Video
SQL on FHIR WG Meeting — March 24, 2023

A playground for running one query across several databases, and a hard argument about whether a macro layer is just a new SQL dialect.

Video
SQL on FHIR WG Meeting — March 17, 2023

A demo of getting FHIR into Spark, DuckDB, ClickHouse and DataFusion through Parquet, and a case for SQL on FHIR in low-resource clinics.

Video
SQL on FHIR WG Meeting — March 3, 2023

The group's first call: introductions, and the question of whether the columnar and JSON takes on SQL on FHIR can become one spec.