Spec moves into an HL7 repo, and 'does a SQL view deserve a profile of its own?' — Jun 2, 2026
The spec now lives at HL7/SQL-on-FHIR
Split off from the reference implementation, the playground and the test report app, which all stay where they were.
John relicensed it Creative Commons Zero and added the statement at the top saying the work was developed externally and contributed to HL7 under the governance operations manual.
sqlonfhir.org redirects to the new edge build, so from a reader's point of view nothing moved.
Should a parameterless SQL query be its own resource?
Gino's caution: at some point you've wrapped so much of SQL in FHIR that people may as well just use SQL. He asked what the real use case was, drawing a parallel with people wanting to reinvent Gherkin inside FHIR.
Nikolai's concrete answer: FHIR-to-OMOP translation needs views of views, and without them every combination of layers has to be its own monolithic query.
John's reusability version: non-trivial ETL is layered, and if a query can't reference a query you end up duplicating layer one inside every layer two.
The resolution: a new SQL view library profile with parameters constrained to zero, and a SQL query may reference a SQL view but not the reverse. You don't build a view on a query; you build a query on a view.
R3, not R1, for the first HL7 release
Two major releases already exist outside the HL7 process and resetting the counter would confuse people.
We aren't going to run out of positive integers.
Gino thinks HL7 will allow it, since specs migrating in from other standards organisations have done the same, and the rationale can go straight into the notice of intent to ballot.
Materialise — "freshness target" beats "live"
Nikolai and John landed on freshness target expressed as a duration, rather than live.
John's objection to live: you can't test it — a duration gives you a box you are either inside or outside of — and he noted drily that healthcare has some fairly loose definitions of real time.
Framing it as staleness also works for systems that are micro-batched rather than genuinely streaming.
Move the URIs to an HL7 root
Every URI in the spec currently sits under sqlonfhir.org, and Gino made the argument for moving to an HL7 root: the domain is controlled by the project team, not by HL7, so if the team ever moves on, someone else could pick it up.
Separately, that part isn't optional for ViewDefinition itself — if it ever lands in FHIR core its canonical URL has to be HL7-rooted, because FMG polices those to stop collisions and because the URL has to survive the move unchanged.