Skip to main content

Provides FHIR interface to GNU Health.

Project description

This package aims to provide a functional FHIR interface to GNU Health data models. With the provided classes, one should be able to work with the back-end data from GNU Health in a FHIR-compatible way (through fhirclient).


The ultimate goal is that for every appropriate FHIR Resource there will be an adapter which subclasses the fhirclient data model. This subclass takes the provided tryton model and imports all supported data. Basically, this library is glue for fhirclient and GNU Health.

There are plans to extend some of the resources to better approximate the GNU Health data schemes. The FHIR specification and GNU Health storage format rarely overlap, many times requiring significant data contortions. This is an ongoing process and there is a decided lack of motivation to do too much heavy-lifting, consequently these ‘hacks’ should be kept to a minimum.


Currently, the package at least partially supports these FHIR resources:

  • Patient
  • Practitioner
  • Immunization
  • Condition
  • Observation
  • DiagnosticReport
  • MedicationStatement
  • FamilyMemberHistory
  • Procedure
  • Encounter
  • ClinicalImpression

Not every element is currently supported for each resource, nor will this be the goal. Some of the elements have no equivalent in GNU Health, some do not apply, while some are undesirable, and so on. The resources are still under active development with new element support added intermittently.


The easiest example is to use Proteus with this package:

from proteus import config, Model
from health_fhir import Patient

#Connect to the GNU Health demo server
config = config.set_xmlrpc('')

#Get the patient model
model = Model.get('gnuhealth.patient')

#Find the first patient
first_patient = model.find()[0]

#Import the data
patient = Patient(first_patient)

#Now you can use the data just like in fhirclient
print(patient.as_json()) #print FHIR JSON data
<other fhirclient stuff>

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
health_fhir-1.2.0-py2.py3-none-any.whl (4.7 kB) Copy SHA256 hash SHA256 Wheel py2.py3
health_fhir-1.2.0.tar.gz (3.3 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page