mapping concepts to each other

Dear @akanter, @judy and @burke :slight_smile:

I am trying to keep the GitHub - openmrs/openmrs-module-radiology: OpenMRS Radiology Module order entry close to what IHE specifies in their Radiology Technical Framework - Scheduled Workflow.

see RAD TF Volume 1 - 3.4.2 Scheduled Workflow Concepts in Practice

So the model they propose (including an example of a placed order) looks like the following:

This should enable these scenarios:

  • in implementation A ordering clinicians place orders with orderables that are equal to the imaging procedure being done. So ordering clinician places Chest X-Ray
  • in implementation B ordering clinicians place orders with orderables like R/O Pulmonary Embolism which maps to imaging procedures like Chest X-Ray & NM Ventilation Perfusion (its like a boundary between departments where the imaging department defines how orders are executed in detail)

What I would like to achieve:

  • an implementation should be able to define either if they are an implementation of type A or B.
  • in both cases they should be able to configure a set of orderable concepts (thinking about a concept class)
  • if they are of type B they should be able to configure mappings between the orderable concepts and the concepts representing the imaging procedures (shown under requested procedure in the image), which in turn should be mapped to concepts (representing scheduled procedures)

Im trying to figure out how to implement such mappings between concepts and if there is already something similar in place somewhere.

I would be very grateful for a little guidance :slight_smile:

Am I on the right track with openmrs-core/BaseConceptMap.java at 2.0.x · openmrs/openmrs-core · GitHub

so for example if I would create the relationships between RadiologyOrder.concept and a RequestedProcedure.concept using a custom BaseConceptMap ?

PS: maybe I should start small, this feels like a huge task :slight_smile: by implementing mappings between the order.concept → concepts representing the scheduled procedure and extend that later

1 Like

First, you have to understand that not all procedures are the same. The concept for something that gets scheduled is different from what gets ordered, which is different from what gets performed, which is different from what gets resulted and finally what gets billed.

Those relationships should be defined within the terminology service.

The reason a procedure gets performed is not “R/O xxxx”. The real reason is “Shortness of Breath”. You can have a guideline for “Pulmonary Embolism” which includes a series of potential diagnostic and therapeutic interventions, but a given indication like Shortness of Breath might actually rule in or out, pneumonia, asthma, PE, etc.

I think whether a procedure/imaging concept is orderable, performable, resultable, etc. is a flag, not a category.

1 Like