Tech Insights
Kasun Perera
September 5, 2022

Introduction to FHIR

Introduction to FHIR

FHIR (Fast Healthcare Interoperability Resources) is a data interoperability standard and specification, made for the purpose of exchanging medical and healthcare data.In the age of digitisation, sharing of data while keeping standards and interoperability intact are becoming increasingly important. HealthInteroperability is the most important word in this context as it describes whythis protocol is for. The word "Fast" in convey that this standard isfast to learn and adopt. You won't need an expertise in programming to besuccessful with FHIR. You can quickly learn and adopt FHIR which is a fundamental aim of FHIR standard. 

In short FHIR can beexplained in five points as follows.

1.     A robustdata model for describing health and administrative data.

2.     A restfulAPI for interacting with that data using either JSON or XML.

3.     A set ofopen-source tools to implement and test FHIR applications.

4.     A collectionof FHIR Servers around the world that you can interact with.

5.     A community of implementers working together.


How was healthcare data exchanged earlier?

In the early 2000s, thesimple task of storing and sharing data was a challenging task. This story wastrue for healthcare data as well. Prior to the FHIR, HL7v2 and HL7v3 were thestandards used for healthcare. HL7v2 was one of the initial standards developedby HL7, the company which develops FHIR. But its nature of being too information-dense and being complicated led to the development of a newerstandard called HL7v3. Although HL7v3 was a great effort and had many sophisticated features, it never took off since it was not able to keep up withthe technology of that time. Basic Technology was quite the barrier toachieving any kind of interoperability in both the cases of v2 and v3. For themost part, the only part of HL7 v3 that remains widely adopted today is the Clinical Document Architecture (CDA). CDA allows for metadata standardisationand various clinical data points. However, as implied by the name, CDA is onlyspecific to clinical data. FHIR was created as a response to these old technologies to meet modern needs for data and interoperability.

HL7v2 Message format

HL7v2 Message format

Who Uses FHIR?

 Electronic HealthRecord (EHR) vendors like DIPS, Epic and Cerner, Apple, Microsoft, Google...etc. are widely using FHIR. The reasons for this are two-fold: first, becauseFHIR is based on modern web technologies that software developers can easily use without in-depth healthcare domain knowledge. And second, because companies are starting to recognize the multitude of benefits of FHIR.

Fhir is adopted by many developed countries in the world and USA takes the lead. The following map shows that adoption of technology enabled with FHIR is widespread across theUS. It shows that hospitals in most regions are at or above the national 84% average with some regions showing that 100% of hospitals have deployed technology enabled with FHIR. It’s important to note that hospitals in someregions lag behind, such as in the southwest and mountain west.

Percent of all hospitals that adopted and implemented FHIR in 2019, by healthcare referral region (HRR)


FHIR Resources

Resources are the basic building blocks of the FHIR standard. A FHIR resource is an entity used to mapreal-life data which approximately resembles to a "class" in object oriented programming context. It is basically picked up from the HTTP spec which basically describes the entire web in terms of these addressable fetchable resources. FHIR basically represents everything as resources anddefines a health record as a collection of resources. Eg: Health Record maystore the information of the condition of the patient, in FHIR this may bestored as the Condition and Patient resource. Each resource can be representedin different forms like XML and JSON.

Each resource in FHIR has some narrative and use case behind it. A narrative in FHIR may represent asituation, some actors, and other entities related to healthcare. FHIR defines a wide variety of resources to start with. The fhir resource list provided byHL7 can be accessed here.

FHIR Resource List


There are about 150 data models/resources in FHIR. The number you see in front of each resource is the maturity level of each resource. Maturity model is to show that the particular resource has gone through several rounds of revisions and discussions to cometo this level. N stands for "Normative" which implies that theresource is finalised and backward compatible. 0 implies that the resource isat the draft level and the scale varies from 0 - N. 

Fhir Maturity Model (FMM)

Each resource representsa specific data model made for a specific purpose. Few examples are listed below. 

·        Patient: A Person receiving the healthcare service.

·        Condition:Represents the condition of a patient.

·        Observations:Represents the diagnostic reports of the patient.

·        Appointment:Represents a patient’s visit to a clinic.

Resource Structure

Each resource provides a description, relationships and the resource content which provides the property structure. 

1.     Name: The name of the element in the resource

2.     Flags: A set of information about the element that impacts how implementers handle them. eg:Σ represents that the element is included in the summary search.

3.     Cardinality:The lower and upper bounds on how many times this element is allowed to appearin the resource

4.     Type: The data type of the element. These may be simple types like strings or complex types like references to other some other resources.

5.     Description & Constraints: A description of the element, and details about constraints that are applied to it.

Patient Resource

80:20 Rule

FHIR specification covers only what is needed by 80% of the systems worldwide. Extensions are provided in resources to cover the rest of the use cases of the remaining 20%.

Eg: Eye color forthe patient may come in 20%, since 80% of the system may not require the patient to provide their eye color where as Name /Address of Patientwill come under 80% and is natively supported by FHIR.

Each resource in FHIR may consist of the following parts:

1.     Metadata:Provides some extra information about the resource Eg: ResourceId, ResourceVersion, Profiles, and Tags.

2.     Narrative:Human-readable version of the content.

3.     Extensions:This is used to implement all the 20% use cases as discussed above.

4.     Elements/Body:Represents the actual content resources.


FHIR Profiling

We know that the basic concept of FHIR is that everything is represented as resources. These resourcesmay be very broad and one thing in a resource can be represented in a number ofways.

So to encourage interoperability we might want to constrain resources according to our own specifications and constraints. That’s where Profiling comes into the picture.

FHIR Profile is the way of constraining FHIR resources to meet certain defined standards. It is a kind of Data-Schema for the FHIR resource. In a profile, we say what to include andwhat not to include in a resource for a particular scenario. As we discussed earlier in 80:20 rule, the additional 20% of the properties should be added in a profile.

Implementation Guide is a set of rules of how a particular problem is solved typically through the useof FHIR resources. It consists of Structural Definitions for the resources we want to restrict.

Extending and restricting resources (collectively known as "profiling") is done with a “Structure Definition” resource, which is a statement of rules about how the elements in a resource are used, and where extensions are used in a resource.

Structural Definition Profile of Colonoscopy (Only a part is displayed)

So, this brings us to the end of the article on introduction to FHIR.

This is the first of a series of articles which will be published in the future.