You are currently viewing NHAPI to parse HL7 messages

NHAPI to parse HL7 messages

  • Post published:December 4, 2013

vteams #414 is working on a healthcare application. Our Client’s application provides functionality to decode HL7 Messages. The module which parses HL7 messages format uses a 3rd party library named NHAPI V2.3 (assembly version 2.3).


NHPI has one core library named ‘NHAPI.Base.dll’ which provides core components for parsing/encoding HL7 messages.Other assemblies are nHAPI.Model.V21, nHAPIModel.V22.dll, nHAPI.Model.23.dll,nHAPI.Model.24.dll and nHAPI.Model.25.dll which contain data types, segments, and messages that follow different HL7 schemas.

 Client Requirement:

Application must be able to parse HL7 message which follow HL7 2.2 schema.

Required Libraries:

To achieve this goal two libraries NHAPI.Base.dll and NHAPI.Model.V22.dll were required and both must have same assembly version. One provides core functionalities for parsing message while other provides functionality to parse HL7 message which follow HL7 2.2 schema.


Client was using NHAPI.Base.dll version 2.3 (assembly version 2.3). But NHAPIModel.V22.dll (For Message format HL72.2 Schema and assembly version 2.3) was missing which is necessary to parse HL7messages following HL7 2.2 schema.

Programmer searched and spent good amount of time to find this library on the internet but could not find NHAPI.Base.Model.V22.dll (For Message format HL72.2 Schema and assembly version 2.3). There were only two complete versions of NHAPI.Base.dll V2.0 or NHAPI.Base.dll V2.4 was available which had all the required libraries.


Proposed solution must work under .Net Framework 3.5 because Client’s application was running under .Net Framework 3.5.

Problem Resolution

Following possible solutions were discussed and second option (downgrading of NHAPI) was implemented in our case.

  1. Upgrade base library (NHAPI.Base.dll) to assembly version 2.4.(Runs under .Net Framework 4)
  2. Downgrade base library (NHAPI.Base.dll) to assembly version 2.0.(Runs under .Net Framework 3.5)

It was suggested by vteam #414 to Client to upgrade NHAPI library to use latest available version but it was not feasible for him to upgrade .Net framework of complete application, therefore NHAPI (assembly version 2.0) was utilized to parse HL7 messages following HL7 2.2 schema.