22.9.1MDM Virtualized Endpoint
Experimental

 

If a FHIR Endpoint module is connected to a FHIR Storage (RDBMS) module which is MDM-enabled, it is possible to configure the FHIR Endpoint to be MDM Virtualized.

MDM virtualization attempts to create an endpoint that hides the complexity of the MDM implementation and the linked records, presenting a single unified view of the linked data. A simple example helps to explain this concept:

Suppose you have a FHIR repository with two patients (Patient/A and Patient/B) which are both linked to a golden record (Patient/G). You then have some Body Height Observations (LOINC code = 8302-2) in the repository, some of which are linked to the first patient and some of which are linked to the second.

In a standard non-virtualized endpoint, a search for Observation?code=http://loinc.org|8302 would return Observations referring to two separate patients. The onus is then on the client to determine that these patients are the same person.

In a virtualized endpoint, the subject element in each Observation is rewritten before being returned to the client so that it points to the golden record (Patient/G). This means that the client sees all data as belonging to a single Patient.

22.9.1.1Features

With MDM Virtualization enabled:

  • Queries are auto-expanded. This means that a search with a patient or subject parameter will be automatically widened to include any linked and golden resources. So, using the example above, a search for Observation?subject=Patient/A would be automatically widened to be processed as 'Observation?subject=Patient/A,Patient/B,Patient/G'.
  • References to Patient resources are rewritten to point to the golden resource
  • If the search result includes the actual patient (e.g. Observation?_include=Observation:subject) the patient is replaced with the golden record patient.

22.9.2Architecture

 

The following diagram shows the architecture of the virtualized endpoint.

Architecture

22.9.2.1Limitations

This setting is only possible when using a FHIR Storage (RDBMS) module.