Skip to content

Relevant HL7 Implementation Guides & Specifications

Josh Nygaard edited this page Sep 3, 2025 · 6 revisions

Introduction

HL7 publishes numerous implementation guides that define how to construct the FHIR JSON. It is also these implementation guides that define the profiles that the validator uses as the source of truth.

A Note on Versions

When looking up an IG it can be confusing to know what version you should be looking at, especially because there can be multiple URLs that can point to the same version. As an example the here is the table of versions for the eCR FHIR IG: A screenshot of the table of versions of the eCR FHIR IG The first 3 rows, at the time the screenshot was taken, point to the same version, 2.1.2, however:

We typically want to use the current official release. When linking to an IG, such as in documentation, it is probably best to use the permanent link to the applicable version.

FHIR Specifications & Implementation Guides

FHIR R4 Specification

https://hl7.org/fhir/R4/index.html

US Core uses FHIR R4, which the latest version is 4.0.1. If a profile does not exist in either the eCR or US IGs, we then must look for the appropriate base FHIR resource here.

Relevant Implementation Guides

Electronic Case Reporting (eCR) - US Realm

https://hl7.org/fhir/us/ecr/2.1.2/index.html

This is the main IG we should be conforming our FHIR bundles to. It has a profile for the eICR Document Bundle. This is what we are attempting to convert the eICR XML documents into.

US Core

https://hl7.org/fhir/us/core/STU4/index.html

The eCR IG is based on the 4.0.0 version of the US Core IG. Most of the profiles in the eCR IG derive from the equivalent US Core 4.0.0 equivalent. E.g. US Public Health Patient is based on US Core Patient Profile. If a resource does not have a eCR IG version we probably want to then use its US Core IG version.

C-CDA on FHIR

https://hl7.org/fhir/us/ccda/2025Jan/

This IG is different to the previous IGs as it does define any profiles. Instead it provides guidance on translating C-CDA (the format eICRs come in) into FHIR. This includes general mapping guidance, specific guidance on converting objects such as C-CDA to FHIR patient, and concept mappings such as C-CDA to FHIR encounter status.

FHIRPath

https://hl7.org/fhirpath/

FHIRPath is a query language for querying FHIR data. We use it in the message-parser and ecr-viewer.

CDA Specifications & Implementation Guides

Consolidated CDA (C-CDA)

https://hl7.org/cda/us/ccda/4.0.0/

C-CDA is the is the specification used in the XML eICR files (also used for many other cases). This is useful in describing the possible structure of an incoming# eICR.

CDA R2 Implementation Guide

https://www.hl7.org/implement/standards/product_brief.cfm?product_id=436

This is unfortunately only available in a 2 part PDF. This defines an additional template on top of C-CDA specifically for eICRs. Along with the eCR FHIR IG this is the most important IG we work with, as this defines the relevant public health data that we are converting into eCR FHIR. The job of the FHIR Converter is to convert XML files compliant with the CDA R2 IG into JSON files compliant with eCR FHIR IG.