Ignixa.Extensions.FirelySdk5 0.6.74

dotnet add package Ignixa.Extensions.FirelySdk5 --version 0.6.74
                    
NuGet\Install-Package Ignixa.Extensions.FirelySdk5 -Version 0.6.74
                    
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="Ignixa.Extensions.FirelySdk5" Version="0.6.74" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Ignixa.Extensions.FirelySdk5" Version="0.6.74" />
                    
Directory.Packages.props
<PackageReference Include="Ignixa.Extensions.FirelySdk5" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Ignixa.Extensions.FirelySdk5 --version 0.6.74
                    
#r "nuget: Ignixa.Extensions.FirelySdk5, 0.6.74"
                    
#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.
#:package Ignixa.Extensions.FirelySdk5@0.6.74
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Ignixa.Extensions.FirelySdk5&version=0.6.74
                    
Install as a Cake Addin
#tool nuget:?package=Ignixa.Extensions.FirelySdk5&version=0.6.74
                    
Install as a Cake Tool

Ignixa.Extensions.FirelySdk5

Firely SDK 5.x interoperability shims for bidirectional conversion between Ignixa types and Firely SDK types.

Overview

This package provides legacy support for users still on Firely SDK 5.x (5.11.4). It contains the same adapters as Ignixa.Extensions.FirelySdk6, but targets Firely SDK 5.x package versions.

If you're using Firely SDK 6.0+, use Ignixa.Extensions.FirelySdk6 instead.

Version Compatibility

Package Firely SDK Version Target Framework
Ignixa.Extensions.FirelySdk5 5.11.4 net9.0
Ignixa.Extensions.FirelySdk6 6.0.0 net9.0

Why Two Packages?

Firely SDK 6.0 introduced breaking changes in internal architecture, but the core interfaces (ITypedElement, ISourceNode, IElementDefinitionSummary) remained stable. This allows us to:

  • Share 100% of source code between SDK 5.x and 6.x versions (via file linking)
  • Zero code duplication - fixes apply to both versions automatically
  • Drop-in replacement - same namespace (Ignixa.Extensions.FirelySdk)

SDK Version and FHIRPath Seam

This package ships against 5.11.4, the lowest supported 5.x version and the same version the Microsoft FHIR server runs. Later 5.x releases carry a known bug, and a higher dependency floor would force that consumer's Firely SDK up past the version its own characterization tests pin.

This is also the 5.11.4 FHIRPath seam pinned by ADR 2608: the parity tests and benchmark link-compile the adapters at 5.11.4 to compare the engine that the migration replaces. Package floor and seam-parity measurement now agree, so the adapter is measured on the engine it ships against. Do not raise this floor without re-checking the consumer that the seam exists to serve.

Installation

dotnet add package Ignixa.Extensions.FirelySdk5

Usage

All usage examples from Ignixa.Extensions.FirelySdk6 apply identically:

Ignixa → Firely SDK

using Ignixa.Extensions.FirelySdk;

// Convert Ignixa IElement to Firely ITypedElement
IElement ignixaElement = ...;
ITypedElement firelyElement = ignixaElement.ToTypedElement();

// Use with Firely SDK tools (FhirPath, Validator, etc.)
var navigator = firelyElement.ToFhirPathNavigator();
var result = navigator.Scalar("Patient.name.family");

Firely SDK → Ignixa

using Ignixa.Extensions.FirelySdk;

// Convert Firely ITypedElement to Ignixa IElement
ITypedElement firelyElement = ...;
IElement ignixaElement = firelyElement.ToIgnixaElement();

// Convert Firely ISourceNode to Ignixa IElement (schema-aware)
ISourceNode sourceNode = FhirJsonNode.Parse(json);
IElement element = sourceNode.ToElement(schema);

Breaking Changes from SDK 5.x → 6.x

The Firely SDK 6.0 release introduced these breaking changes:

  • Framework support: Minimum target changed from netstandard2.0 to netstandard2.1
  • Internal architecture: POCO parsers refactored, FhirPath engine moved to IScopedNode
  • Removed interfaces: IDeepCopyable, IBaseElementNavigator

None of these affect the adapter code, which only uses stable interfaces.

Migration Path

When you're ready to upgrade to Firely SDK 6.x:

  1. Update your project's Firely SDK package references to 6.0.0+
  2. Replace Ignixa.Extensions.FirelySdk5 with Ignixa.Extensions.FirelySdk6
  3. No code changes required (same namespace and API)
- <PackageReference Include="Hl7.Fhir.Base" Version="5.11.4" />
+ <PackageReference Include="Hl7.Fhir.Base" Version="6.0.0" />

- <PackageReference Include="Ignixa.Extensions.FirelySdk5" Version="x.y.z" />
+ <PackageReference Include="Ignixa.Extensions.FirelySdk6" Version="x.y.z" />

License

MIT License - See LICENSE for details.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.6.74 147 9/3/2026
0.6.73 115 9/2/2026
0.6.68 153 8/24/2026
0.6.41 322 7/27/2026
0.6.28 163 7/22/2026
0.6.19 186 7/12/2026
0.6.7 189 7/9/2026
0.6.4 148 7/5/2026
0.5.13 150 7/3/2026
0.5.11 121 7/2/2026
0.5.6 165 6/17/2026
0.5.2 150 6/16/2026
0.5.0 119 6/15/2026
0.0.163 3,573 2/11/2026
0.0.160 166 2/9/2026
0.0.155 195 1/24/2026
0.0.151 166 1/21/2026
0.0.150 140 1/20/2026
0.0.149 141 1/19/2026
0.0.148 144 1/18/2026
Loading failed