FHIR Engine Library
The FHIR Engine Library is a Kotlin library that makes it easy to manage FHIR resources on Android and synchronize them with FHIR servers.
Today, there are a growing number of tools and software libraries supporting the use of FHIR on various platforms. However, developer support for FHIR on Android is still lacking. Typically, Android healthcare applications still use proprietary data models, and as a result, suffer from a lack of interoperability. The FHIR Engine Library addresses this problem by provding a set of APIs to help manage FHIR resources on Android, allowing easier integration with other software systems using FHIR.
FHIR Engine Library components
The FHIR Engine library comprises an SQLLite database for offline storage of FHIR Resources and a suite of APIs (sync, search, data-access) for managing FHIR resources on the device.
Local db for offline storage of FHIR resources
- The backbone of the FHIR Engine Library is the SQLite database storing FHIR resources in serialized JSON format
- Data stored in the on device storage is stored securely
- The database has indexes for enabling fast retrieval of resources based on FHIR Search
FHIR Engine APIs
- Data Access API: basic access to local FHIR resources, namely, the CRUD operations: create, read, update, and delete. This relies on the HAPI FHIR Structures libraries (api docs | documentation)
- Search API: a Kotlin DSL (domain-specific language) for searching local FHIR resources
- Sync API: synchronizes local FHIR resources with a remote FHIR server/store (such as HAPI FHIR or Google Cloud Healthcare API)