Hl7.Fhir.R4B 4.2.0

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Hl7.Fhir.R4B --version 4.2.0
NuGet\Install-Package Hl7.Fhir.R4B -Version 4.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Hl7.Fhir.R4B" Version="4.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Hl7.Fhir.R4B --version 4.2.0
#r "nuget: Hl7.Fhir.R4B, 4.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Hl7.Fhir.R4B as a Cake Addin
#addin nuget:?package=Hl7.Fhir.R4B&version=4.2.0

// Install Hl7.Fhir.R4B as a Cake Tool
#tool nuget:?package=Hl7.Fhir.R4B&version=4.2.0
STU3 R4 R4B R5
Build Status Build Status Build Status Build Status
Nuget Nuget Nuget Nuget

Introduction

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

Release notes

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

What's in the box?

This library 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

IMPORTANT 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 the .NET version for this publication is not maintained anymore.
  • DSTU2 (published October 2015) in widespread use, and is not supported by this library anymore since version 2.0.
  • STU3 (published March 2017), mature support by this library and most other tooling on the market.
  • R4 (published January 2019), mature support by this library and fully supported by this library.
  • R4B (published May 2022), the latest release of the FHIR spec and fully supported by this library.

Planned release DSTU2.1 was never published by HL7, but you will still find traces of it, in particular we still keep the NuGet package for it available.

Getting Started

Get started by reading the online documentation. Depending on the version of FHIR you require, you'll find the relevant links to the packages and develop branches in this repository below:

Spec version Git branch Core NuGet
R5 (experimental) https://github.com/FirelyTeam/firely-net-sdk/tree/develop-r5 https://www.nuget.org/packages/Hl7.Fhir.R5
R4B https://github.com/FirelyTeam/firely-net-sdk/tree/develop-r4B https://www.nuget.org/packages/Hl7.Fhir.R4B
R4 https://github.com/FirelyTeam/firely-net-sdk/tree/develop-r4 https://www.nuget.org/packages/Hl7.Fhir.R4
STU3 https://github.com/FirelyTeam/firely-net-sdk/tree/develop-stu3 https://www.nuget.org/packages/Hl7.Fhir.STU3
DSTU2 https://github.com/FirelyTeam/firely-net-sdk/tree/develop https://www.nuget.org/packages/Hl7.Fhir.DSTU2
DSTU1 https://github.com/FirelyTeam/firely-net-sdk/tree/master-dstu1 https://www.nuget.org/packages/Hl7.Fhir.DSTU

Please note that the source code for the Firely .NET SDK is split up into two GitHub repos: one (with the branches listed above) with code that is specific to a FHIR release (this repo), and one that contains the code that is applicable across all FHIR releases (a separate common repository). This second repository is included in the first one using a Git Submodule, so all you have to do is check out the main repo (this one) and learn how to work with Submodules. To clone this repository with submodules, you can do:

git clone --recurse-submodules -j8 https://github.com/FirelyTeam/firely-net-sdk.git .

Please refer to our submodules overview for more details.

Upgrading

Upgrading to 2.x? Breaking changes are listed here.

Going further? See 3.x breaking changes.

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 contributors!

If you want to participate in this project, we're using Git Flow for our branch management, so please submit your commits using pull requests on the correct develop-stu3/develop-r4/develop-r4B/develop-r5 branches as mentioned above!

GIT branching strategy

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net452 is compatible.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (13)

Showing the top 5 NuGet packages that depend on Hl7.Fhir.R4B:

Package Downloads
Hl7.Fhir.Specification.R4B The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Metapackage including Firely's SDK Base Class Library and specification conformance data for HL7 FHIR R4B. Its sole purpose is to provide a backwards-compatible package reference for projects that used pre-5.0 versions of the SDK.

brianpos.Fhir.R4B.DemoFileSystemFhirServer

Demonstration implementation of a FHIR R4 Facade using the file system as a super simple storage provider

brianpos.Fhir.R4B.WebApi.AspNetCore

This library Implements a FHIR Facade that you can add to other projects where you provide the storage engine through implementing a set of model interface classes

brianpos.Fhir.R4B.WebApi.Support

This library contains the interface definitions that an implementation should use to create the storage layer for a FHIR server using the FHIR WebApi Facade

Hl7.Fhir.Validation.Legacy.R4B The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Firely's Legacy profile validator (pre-SDK 5.0) for HL7 FHIR R4B.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Hl7.Fhir.R4B:

Repository Stars
microsoft/fhir-server
A service that implements the FHIR standard
Version Downloads Last updated
5.7.0 717 3/15/2024
5.6.1 3,068 2/13/2024
5.6.0 496 2/13/2024
5.5.1 2,500 1/16/2024
5.5.0 1,377 1/10/2024
5.4.0 12,169 10/26/2023
5.3.0 11,930 7/27/2023
5.2.0 4,928 5/26/2023
5.1.0 2,658 4/28/2023
5.0.0 6,168 2/17/2023
5.0.0-beta3 225 2/1/2023
5.0.0-beta2 237 1/19/2023
5.0.0-beta1 1,590 12/21/2022
4.3.0 75,291 9/22/2022
4.2.1 11,246 8/17/2022
4.2.0 3,872 8/16/2022
4.1.0 2,927 7/7/2022
4.0.0 82,163 5/10/2022
4.0.0-beta2 1,420 3/4/2022
4.0.0-beta1 821 2/7/2022
3.8.3 1,704 4/28/2022
3.8.2 1,229 3/28/2022
3.8.1 2,801 3/4/2022
3.8.0 852 1/7/2022
3.7.0 1,455 12/1/2021
3.6.0 921 10/15/2021
3.5.0 892 9/2/2021
3.4.0 973 6/30/2021
3.3.0 977 6/2/2021
3.2.0 993 5/4/2021