Mobile app: (Patient)
I’ve developed an android mobile application which you can register, login, enter your personal information, enter your blood pressure factors, heart rate, and blood sugar. In addition I’ve considered a place which the user by pressing a button will download the doctor’s prescription, to say how many times a day/week/month or … the patient (mobile app user) has to enter which of those factors mentioned above. Moreover the database connected to this app is working independently.
On the other hand, I want to develop a web application which is under doctor authority , and the doctor may create a patient, assign prescription, and validate the data came from the mobile application. Moreover the database connected to this web app has its own structure and is working independently.
Now, the most important part is to exchange information between these two platforms (web app and mobile app) using HL7 Standards, particularly FHIR.
So far I have found an open source app , named Mirth Connect, which is designed to support HL7 Messaging systems. I also found out to create the HL7 FHIR Message I can use HAPI libraries.
But I am really confused of how should I use this Mirth to achieve my goal? can it be my solution to make those two platform HL7 Interoperable?
I would appreciate your notes and comments in case you have even a little experience using this mirth connect FHIR .
The first thing to determine is which data are those that are exchanged between the two applications, if you developed the two applications I’m not so sure if you need to implement interoperability as it could make an integration between the two applications developed by you, as you know the flow and structure of both applications. The scenario changes if you want these applications to interoperate with third-party applications. If you want your applications to interoperate, you need to have an OID, for Italy can see it here: http://www.hl7italia.it/node/34
If your choice is to interoperate, you should decide what type of messaging applications will support, for this you must know what is “Patient Administration Management” (PAM), this can be found in Chapter 3 of the HL7 standard, there is a reference here: http://wiki.ihe.net/index.php/Patient_Administration_Management
On tools: I used Mirth Connect, this would be the least costly implementation effort as Mirth put a Middleware which is part of the processing. HAPI forces you to do development on the application, in this case lets you create HAPI HL7 natively support from their applications Mirth is an intermediate in the workflow.
FHIR is still in testing phase, it is not entirely adopted, but can test it and let your application with a “planned” to consume resources through FHIR.
First off and most importantly, you need to be very careful about your terminology here. There are several HL7 standards, FHIR being one (the latest, and the one being actively developed). Another one is HL7 Messaging System v2, which is extremely widely used. The two are quite different, and if you confuse them things are going to get messy.
Case in point: So far I have found an open source app , named Mirth Connect, which is designed to support HL7 Messaging systems. I also found out to create the HL7 FHIR Message I can use HAPI libraries
FHIR Messages are not part of the HL7 messaging system.
As far as your actual question goes, it depends on what you mean by the databases being independent. If you’re trying to interface with an existing database that uses a non-FHIR standard, Mirth Connect might be the way to go – I’d imagine this somewhere in your data access layer, although I don’t know that much about Mirth. However, if the databases are new and you have control over their structure, I don’t see why Mirth would be necessary. To my understanding, it’s there to translate between different standards (such as HL7 Messaging System and HL7 FHIR, although last I checked their support for FHIR was in beta). If you’re using FHIR on both ends, there’s nothing to translate.
For FHIR, the HAPI libraries are the way to go with Java/Android. FHIR consists of both a data model and a REST API standard, and HAPI supports both. I’m not sure exactly how you want your web app and mobile app to communicate, but an easy way to handle this would be to have the web app expose a FHIR REST API for the resources and operations you’d need using the HAPI server library and have your mobile app work with it using the HAPI client library. The SMART on FHIR specification will help you with authentication/authorization.