Hl7.Fhir.R4 5.0.0-beta1

Build Status

IMPORTANT The 5.0 version of the SDK contains substantial changes to the way we have organized the NuGet packages and source code. Please read before installing this new 5.0 version.

IMPORTANT Version 5.0 of the SDK is in beta. Navigate back to the main repository for the stable 4.x release.

Introduction

This is Firely's official support SDK for working with HL7 FHIR on the Microsoft .NET (dotnet) platform.

This SDK provides:

  • Class models for working with the FHIR data model using POCO's
  • Xml and Json parsers and serializers
  • A REST client for working with FHIR-compliant servers
  • Helper classes to work with the specification metadata, most notably StructureDefinition and generation of differentials
  • Validation of instances based on profiles
  • Evaluation FhirPath expressions

Release notes

Read the releases notes on firely-net-sdk/releases. You can find documentation about this SDK in the Firely docs site.

Getting Started

Before installing one of the NuGet packages (or clone the repo) it is important to understand that HL7 has published several updates of the FHIR specification, each with breaking changes - so you need to ensure you use the version that is right for you:

  • DSTU1 (published September 2014) is mostly obsolete and we are no longer maintaining this library for DSTU1.
  • DSTU2 (published October 2015) is mostly obsolete and and we are no longer maintaining this library for DSTU2.
  • STU3 (published March 2017) is older, but still widely in use. Is fully supported by this library.
  • R4 (published January 2019) is in active use and fully supported by this library.
  • R4B (published May 2022) is the latest official release of the FHIR spec and is fully supported by this library.
  • R5 (not yet published) is work-in-progress. This library currently supports "snapshot-1".

Planned release DSTU2.1 was never published by HL7, but you will still find traces of it. We are not maintaining the version, but the NuGet package is still available.

Read the online documentation, and download the correct NuGet package for your FHIR release. Depending on the version of FHIR you require, you'll find the relevant link to the package below. For most developers, just including this NuGet package is enough to get started.

Spec version Git branch NuGet
R5 https://github.com/FirelyTeam/firely-net-sdk/tree/release/5.0.0 https://www.nuget.org/packages/Hl7.Fhir.R5
R4B https://github.com/FirelyTeam/firely-net-sdk/tree/release/5.0.0 https://www.nuget.org/packages/Hl7.Fhir.R4B
R4 https://github.com/FirelyTeam/firely-net-sdk/tree/release/5.0.0 https://www.nuget.org/packages/Hl7.Fhir.R4
STU3 https://github.com/FirelyTeam/firely-net-sdk/tree/release/5.0.0 https://www.nuget.org/packages/Hl7.Fhir.STU3
DSTU2 https://github.com/FirelyTeam/firely-net-sdk/tree/develop-dstu2 https://www.nuget.org/packages/Hl7.Fhir.DSTU2

Upgrading

We spend a lot of effort trying to maintain compile compatibility (not binary compatibility) between minor releases of the SDK. We do, however, publish a new major version with breaking changes about once a year. The table below lists the breaking changes for each of the major upgrades.

SDK version Breaking changes
2.x https://github.com/FirelyTeam/firely-net-sdk/wiki/Breaking-changes-in-2.0
3.x https://github.com/FirelyTeam/firely-net-sdk/wiki/Breaking-changes-in-3.0
4.x https://github.com/FirelyTeam/firely-net-sdk/wiki/Breaking-changes-in-4.0
5.x https://github.com/FirelyTeam/firely-net-sdk/wiki/Breaking-changes-in-5.0

The SDK has been totally restructured for the 5.0 release. Please take not of the following changes if you are upgrading:

  • The additional Hl7.Fhir.Specification packages are no longer relevant starting at version 5.0 of the SDK and should not be included in your projects anymore.
  • The main NuGet package no longer contains the specification.zip file that contains all the conformance resources used in the FHIR specification. If you are using the ZipSource resolvers (e.g. for profile validation), you will need to include the correct HL7.Fhir.Specification.Data.* NuGet packages. We recommend you look at the newer FhirPackageResolver that directly use the HL7-published NPM packages. Documentation can be found here.
  • The profile validator has been split off into its own repository. The NuGet packages for the 5.0 version of the profile validator will be posted soon.

Support

We actively monitor the issues coming in through the GitHub repository at https://github.com/FirelyTeam/firely-net-sdk/issues. You are welcome to register your bugs and feature suggestions there. For questions and broader discussions, we use the .NET FHIR Implementers chat on Zulip.

Contributing

We are welcoming contributions!

If you want to participate in this project, we're using Git Flow for our branch management. Please submit PRs with changes against the develop branche.

Note: Since the 5.0 release of the SDK, the branches for STU3 and newer have been combined in a single develop branch. This branch now contains the code for all FHIR releases from STU3 and up. We have also refactored all the common code out to projects within that branch, so the separate common repository (at https://github.com/FirelyTeam/firely-net-common) is no longer in use. This greatly simplifies management and creating PRs for these projects.

Showing the top 20 packages that depend on Hl7.Fhir.R4.

Packages Downloads
DHP.Contracts
Package Description
153
DHP.Contracts
Package Description
154
DHP.Contracts
Package Description
155
DHP.Contracts
Package Description
159
DHP.Contracts
Package Description
161
DHP.Contracts
Package Description
162
DHP.Contracts
Package Description
163
DHP.Contracts
Package Description
166
dhp.fhir
Package Description
151
dhp.fhir
Package Description
152
dhp.fhir
Package Description
156
dhp.fhir
Package Description
158
dhp.fhir
Package Description
159
dhp.fhir
Package Description
162
dhp.fhir
Package Description
163
dhp.fhir
Package Description
169
dhp.fhir
Package Description
182
dhp.fhir
Package Description
308
dhp.fhir
Package Description
408

See https://github.com/FirelyTeam/firely-net-sdk/releases

.NET 6.0

.NET Standard 2.0

Version Downloads Last updated
6.4.0 13 08/06/2026
6.3.0 28 07/09/2026
6.2.1 26 07/04/2026
6.2.0 25 05/11/2026
6.1.1 66 03/24/2026
6.1.0 50 03/05/2026
6.0.2 74 01/15/2026
6.0.1 297 10/15/2025
6.0.0 94 10/14/2025
6.0.0-rc1 98 08/20/2025
6.0.0-beta1 111 07/05/2025
6.0.0-alpha2 148 04/25/2025
6.0.0-alpha1 122 12/15/2024
5.13.4 20 05/27/2026
5.13.3 48 03/11/2026
5.13.2 46 01/08/2026
5.13.1 69 12/06/2025
5.13.0 118 10/14/2025
5.12.2 96 08/27/2025
5.12.1 110 07/18/2025
5.12.0 120 06/26/2025
5.11.7 105 05/24/2025
5.11.6 103 05/15/2025
5.11.5 139 05/08/2025
5.11.4 236 02/14/2025
5.11.3 171 02/07/2025
5.11.2 132 04/02/2025
5.11.1 204 11/28/2024
5.11.0 133 11/12/2024
5.10.3 160 09/21/2024
5.10.2 132 09/21/2024
5.10.1 175 09/21/2024
5.10.0 131 09/21/2024
5.9.1 119 08/28/2024
5.9.0 186 08/10/2024
5.8.2 145 07/22/2024
5.8.1 154 06/04/2024
5.8.0 204 07/23/2024
5.7.0 151 07/23/2024
5.6.1 207 07/23/2024
5.6.0 178 07/23/2024
5.5.1 198 02/05/2024
5.5.0 195 07/23/2024
5.4.0 159 07/23/2024
5.3.0 159 07/23/2024
5.2.0 153 07/23/2024
5.1.0 206 07/23/2024
5.0.0 169 07/23/2024
5.0.0-beta3 203 07/23/2024
5.0.0-beta2 131 07/23/2024
5.0.0-beta1 149 07/23/2024
4.3.0 238 07/23/2024
4.2.1 190 07/23/2024
4.2.0 154 07/23/2024
4.1.0 161 07/23/2024
4.0.0 136 07/23/2024
4.0.0-beta2 159 07/23/2024
4.0.0-beta1 159 07/23/2024
3.8.3 142 07/23/2024
3.8.2 174 07/23/2024
3.8.1 143 07/23/2024
3.8.0 147 07/23/2024
3.7.0 151 07/23/2024
3.6.0 177 07/23/2024
3.5.0 149 07/23/2024
3.4.0 172 07/23/2024
3.3.0 147 07/23/2024
3.2.0 141 07/27/2024
3.1.0 144 07/23/2024
3.0.0 202 07/23/2024
2.0.3 161 07/23/2024
2.0.2 177 07/23/2024
2.0.1 156 07/23/2024
2.0.0 218 07/23/2024
2.0.0-beta2 154 07/23/2024
2.0.0-beta1 159 07/23/2024
1.9.0 184 07/23/2024
1.8.0 160 07/23/2024
1.7.0 158 07/23/2024
1.6.0 137 07/23/2024
1.5.0 190 07/23/2024
1.5.0-beta1 151 07/23/2024
1.4.0 145 07/23/2024
1.3.0 149 07/23/2024
1.2.1 136 07/23/2024
1.2.0 166 07/23/2024
1.2.0-beta2 142 07/23/2024
1.2.0-beta1 168 07/23/2024
0.96.1 155 07/23/2024
0.96.0 162 07/23/2024
0.95.0 145 07/23/2024
0.94.0-beta3 156 07/22/2024