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