This wiki has undergone a migration to Confluence found Here
Using rxNorm with FHIR
Introduction
On this page, all the rules & semantics for using RxNorm with FHIR are defined.
All of these are defined in terms of the default RxNorm database created (after fixes!) by the scripts provided with RxNorm
Basics
- Namespace is http://www.nlm.nih.gov/research/umls/rxnorm
- both CUIs and AUIs are valid in this namespace
- The display name is
select Str from rxnconso where RXAUI = :code or (RXCUI = :code and SAB = 'RXNORM')
Filter properties
to make the SQL filters work, the base SQL depends on whether CUI or AUI or both are in scope (depending on Identifier Type filter)
Select RXCUI from rxnconso where SAB = 'RXNORM'
or if AUI are in the value set:
Select RXCUI, RXAUI from rxnconso where
RXCUI duplicates will have to be filtered out
Description | Property Name | Property Operators | Value | Comments | SQL for CUI | SQL for AUI |
---|---|---|---|---|---|---|
Identifier Type | UIType | = | CUI or AUI | which kind of identifier (default is both) | n/a | |
Semantic Type | STY | in/= | [COL:]Value | default column is TUI | and RXCUI in (select RXCUI from rxnsty where [COL] = :value) | |
Source | SAB | in/= | Value | value comes from (select RSAB from rxnsab) (e.g. source = RXNORM) - but is this redundant? | and RXCUI in (select RXCUI from rxnconso where SAB = :value) | |
Term Type | TTY | in/= | Value | value of TTY column in rxnconso | and TTY = :value | |
Contains | contains | in/= | Value | Value is either URI of value set, or a RXCUI or RXAUI | and (RXCUI in (select RXCUI from rxnconso where RXAUI in (select RXAUI1 from rxnrel where RELA = 'contains' and RXAUI2 = :value)) or RXCUI in (select RXCUI1 from rxnrel where RELA = 'contains' and RXCUI2 = :value))
|