Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Users can create own handlers and register them with using Spring framework for the module in order to use them. But they have the flexibility of designing how to store/map a FHIR DiagnosticReport into OpenMRS data structures. In Radiology Service Handler, it's using Encounter as the main type to store the metadata of a DiagnosticReport. Then other FHIR resource fields are stored as OpenMRS Encounter properties and OpenMRS Obs. In order to store multiple Obs, it's using OpenMRS Obs Groups which use tree structure to store multiple Obs.

Workflow

Radiology Service handler is handling incoming request in a different manner. When I get a GET request, first it'll search for matching resource in the OpenMRS storage. If it's not able to find the given resource, then OpenMRS FHIR module will make client request to a specified external FHIR server and store received matching FHIR DiagnosticReports in  OpenMRS storage and response back to the user with received FHIR DiagnosticReports.

FHIR DiagnosticReport Mapping

ServiceCatogory > EncounterType

...