Article
Henrique Dias · Aug 22, 2020 2m read

My experience working with FHIR

Hi Community,

I want to share my experience creating the iris-fhir-portal with FHIR.  

I decided to take a step forward and join the IRIS for Health FHIR contest, but I had never worked with FHIR before.

After the FHIR Contest Kick-Off Webinar, where we got an overview of how the IRIS for Health works with FHIR, I started to looking at the FHIR documentation to create my Patient Chart project.

At HL7 FHIR (release 4) website, I found a "Resource Map":

The leading FHIR Resource for my Patient Chart it's the "Patient Resource".

Taking as an example, the Patient Resource documentation, it provides the user with all information that the Patient Resource Bundle offers, and that was great to discover every single piece of information that I had on hands: 

https://www.hl7.org/fhir/patient.html

The information provided by my Patient Chart is: 

  • Patient List
  • Patient Details 
  • Allergy
  • Vital Signs
  • Laboratory 
  • Immunization

To get the information that I need, I made use of 4 FHIR Resources: 

As informed in the documentation, the Patient Resource is in level 3 and described as "Linking to real-world concepts in the healthcare system."

The three other I found at the next level. The description provided to this level "Record-keeping and Data Exchange for the healthcare process": 

For Patient, Allergy, and Immunization, we have specific resources for each one of them. But, for Vital Signs and Laboratory, they are all inside Observation. How can we handle that?

Using fhir.js as demonstrated in the template created by @Guillaume Rongier , it's quite simple.

To illustrate this search in an FHIR Resouce, I'm putting this piece of code to show how I did to get the vital signs information inside the Observation Resource.

client.search({
    type: 'Observation',
    query: {
        patient: patientId,
        category: 'vital-signs',
        _sort: 'date'
    }
})

The way I achieve that it's using the category parameter.

All categories inside Observation Resource are described at  https://www.hl7.org/fhir/observation.html

  • Vital signs such as body weight, blood pressure, and temperature
  • Laboratory Data like blood glucose, or an estimated GFR
  • Imaging results like bone density or fetal measurements
  • Clinical Findings* such as abdominal tenderness
  • Device measurements such as EKG data or Pulse Oximetry data
  • Clinical assessment tools such as APGAR or a Glasgow Coma Score
  • Personal characteristics: such as eye-color
  • Social history like tobacco use, family support, or cognitive status
  • Core characteristics like pregnancy status, or a death assertion

As we could see in this article, getting information from FHIR Resources is pretty straightforward, and most of the part thanks to the very detailed documentation.

I hope that helps all developers that are having the same problems that I when I started using FHIR Resources.

See you in the next article 

30
4 1 5 266

Replies

FHIR documentation it's pervasive and detailed. Thanks for the article

Great text! I was lost trying to learn those fhir concepts by myself. Thank you!