Introduction
In a previous post, I wrote about the steps I followed to start working with HAPI FHIR.
In this post, we'll configure HAPI FHIR to store and install a FHIR Implementation Guide.
FHIR Implementation Guides
A FHIR Implementation Guide (IG) is a set of instructions for implementing the FHIR standard in a specific healthcare context.
HL7 Australia maintains several FHIR Implementation Guides, for example:
- AU Base
- AU Core
AU Base supports the use of HL7® FHIR®© in an Australian context.
AU Base defines Australian realm concepts (e.g., Medicare card number) as an additional set of options to what is available in the core FHIR standard, including extensions, terminology and identifiers.
AU Core defines the data model and RESTful API interactions that set minimum expectations for a system to record, update, search, and retrieve core digital health and administrative information.
AU Core uses AU Base representations, where available, as the basis for profiles that define the FHIR resources to be supported, and the elements, extensions, vocabularies, and value sets that SHALL be present are identified, and how they are used is defined. It also documents the minimum FHIR RESTful interactions for each resource type to access data.
Note: The AU Base and AU Core FHIR Implementation Guides are dependant on terminology (CodeSystems, ValueSets and ConceptMaps) that are not deployed as FHIR packages.
For example:
See: Sparked Development Terminology Server Specifications
HAPI FHIR
A FHIR Implementation Guide can be used to seed a FHIR data store, for example:
hapi:
fhir:
default_encoding: json
implementationguides:
au_core:
name: hl7.fhir.au.core
version: 1.0.0-preview
reloadExisting: false
installMode: STORE_AND_INSTALL
packageUrl: https://hl7.org.au/fhir/core/1.0.0-preview/package.tgz
fetchDependencies: true
logical_urls:
- http://hl7.org.au/*
See: hapi.application-fhir-au-core-1.0.0-preview.yaml
We also need to update the Docker Compose configuration file, as follows:
configs:
hapi:
file: ./hapi.application-fhir-au-core-1.0.0-preview.yaml
To build the project:
docker compose -f docker-compose-fhir-au.yml build
To create and start all the services in the configuration file:
docker compose -f docker-compose-fhir-au.yml up
Navigate to the Welcome page:
http://localhost:8080
You should see something like:
To stop the services:
docker compose -f docker-compose-fhir-au.yml stop
To remove the services:
docker compose -f docker-compose-fhir-au.yml down
To remove the data volume:
docker volume rm hapi-fhir-jpaserver-starter_postgres_data
To restart the services:
docker compose -f docker-compose-fhir-au.yml up
What's Next
In the next post, we'll take a look at some AU Core Test Data.
Source Code
Resources
- HAPI FHIR: Website
- HAPI FHIR: Documentation
- HL7: Implementation Guide
- HL7: FHIR NPM Packages
- AU Core: Publication (Version) History
- AU Core FHIR Implementation Guide: AU Core - 1.0.0-preview
- AU Core FHIR Implementation Guide: Testing FAQs
- Google Group: HAPI FHIR