HIV Case-Based Surveillance
0.2.0 - CI Build International flag

HIV Case-Based Surveillance, published by Jembi Health Systems. This is not an authorized publication; it is the continuous build for version 0.2.0). This version is based on the current content of https://github.com/openhie/HIV-CBS and changes regularly. See the Directory of published versions

Deployment & Use

Introduction

This implementation guide provides a framework which can be adopted to ensure messaging standards and compliance among implementers. In other words, this is a governing framework that issues messaging requirements (allowed codes and code systems), specifies the minimum required data elements per FHIR resource and also has control over which data elements are mandatory.

Systems must be able to talk the same language otherwise important information will be lost...

Prerequisites

When preparing for the development of an implementation guide, the following key tasks will be essential.

  1. Define a minimum dataset (MDS): Identify the informational requirements for specific use cases. I.e., what data elements are needed by the EMR and lab systems to be interoperable with regards to data availability?
  2. Map the MDS fields to FHIR elements: Identify the appropriate FHIR resources and their data elements and establish a mapping with the MDS data elements.

Development Dependencies

The following will need to be installed on your machine to support the development and testing of an implementation guide.

  1. GitHub Desktop
  2. Visual Studio Code: A code editor.
  3. NodeJS: A Runtime environment.
  4. Sushi: Enables FHIR shorthand which greatly reduces the complexities associated with implementation guide development.

    • Mitre has created an excellent reference article for the purpose of exploring and understanding Sushi. It is highly recommended that beginners carefully consult this great resource to assist with the development of an implementation guide.
  5. Java: A platform used for the development and running of Java applications.
  6. Jekyll: A static-site generator that allows for quick command line control over setup, deployment, and content management.

Getting Started

You will need to create a new repository for the implementation guide project in the OpenHIE.

  • The OpenHIE Github space only permits authorized accounts to create new implementation guides.
  • Assistance may be required by the OpenHIE community to assist with the process of getting an implementation guide published.

Follow these steps to create a new implementation guide repository in OpenHIE.

  1. In the OpenHIE space in Github, click on the repositories tab.
  2. Click on the button "New repository".
  3. Select the custom template as shown below.

    OpenHIE Implementation Guide Template
    OpenHIE Implementation Guide Template


    If preferred, you can keep the repo private until the point of the implementation guide being stable and complete and then make it public.

    • The aforementioned template is already packaged with Sushi.
    • Continuous integration is already configured into the build and deployment process.
  4. Using GitHub Desktop, clone the implementation guide repository.
  5. Create a new branch.

    • Never edit master directly as this will lead to merge conflicts...especially when there are multiple contributors.
  6. Install HAPI FHIR

Testing & Validation

The following easy steps offer some guidance in regards to the deployment and testing of an implementation guide on your local machine.

  1. When executing the build and deployment of the implementation guide for the very first time, you will need to execute the following command.

    • ./_updatePublisher.sh
  2. Execute the following command to build and deploy the implementation guide.

    • ./_genonce.sh

The ./_genonce.sh command creates a folder in the root of the project repository titled "output". This folder contains all artifacts for the implementation guide which also enables an implementer to view the HTML output locally before deploying to a public facing server.

When it comes to validating the implementation guide, simply launch the file "output\qa.html" and view its contents. It will inform you of any warnings and errors found in the implementation guide specification.

  • The output\qa.html report is a critical tool to inform quality and correctness of an implementation guide!
  • The implementation guide must be free of all errors!
  • There may be a need to silence unnecessary warnings. Follow the instructions in the file "ignoreWarnings.txt".

Please use Postman to facilitate the process of submitting message requests to your local HAPI FHIR instance. For more information around the benefits and use of the Postman tool, please visit the messaging & testing section in the home page.