timsbiomed / issues

TIMS issue tracker.
https://github.com/orgs/timsbiomed/projects/9/views/1
1 stars 0 forks source link

RxNorm - Concepts #71

Open chrisroederucdenver opened 1 year ago

chrisroederucdenver commented 1 year ago

RxNorm - Concepts (1 o n): Establish a converter and load concepts, at least ingredients and drugs.

GENERAL NOTES: A common use-case in RWD and in general, is to query for patients that have been administered certain drugs. RxNorm is a vocabulary structured much like UMLS and can be downloaded there. FHIR may complicate things a bit because resources that would record the administration, like MedicationAdministration refer to Medication and CodeableConcept. So there's some depth yet to figure out.

The picture I have for now is that a user identifies an ingredient of interest and defines a ValueSet of all formulations that include it, then use the expanded ValueSet to query for MedicationAdnimistrations and related Patients.

Ideally, even with a ridiculously small test set of data, we'd be able to show the scenario. More realistically, having an understanding of the RxNorm data and how it fits into FHIR and the described queries would be enable us to discuss it intelligently. Note that this suggests concepts for two kinds of things, both formulations and ingredients, and the ability, within FHIR, to specify an ingredient and get a list of formulations/medications back. It might be as simple as populating properties called "contains" that map from drugs to ingredients and then using $find-matches with the ingredient of interest to find drugs that supply it.

This HAPI extension might be of interest, esp. regarding the Medication* resources: https://github.com/leonghui/RxNormToFHIR

also https://fhir-ru.github.io/rxnorm.html#4.3.2.4 has interesting comments in general and some about licensing.

ALSO, word is that RxNorm is available from bioportal in SKOS turtle form.

Chris Chute and Davera informed us that there are in fact three levels at the drug level: Therapeutic Use as a class of ingredients, then drugs or pills that are composed of ingredients.

chrisroederucdenver commented 1 year ago

Cheap RxNorm is up. I have one vocabulary for drugs, RXNORM and another for ingredients, RXNORMI. Each of these come out of the RXNCONSO.RRF file. One is the PSN, prescribable name for the drugs, the other is IN on the TTY, type field for ingredients. Loaded using CSV files, so no Xref between drugs and ingredients which is really needed to build value sets of drugs by the ingredient in them . (drugs, pills, formulations).

Take entresto for example. It's a pill that combines ingredients valsartan and sacubitril in various strengths. sacubutril is the NI in ARNI, a neprilysin inhibitor, and valsartan is the AR. Pharmacists studying what is being prescribed from a hospital organized their data by ingredient, and often it's the pills that are prescribed and recorded. There are a number of types of concepts in RxNorm, and to make this the most useful, we should run the plan past a pharmacist after having developed some familiarity with the types of concepts in RxNorm.

The [UMLS page on RxNorm](# https://www.nlm.nih.gov/research/umls/rxnorm/overview.html#:~:text=In%20addition%20to%20the%20fully,form%20%2F%20ingredient%20%2B%20dose%20form%20group) is good.

They went in with these names and urls: id: 11194 url: http://purl.bioontology.org/ontology/RXNORM name: RxNorm title: undefined code:"SUBSETTED"

id: 11195 url: http://purl.bioontology.org/ontology/RXNORMI name: RxNormI title: undefined code:"SUBSETTED"

UI and alternate, "Chris" server on Azure are both updated. I'll update the docs as work on a non-cheap, real version progresses.