Structured conditions for medication

Hello community,

I have a use case of a “Medication order” template where I should store - in a structured way - conditions under which a medication should be administered. Ideally, I am able to persist

  1. The (vital) parameter that should be compared
  2. The comparison operator
  3. The quantity or range of quantity
  4. A logical operator (AND/OR) to connect multiple conditionals

Examples could be:

  • “Administer this medication if systolic BP is between 140 and 160”
  • “Administer this medication if pulse is below X AND blood pressure is below Y”
  • “Administer this medication if body temperature is above 38°C OR patient has headache” —> parameters without a clear quantity may be possible

How could I go about modeling this?

I did not find good elements in the archetypes that are already in the medication order template (INSTRUCTION.medication_order.v3, CLUSTER.therapeutic_direction.v1, CLUSTER.dosage.v2, CLUSTER.timing_daily.v1). The elements CLUSTER.timing_daily.v1/‘As required’ criterion and INSTRUCTION.medication_order.v3/Clinical indication are DV_TEXT and not for structured data.

The Slot “Additional details” in CLUSTER.dosage.v2 suggests using CLUSTER.conditional_medication_rules.v0, which may be the closest available option. I could make a specialisation of it to include a DV_TEXT/DV_CODED_TEXT for the parameter name (maybe even referring to the template ID or archetype ID of the parameter in our system?), and something else for the logic operator. For the logics, I have no good idea at the moment how to model complex combinations of conditions (if that would be a requirement).

What is your opinion on this? Any other suggestions?

2 Likes

We always recognised that this was going to be a very tricky area, since very quickly it goes from quite simple conditions to highly complex scenarios which merge quite closely with decision support and task rules. For that reason the conditional cluster was left very primitive.

Making computable statements safe , will I think be very, very difficult
see related FHIR discussion Dosage - FHIR v6.0.0-ballot3

Interestingly not really much there for your use case. There are probably more ideas in GDL and Task planning to draw on but I fear you are very much pioneering here!! Good luck :slight_smile: