Ignixa.Extensions.FirelySdk5
0.5.2
dotnet add package Ignixa.Extensions.FirelySdk5 --version 0.5.2
NuGet\Install-Package Ignixa.Extensions.FirelySdk5 -Version 0.5.2
<PackageReference Include="Ignixa.Extensions.FirelySdk5" Version="0.5.2" />
<PackageVersion Include="Ignixa.Extensions.FirelySdk5" Version="0.5.2" />
<PackageReference Include="Ignixa.Extensions.FirelySdk5" />
paket add Ignixa.Extensions.FirelySdk5 --version 0.5.2
#r "nuget: Ignixa.Extensions.FirelySdk5, 0.5.2"
#:package Ignixa.Extensions.FirelySdk5@0.5.2
#addin nuget:?package=Ignixa.Extensions.FirelySdk5&version=0.5.2
#tool nuget:?package=Ignixa.Extensions.FirelySdk5&version=0.5.2
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.10.3). 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.10.3 | 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)
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.0tonetstandard2.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:
- Update your project's Firely SDK package references to 6.0.0+
- Replace
Ignixa.Extensions.FirelySdk5withIgnixa.Extensions.FirelySdk6 - No code changes required (same namespace and API)
- <PackageReference Include="Hl7.Fhir.Base" Version="5.10.3" />
+ <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 | Versions 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. |
-
net10.0
- Ensure.That (>= 10.1.0)
- Fhir.Metrics (>= 1.3.1)
- Hl7.Fhir.Base (>= 5.13.1)
- Ignixa.Abstractions (>= 0.5.2)
- Ignixa.Serialization (>= 0.5.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.9)
- Microsoft.IO.RecyclableMemoryStream (>= 3.0.1)
-
net9.0
- Ensure.That (>= 10.1.0)
- Fhir.Metrics (>= 1.3.1)
- Hl7.Fhir.Base (>= 5.13.1)
- Ignixa.Abstractions (>= 0.5.2)
- Ignixa.Serialization (>= 0.5.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.9)
- Microsoft.IO.RecyclableMemoryStream (>= 3.0.1)
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.5.2 | 0 | 6/16/2026 |
| 0.5.0 | 38 | 6/15/2026 |
| 0.0.163 | 710 | 2/11/2026 |
| 0.0.160 | 153 | 2/9/2026 |
| 0.0.155 | 180 | 1/24/2026 |
| 0.0.151 | 148 | 1/21/2026 |
| 0.0.150 | 119 | 1/20/2026 |
| 0.0.149 | 124 | 1/19/2026 |
| 0.0.148 | 128 | 1/18/2026 |
| 0.0.142 | 154 | 1/12/2026 |
| 0.0.137 | 212 | 1/9/2026 |
| 0.0.127 | 218 | 12/29/2025 |
| 0.0.109 | 379 | 12/18/2025 |
| 0.0.101 | 345 | 12/16/2025 |
| 0.0.96 | 495 | 12/10/2025 |
| 0.0.87 | 485 | 12/8/2025 |
| 0.0.70 | 412 | 12/7/2025 |
| 0.0.68 | 235 | 12/7/2025 |
| 0.0.62 | 239 | 12/6/2025 |
| 0.0.59 | 192 | 12/5/2025 |