2nd DSTU Draft For Comment

This page is part of the FHIR Specification (v0.4.0: DSTU 2 Draft). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R4B R4 R3 R2

1.22.1.2 Using RxNorm with FHIR

1.22.1.2.1 Summary

SourceRxNorm is made available by the US National Library of Medicine at http://www.nlm.nih.gov/research/umls/rxnorm
SystemThe URI http://www.nlm.nih.gov/research/umls/rxnorm identifies the RxNorm code system
VersionWhere a version is used, it should be the date of release, encoded as in the download files, e.g. "07092014"
CodeThe code value for an RxNorm code is a Concept Identifier (CUI), and only CUIs for which there is an SAB=RXNORM
DisplayThe correct display for CUI is the String description for it associated with the source RXNORM
Filter PropertiesSeveral properties are defined as described below

1.22.1.2.2 RxNorm MySQL Database

The RxNorm scripts are able to populate a MySQL database that contains the data from RxNorm. This page provides SQL statements that describe how to implement the features of the RxNorm terminology correctly against this database. These are provided for implementer convenience, and do not imply that any particular approach be used in implementations.

For example, the correct display name for a CUI is 'Select STR from rxnconso where RXCUI = :code and SAB = 'RXNORM' and TTY <> 'SY'.

1.22.1.2.3 Copyright/License Issues

The use of RxNorm codes and display names in this specification is pursuant to HL7's status as a licensee of the NLM UMLS. This license does not convey the right to use RxNorm to any users of this specification; implementers must acquire a license to use RxNorm in their own right.

The license for RxNorm places restrictions on the distribution of the UMLS Metathesaurus or subsets of it. We are seeking a clarification of what constitutes a "subset of the metathesaurus" in order to make it clear what the status of an RxNorm value set is.

1.22.1.2.4 RxNorm Filter Properties

This section documents the property filters that can be used with the RxNorm code system in value set composition statements.

The base SQL statement for returning a list of CUIS that conform to these filters is:

  Select RXCUI from rxnconso where SAB = 'RXNORM' and TTY <> 'SY' 

1.22.1.2.4.1 Semantic Type

DescriptionAllows to choose a set of CUIs based on their Semantic Type
Property NameSTY
Operations Allowed= / in
Values Allowed[column:]value
CommentsIf not column is specified, the default column is TUI
SQL
and RXCUI in (select RXCUI from rxnsty where [:column] = :value)

1.22.1.2.4.2 Source

DescriptionAllows for selection of the set of concepts that have mappings to a particular rxnorm source
Property NameSAB
Operations Allowed= / in
Values AllowedValues from RxNorm SAB table (e.g. select RSAB from rxnsab)
SQL
and RXCUI in (select RXCUI from rxnconso where SAB = :value)

1.22.1.2.4.3 Term Type

DescriptionAllows for selection of a concept based on its designated type
Property NameTTY
Operations Allowed= / in
Values AllowedTTY values from the RxNorm Concept table (e.g. select distinct TTY from rxnconso)
SQL
and TTY = :value

1.22.1.2.4.4 Relationship

DescriptionAllows for selection of a concept based on its relationships
Property Name[REL]
Operations Allowed= / in
Values AllowedCUI:[RXCUI] or AUI:[RXAUI] must be a valid CUI or AUI. Note that a CUI does not need to have a SAB=RXNORM entry to be used here
Comments[REL] (:rel) is one of SY, SIB, RN, PAR, CHD, RB or RO
SQL for CUI:
and (RXCUI in (select RXCUI from rxnconso where RXCUI in (select RXCUI1 from rxnrel where REL = :rel and RXCUI2 = :value))
for AUI:
and (RXCUI in (select RXCUI from rxnconso where RXAUI in (select RXAUI1 from rxnrel where REL = :rel and RXAUI2 = :value))

1.22.1.2.4.5 Relationship Type

DescriptionAllows for selection of a concept based on the type of its relationships
Property Name[RELA]
Operations Allowed= / in
Values AllowedCUI:[RXCUI] or AUI:[RXAUI] must be a valid CUI or AUI. Note that a CUI does not need to have a SAB=RXNORM entry to be used here
Comments[RELA] (:rela) is one of the relationship types below
SQL for CUI:
and (RXCUI in (select RXCUI from rxnconso where RXCUI in (select RXCUI1 from rxnrel where RELA = :rel and RXCUI2 = :value))
for AUI:
and (RXCUI in (select RXCUI from rxnconso where RXAUI in (select RXAUI1 from rxnrel where RELA = :rel and RXAUI2 = :value))

Relationship Types

  • active_ingredient_of
  • active_metabolites_of
  • chemical_structure_of
  • consists_of
  • constitutes
  • contained_in
  • contains
  • contraindicated_with_disease
  • contraindicating_class_of
  • contraindicating_mechanism_of_action_of
  • contraindicating_physiologic_effect_of
  • doseformgroup_of
  • dose_form_of
  • effect_may_be_inhibited_by
  • entry_version_of
  • form_of
  • has_active_ingredient
  • has_active_metabolites
  • has_chemical_structure
  • has_contraindicated_drug
  • has_contraindicating_class
  • has_contraindicating_mechanism_of_action
  • has_contraindicating_physiologic_effect
  • has_doseformgroup
  • has_dose_form
  • has_entry_version
  • has_form
  • has_ingredient
  • has_ingredients
  • has_mechanism_of_action
  • has_member
  • has_part
  • has_participant
  • has_permuted_term
  • has_pharmacokinetics
  • has_physiologic_effect
  • has_precise_ingredient
  • has_print_name
  • has_product_component
  • has_quantified_form
  • has_sort_version
  • has_therapeutic_class
  • has_tradename
  • included_in
  • includes
  • induced_by
  • induces
  • ingredients_of
  • ingredient_of
  • inverse_isa
  • isa
  • mapped_from
  • mapped_to
  • may_be_diagnosed_by
  • may_be_prevented_by
  • may_be_treated_by
  • may_diagnose
  • may_inhibit_effect_of
  • may_prevent
  • may_treat
  • mechanism_of_action_of
  • member_of
  • metabolic_site_of
  • participates_in
  • part_of
  • permuted_term_of
  • pharmacokinetics_of
  • physiologic_effect_of
  • precise_ingredient_of
  • print_name_of
  • product_component_of
  • quantified_form_of
  • reformulated_to
  • reformulation_of
  • site_of_metabolism
  • sort_version_of
  • therapeutic_class_of
  • tradename_of

1.22.1.2.5 Implicit Value Sets

Implicit value sets are those whose specification can predicted based on the grammar of the underlying code system, and the known structure of the URL that refers to them. RxNorm does not (yet) have any defined implicit value sets.

The value set identifier http://www.nlm.nih.gov/research/umls/rxnorm/vs is a value set that contains all RxNorm CUIs.