All Projects → FirelyTeam → Firely Net Sdk

FirelyTeam / Firely Net Sdk

Licence: other
The official Firely .NET SDK for HL7 FHIR

Projects that are alternatives of or similar to Firely Net Sdk

ruby-marshal
Haskell library to parse a subset of Ruby objects serialised with Marshal.dump
Stars: ✭ 30 (-94.64%)
Mutual labels:  serialization, parsing
apple-receipt
Apple InAppPurchase Receipt - Models, Parser, Validator
Stars: ✭ 25 (-95.54%)
Mutual labels:  validation, parsing
dataconf
Simple dataclasses configuration management for Python with hocon/json/yaml/properties/env-vars/dict support.
Stars: ✭ 40 (-92.86%)
Mutual labels:  serialization, parsing
Maat
Validation and transformation library powered by deductive ascending parser. Made to be extended for any kind of project.
Stars: ✭ 27 (-95.18%)
Mutual labels:  serialization, validation
Jsoniter Scala
Scala macros for compile-time generation of safe and ultra-fast JSON codecs
Stars: ✭ 410 (-26.79%)
Mutual labels:  serialization, parsing
hapic
Input/Output/Error management for your python controllers with Swagger doc generation
Stars: ✭ 18 (-96.79%)
Mutual labels:  serialization, validation
fefe
Validate, sanitize and transform values with proper TypeScript types and zero dependencies.
Stars: ✭ 34 (-93.93%)
Mutual labels:  validation, parsing
Dntframeworkcore
Lightweight and Extensible Infrastructure for Building Web Applications - Web Application Framework
Stars: ✭ 208 (-62.86%)
Mutual labels:  validation, dotnet-core
Colander
A serialization/deserialization/validation library for strings, mappings and lists.
Stars: ✭ 408 (-27.14%)
Mutual labels:  validation, serialization
Ceras
Universal binary serializer for a wide variety of scenarios https://discord.gg/FGaCX4c
Stars: ✭ 374 (-33.21%)
Mutual labels:  serialization, dotnet-core
wasmbin
A self-generating WebAssembly parser & serializer in Rust.
Stars: ✭ 40 (-92.86%)
Mutual labels:  serialization, parsing
Phonenumberkit
A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
Stars: ✭ 4,362 (+678.93%)
Mutual labels:  validation, parsing
sexp-grammar
Invertible parsing for S-expressions
Stars: ✭ 28 (-95%)
Mutual labels:  serialization, parsing
statham-schema
Statham is a Python Model Parsing Library for JSON Schema.
Stars: ✭ 21 (-96.25%)
Mutual labels:  serialization, parsing
Schematics
Project documentation: https://schematics.readthedocs.io/en/latest/
Stars: ✭ 2,461 (+339.46%)
Mutual labels:  validation, serialization
webargs-starlette
Declarative request parsing and validation for Starlette with webargs
Stars: ✭ 36 (-93.57%)
Mutual labels:  validation, parsing
Dotnetcore
.NET 5 Nuget Packages.
Stars: ✭ 146 (-73.93%)
Mutual labels:  validation, dotnet-core
Marshmallow Jsonapi
JSON API 1.0 (https://jsonapi.org/) formatting with marshmallow
Stars: ✭ 203 (-63.75%)
Mutual labels:  validation, serialization
Fluentresults
A generalised Result object implementation for .NET/C#
Stars: ✭ 266 (-52.5%)
Mutual labels:  validation, dotnet-core
Typesystem
Data validation, serialization, deserialization & form rendering. 🔢
Stars: ✭ 416 (-25.71%)
Mutual labels:  validation, serialization
STU3 R4 R5 Released
Build status Build status Build Status Release status
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), 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
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-r5 branches as mentioned above!

GIT branching strategy

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].