Hl7.Fhir.Base
5.0.0-beta1
Prefix Reserved
See the version list below for details.
dotnet add package Hl7.Fhir.Base --version 5.0.0-beta1
NuGet\Install-Package Hl7.Fhir.Base -Version 5.0.0-beta1
<PackageReference Include="Hl7.Fhir.Base" Version="5.0.0-beta1" />
paket add Hl7.Fhir.Base --version 5.0.0-beta1
#r "nuget: Hl7.Fhir.Base, 5.0.0-beta1"
// Install Hl7.Fhir.Base as a Cake Addin #addin nuget:?package=Hl7.Fhir.Base&version=5.0.0-beta1&prerelease // Install Hl7.Fhir.Base as a Cake Tool #tool nuget:?package=Hl7.Fhir.Base&version=5.0.0-beta1&prerelease
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.
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 theZipSource
resolvers (e.g. for profile validation), you will need to include the correctHL7.Fhir.Specification.Data.*
NuGet packages. We recommend you look at the newerFhirPackageResolver
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 separatecommon
repository (at https://github.com/FirelyTeam/firely-net-common) is no longer in use. This greatly simplifies management and creating PRs for these projects.
Product | Versions 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 | 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. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.1)
- System.Buffers (>= 4.5.1)
- System.ComponentModel.Annotations (>= 5.0.0)
- System.Reflection.Emit.Lightweight (>= 4.7.0)
- System.Text.Json (>= 7.0.0)
-
net6.0
- Newtonsoft.Json (>= 13.0.1)
- System.ComponentModel.Annotations (>= 5.0.0)
- System.Reflection.Emit.Lightweight (>= 4.7.0)
NuGet packages (7)
Showing the top 5 NuGet packages that depend on Hl7.Fhir.Base:
Package | Downloads |
---|---|
Hl7.Fhir.STU3
Firely's SDK for working with HL7 FHIR STU3. This is the root package for the SDK includes core functionality to working with RESTful FHIR servers, POCO classes for FHIR, parsing/serialization of FHIR data and working with conformance data and terminologies. |
|
Firely.Fhir.Packages
This is Firely's support library for anyone who wants to work with HL7 FHIR packages. |
|
Hl7.Fhir.Conformance
Conformance POCOs and related functionality for Firely's HL7 FHIR SDK. Is a dependency for the FHIR release-specific NuGet packages, but could be used separately in conformance-only scenario's for release R4 and up. |
|
Vonk.Core
Firely Server (formerly: Vonk) supports building a Facade or a Plugin, see the product pages for Firely Server (https://fire.ly/products/firely-server and FHIR Facade (https://fire.ly/products/fhir-facade). Vonk.Core contains methods and classes to assist you in building such a Facade or Plugin and interact with the rest of Firely Server. You need Firely Server to use Vonk.Core. Go to the product page to download a copy, including an evaluation license. Visit the documentation pages (https://docs.fire.ly/firelyserver/index.html) for documentation and examples on how to build a Facade or a Plugin. |
|
Firely.Fhir.Validation
Next-gen Firely validation library for FHIR data. |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Hl7.Fhir.Base:
Repository | Stars |
---|---|
microsoft/Tools-for-Health-Data-Anonymization
Set of tools for helping with data (in FHIR format) anonymization.
|
Version | Downloads | Last updated |
---|---|---|
5.11.0 | 15,577 | 11/8/2024 |
5.10.3 | 87,800 | 9/19/2024 |
5.10.2 | 2,639 | 9/18/2024 |
5.10.1 | 10,129 | 9/12/2024 |
5.10.0 | 1,771 | 9/10/2024 |
5.9.1 | 68,495 | 8/8/2024 |
5.9.0 | 40,196 | 7/25/2024 |
5.8.2 | 35,529 | 7/10/2024 |
5.8.1 | 191,090 | 5/2/2024 |
5.8.0 | 18,545 | 4/24/2024 |
5.7.0 | 107,970 | 3/15/2024 |
5.6.1 | 97,164 | 2/13/2024 |
5.6.0 | 2,053 | 2/13/2024 |
5.5.1 | 103,171 | 1/16/2024 |
5.5.0 | 33,838 | 1/10/2024 |
5.4.0 | 209,760 | 10/26/2023 |
5.3.0 | 272,955 | 7/27/2023 |
5.2.0 | 130,206 | 5/26/2023 |
5.1.0 | 84,790 | 4/28/2023 |
5.0.0 | 272,520 | 2/17/2023 |
5.0.0-beta3 | 2,504 | 1/31/2023 |
5.0.0-beta2 | 1,491 | 1/19/2023 |
5.0.0-beta1 | 5,065 | 12/21/2022 |