Skip to content

HL7-FAST/national-directory

Repository files navigation

NDH Reference Implementation

This is a FHIR server reference implementation of the National Directory IG. It is built on the HAPI FHIR JPA Starter Project project and more detailed configuration information can be found in that repository.

Prerequisites

Building and running the server locally requires either Docker or

  • Java 17+
  • Maven

Foundry

A live demo is hosted by HL7 FHIR Foundry, where you may also download curated configurations to run yourself.

Building and Running the Server

There are multiple ways to build and run the server locally. By default, the server's base FHIR endpoint will be available at http://localhost:8080/fhir

Using Maven

mvn spring-boot:run

or

mvn -Pjetty spring-boot:run

Using Docker

docker compose up -d

Custom Operations

The reference implementation includes two custom operations to handle resource attestation and resource verification. These operations are not defined in the NDH IG.

$attest Operation

The $attest operation currently marks existing resource(s) as attested. In this RI, resources are considered unattested if they include the following in their meta.security property:

{
  "system": "http://terminology.hl7.org/CodeSystem/v3-Confidentiality",
  "code": "V"
}

The operation expects a FHIR Parameters body with the following structure that contains references to which resources should be marked as attested:

POST [fhir base]/$attest
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "resource",
      "valueReference": {
        "reference": "Practitioner/123"
      }
    }
  ]
}

The output of the operation is an OperationOutcome.

$verify Operation

The $verify operation will mark a resource as verified by updating its NDH Verification Status extension.

The operation expects a FHIR Parameters body with the following structure that contains references to which resources should be marked as verified and providing the "who" that is verifying the resource:

POST [fhir base]/$verify
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "verification",
      "part": [
        {
          "name": "target",
          "valueReference": {
            "reference": "Practitioner/123"
          }
        },
        {
          "name": "attestor",
          "valueReference": {
            "reference": "Organization/Hospital1"
          }
        }
      ]
    }
  ]
}

Postman Collection

A basic Postman collection that demonstrates creating a new Practitioner, marking it as attested, and verifying it is available in the ndh.postman_collection.json file.

Questions and Contributions

Questions about the project can be asked in the US National Directory stream on the FHIR Zulip Chat.

This project welcomes Pull Requests. Any issues identified with the RI should be submitted via the GitHub issue tracker.

As of October 1, 2022, The Lantana Consulting Group is responsible for the management and maintenance of this Reference Implementation. In addition to posting on FHIR Zulip Chat channel mentioned above you can contact Corey Spears for questions or requests.

About

FAST National Directory Reference Implementation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages