FHIR Chat · Compound Medications · Medication

Stream: Medication

Topic: Compound Medications


view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:01):

Hi there,
NCPDP is a standard for medication dispenses we pull from outpatient pharmacies. We want to encode this data back into FHIR format properly. We’ve done so for “normal” medications already.
Compound medications are trickier. We see something like this:

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:07):

CompoundMed.xml

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:08):

In order to represent the compounded medication, we must use the FHIR Medication resource as a contained resource. Here’s an example compounded Medication:

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:08):

{ "resourceType": "Medication", "id": "med0319", "text": { "status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: med0319</p><p><b>form</b>: Ointment <span>(Details : {SNOMED CT code '385101003' = 'Ointment', given as 'Ointment'})</span></p><blockquote><p><b>ingredient</b></p><p><b>item</b>: Salicyclic Acid (substance) <span>(Details : {SNOMED CT code '387253001' = 'Salicylic acid', given as 'Salicyclic Acid (substance)'})</span></p><p><b>strength</b>: 5 g<span> (Details: UCUM code g = 'g')</span>/100 g<span> (Details: UCUM code g = 'g')</span></p></blockquote><blockquote><p><b>ingredient</b></p><p><b>item</b>: Hydrocortisone (substance) <span>(Details : {SNOMED CT code '396458002' = 'Hydrocortisone', given as 'Hydrocortisone (substance)'})</span></p><p><b>strength</b>: 1 g<span> (Details: UCUM code g = 'g')</span>/100 g<span> (Details: UCUM code g = 'g')</span></p></blockquote><blockquote><p><b>ingredient</b></p><p><b>item</b>: White Petrolatum (substance) <span>(Details : {SNOMED CT code '126066007' = 'White petroleum', given as 'White Petrolatum (substance)'})</span></p><p><b>strength</b>: 94 g<span> (Details: UCUM code g = 'g')</span>/100 g<span> (Details: UCUM code g = 'g')</span></p></blockquote></div>" }, "form": { "coding": [ { "system": "http://snomed.info/sct", "code": "385101003", "display": "Ointment" } ], "text": "Ointment" }, "ingredient": [ { "itemCodeableConcept": { "coding": [ { "system": "http://snomed.info/sct", "code": "387253001", "display": "Salicyclic Acid (substance)" } ] }, "strength": { "numerator": { "value": 5, "system": "http://unitsofmeasure.org", "code": "g" }, "denominator": { "value": 100, "system": "http://unitsofmeasure.org", "code": "g" } } }, { "itemCodeableConcept": { "coding": [ { "system": "http://snomed.info/sct", "code": "396458002", "display": "Hydrocortisone (substance)" } ] }, "strength": { "numerator": { "value": 1, "system": "http://unitsofmeasure.org", "code": "g" }, "denominator": { "value": 100, "system": "http://unitsofmeasure.org", "code": "g" } } }, { "itemCodeableConcept": { "coding": [ { "system": "http://snomed.info/sct", "code": "126066007", "display": "White Petrolatum (substance)" } ] }, "strength": { "numerator": { "value": 94, "system": "http://unitsofmeasure.org", "code": "g" }, "denominator": { "value": 100, "system": "http://unitsofmeasure.org", "code": "g" } } } ] }

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:09):

It’s not clear how we map the quantity into the Medication. For instance, this:

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:09):

                   <CompoundIngredientsLotNotUsed>
                        <CompoundIngredient>
                            <CompoundIngredientItemDescription>PLO flowable Pluronic Lecithin Organogel</CompoundIngredientItemDescription>
                            <ItemNumber>
                                <Code>00395013501</Code>
                                <Qualifier>ND</Qualifier>
                            </ItemNumber>
                        </CompoundIngredient>
                        <Quantity>
                            <Value>82.9</Value>
                            <CodeListQualifier>87</CodeListQualifier>
                            <QuantityUnitOfMeasure>
                                <Code>C48155</Code>
                            </QuantityUnitOfMeasure>
                        </Quantity>
                    </CompoundIngredientsLotNotUsed>

view this post on Zulip Brendan Keeler (Feb 15 2022 at 16:10):

Seems to say that 82.9 grams (C48155 stands for grams) of PLO flowable Pluronic Lecithin Organogel were used, but that feels like an amount and not a strength.

view this post on Zulip Jean Duteau (Feb 15 2022 at 22:35):

Here are my comments:
0) The HL7 Pharmacy WG has been recently discussing how to represent mixtures like this so you might want to bring your examples to our next WG call (Mondays at 4pm eastern) where you can get more advice from members who don't regularly track Zulip, including a bunch of NCPDP members who also attend the HL7 meeting.
1) If I read your NCPDP example correctly, it is indicating that there is 5g Baclofen Powder, 0.075g Capcaicin Topical Lotion, 10g Ketoprofen Powder, 2g Tetracaine Topical Cream, and 82.9g PLO flowable Pluronic Lecithin Organogel to make up 100g of the overall product. Is that right?
2) Assuming so, all of those can be expressed as ratios - 5g / 100g, 0.075g / 100g, etc. Alternatively, the R5 version of the Medication does have the ability to just represent those as Quantities, so you can backport that into your resource via an extension, if you don't want to represent it as a ratio.

view this post on Zulip Brendan Keeler (Feb 15 2022 at 23:23):

Thanks @Jean Duteau ! Sounds like an extension might be the easiest path

view this post on Zulip Scott Robertson (Feb 18 2022 at 19:46):

To clarify the NCPDP SCRIPT example: the ingredient quantity is the amount of the ingredient contained in the finished product/quantity. Jean's interpretation is correct. There is an optional strength term for the ingredient which is used when the ingredient description/identifier does not imply a strength.

Rather than an extension, the strength could be populated as 5 mg / 1 (no UOM in the denominator) in R4.

view this post on Zulip Brendan Keeler (Feb 19 2022 at 15:10):

Oh that's an interesting solution


Last updated: Apr 12 2022 at 19:14 UTC