FHIR Medication Workflow

Hi all,

I’m about analyzing if an old existing non-FHIR medication workflow can be replaced by a FHIR Medication workflow in compliance with all legal medication safety regulations. I already checked all the medication resources and I got that there are a lot’s of steps which can be replaced.

But now I’ve a few questions:

  1. Is there a resource for barcode scans (for example for the scan of the barcode of a medicationplan)?

  2. If a patient comes to hospital and brings all his private medicaments with him, these medicaments should be replaced by internal hospital medicaments. Which FHIR resource / workflow should be used in this case?

  3. As I understand the FHIR medication workflow and resources there’s always only one medicament listed in one resource. So if I want a list of all medicaments the patient takes, I have to collect them into a bundle to get a whole medication plan? From this question results the next one:

  4. Is it possible to display a time beam like a calendar to see per day which medicaments the patient takes at which day? Like in this quick example: If I click to the next day in a time beam I would like to get the second list for the next day.

  1. If a product wants to go international and so can’t use the implementation guide of its country, how is the interoperability granted if there are different medication profiles?

Sorry for this amount of questions, but these are two difficult and important issues: FHIR and medication… :woozy_face:

Thanks in advance and regards.
Lisa

  1. A bar-code is just a visual representation of either a Coding or an Identifier. So typically, you scan with the scanner but actually transmit the number/string - in the appropriate element. If you actually need to transmit a picture of the barcode itself, you’d need to use an extension with a data type of Attachment

  2. Typically you’d capture a List of MedicationStatements reflecting “meds at admission”. The admitting physician and/or pharmacy would then create MedicationRequests to dispense the subset of those that were to be continued while admitted. In theory, if there was a shared patient record, the community MedicationRequests for the pre-existing medications could be ‘suspended’ for the duration of the inpatient admission and subsequently released on discharge to allow better monitoring of compliance. However, reality is that few places have that level of sophistication yet. If you want to track where the patient’s medication supply is stored while they’re admitted, that would typically be captured as an Observation

  3. You could have a ‘medication’ CarePlan that summarizes everything that’s going on if you wanted to, but typically you just have a collection of MedicationRequest and MedicationStatement instances. You either query for them or pass them around in a document.

  4. Sure. In fact, for inpatient, there’s a notion of “instance orders”, where you actually create a distinct MedicationRequest for each planned administration (and/or a Task for the administration). Those would be generated by the pharmacy and transmitted to the nursing station so that they understand what’s do when

  5. You’ll need to allow some customization from country to country as each country will use different terminologies for drugs and there may be slightly different regulatory expectations (e.g. who’s allowed to prescribe what, what drugs require prescriptions) as well as technical capabilities (e.g. is there a centrally managed formulary, centrally tracked drug utilization, etc.) That said, the base capabilities of your system should be able to be used most places - and there’ll be a lot less customization/adaption with FHIR than there would have been with prior standards.

Hey Lloyd,

thanks a lot for your answer. That helped me a lot.

  1. isn’t quite clear to me yet: Imagine I got my customized profiles and want to talk to other systems with different profiles (f.e. there’s an attribute which isn’t existing in my profile) how do I get the interoperability?
  • f.e. the element dosageInstruction in MedicationRequest isn’t important in my system so in my profile it’s disabled but for other systems it’s important then how do we get together with this different profiles?

You said I need to allow different customization from country to country. But how to do this?
Am I forced to use standard profiles or can I create the profiles like I wanted to have it and can communicate with all other systems easily?

No-one’s allowed to add new attributes, though they could introduce extensions you’re not familiar with. Most extensions are safe to ignore. Extensions that change the meaning of other elements must specifically be called out as “modifierExtensions”.

Profiles, in general, shouldn’t prohibit elements that could reasonably exist. They should just mark the elements as not-supported. A system can then send all elements that any recipient might support - and ensure that any elements considered ‘important’ for humans to know about are also mentioned in the narrative in case the discrete data isn’t supported by all recipients.