documentation:international_drugs
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| documentation:international_drugs [2019/07/19 13:08] – [Table] ekorchmar | documentation:international_drugs [2024/09/02 12:35] (current) – Depreciation of page and posting of corresponding link in Github wiki jcruz | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== RxNorm Extension - an OHDSI resource to represent international drugs ===== | ===== RxNorm Extension - an OHDSI resource to represent international drugs ===== | ||
| - | The purpose of this document is to define the process, rules and resulting structure of incorporating international drug vocabularies into an overall RxNorm-like system, called RxNorm Extension. | + | Thank you for visiting |
| - | + | ||
| - | Drug vocabularies contain drug products and their components. Only about a third of these products are identical in the drug markets of individual countries or jurisdictions of a drug marketing approval agency. Even if the active ingredients are the same, they can differ in their Drug Strengths, Drug Forms, Brand Names, package sizes and manufacturers or distributors. | + | |
| - | + | ||
| - | Therefore, these vocabularies need to be incorporated into the existing Drug Domain in such a way that all existing drugs and their components are correctly mapped, and the missing ones added as new concepts. This includes a life cycle for each Concept, allowing to generation, deprecation and update over time. | + | |
| - | + | ||
| - | The processing script that follows these instructions can be found [[https:// | + | |
| - | + | ||
| - | ==== General structure ==== | + | |
| - | The Drug Domain should be organized in a hierarchical structure described [[documentation: | + | |
| - | + | ||
| - | This structure contains at a minimum (from bottom to top): | + | |
| - | + | ||
| - | ^ Concept Class ^ Composed of ^ | + | |
| - | | Branded Drug | Ingredients, | + | |
| - | | Clinical Drug | Ingredient, their strength, form | | + | |
| - | | Branded Drug Form | Ingredient, form, brand name | | + | |
| - | | Clinical Drug Form | Ingredient, form | | + | |
| - | | Branded Drug Component | + | |
| - | | Clinical Drug Component | + | |
| - | | Dose Form | Form | | + | |
| - | | Brand Name | Brand name | | + | |
| - | | Ingredient | + | |
| - | | Drug Class | Drug class | | + | |
| - | + | ||
| - | It may optionally contain | + | |
| - | ^ Concept Class ^ Composed of ^ | + | |
| - | | Marketed Product | + | |
| - | | Quantified Branded Drug Box | Ingredients, | + | |
| - | | Quantified Clinical Drug Box | Ingredients, | + | |
| - | | Branded Drug Box | Ingredients, | + | |
| - | | Clinical Drug Box | Ingredients, | + | |
| - | | Quantified Branded Drug | Ingredients, | + | |
| - | | Quantified Clinical Drug | Ingredients, | + | |
| - | | Branded Pack | Branded Drugs, their number (box size is optional) | + | |
| - | | Clinical Pack | Clinical Drugs, their number (box size is optional) | + | |
| - | | Supplier | + | |
| - | + | ||
| - | Currently not supported in the Standardized Vocabularies: | + | |
| - | ^Concept Class^Composed of^Note^ | + | |
| - | |Precise Ingredient|Ingredient|Ingredient used instead| | + | |
| - | |Multiple Ingredient|Ingredients|Single ingredients used instead| | + | |
| - | |Dose Form Group|Dose Form|Explicit Dose Forms used instead| | + | |
| - | + | ||
| - | The Concepts are connected through hierarchical and lateral relationships. | + | |
| - | + | ||
| - | ==== Combined target structure ==== | + | |
| - | To incorporate a new set of drug information, | + | |
| - | + | ||
| - | In order to achieve this, any two equivalent Concepts have to be matched through its components: Ingredients to Ingredients, | + | |
| - | + | ||
| - | ==== Rules for adding Concepts ==== | + | |
| - | To add a Concept for which there is an existing equivalent: | + | |
| - | + | ||
| - | * It should be recorded as a non-standard (source) Concept. | + | |
| - | * It should be mapped through a "Maps to" relationship to its standard equivalent. | + | |
| - | * All other relationships are optional and for QA and convenience. The standard Concept will take its place as the official representation. | + | |
| - | + | ||
| - | To add a Concept that does not have an equivalent: | + | |
| - | + | ||
| - | * It should be recorded as a standard Concept (standard_concept = ' | + | |
| - | * It should have hierarchical and lateral relationships in the same manner as RxNorm Concepts do. | + | |
| - | * It should form relationship to relevant drug classes. The relationship_id of these relationship do not have to follow the RxNorm standard, as it differs for every drug class. Classes are most often defined for Ingredients, | + | |
| - | + | ||
| - | Units used in the strength determination are not added. They must be mapped to a Standard UCUM Concept instead. If a unit is not present in the UCUM vocabulary it has to be added. | + | |
| - | + | ||
| - | ==== Challenges and problems ==== | + | |
| - | To implement a tool to create and maintain the above structure, a number of issues need to be taken care of: | + | |
| - | + | ||
| - | * **Excipients: | + | |
| - | * **Forms:** These are not used the same way across drug vocabularies. For example, RxNorm has a Form " | + | |
| - | * **Strength: | + | |
| - | * **Ingredient forms:** Ingredients might have ambiguous chemical forms, which RxNorm calls " | + | |
| - | + | ||
| - | + | ||
| - | ==== Implementation ==== | + | |
| - | === 1. Registering a new drug vocabulary === | + | |
| - | + | ||
| - | If a drug vocabulary gets added for the first time, it needs to get listed in the VOCABULARY table. | + | |
| - | + | ||
| - | === 2. Creation of input tables === | + | |
| - | The new vocabulary should be prepared in the following tables: | + | |
| - | + | ||
| - | **DRUG_CONCEPT_STAGE** | + | |
| - | + | ||
| - | ^ Field ^ Required | + | |
| - | | concept_name | + | |
| - | | domain_id | + | |
| - | | vocabulary_id | + | |
| - | | concept_class_id | + | |
| - | | concept_code | + | |
| - | | source_concept_class_id | + | |
| - | | possible_excipient | + | |
| - | | valid_start_date | + | |
| - | | valid_end_date | + | |
| - | | invalid_reason | + | |
| - | + | ||
| - | This table is expected to contain as a minimum the comprehensive list of Concept Classes: | + | |
| - | + | ||
| - | * Drug Product (Branded Drug, Clinical Drug, Marketed Product etc.) | + | |
| - | * Form | + | |
| - | * Brand Name | + | |
| - | * Ingredient | + | |
| - | * Unit | + | |
| - | * Supplier | + | |
| - | * Device (for source conccepts falling outside of Drug cathegory) | + | |
| - | + | ||
| - | It may contain Branded or Clinical Drug Forms or Components, but if not they will be derived (see below). Note that units should not have their own concept in the DRUG_CONCEPT_STAGE table. Instead, they should be used as verbatim. If the precise Concept Class is not known, it can be included as "Drug Product" | + | |
| - | + | ||
| - | Concepts that belong to the source vocabulary, but do not belong to Drug domain by OMOP rules., should be classified as ' | + | |
| - | * Radiographic contrasts and dyes (barium sulfate, radiolabeled iodides) | + | |
| - | * Nutritional supplements without stated mechanism of pharmaceutical action (e.g. herbal complexes, homeopathic preparations) | + | |
| - | * Formulas for infant feeding | + | |
| - | * Parenteral nutrition (aminoacids and/or lipid mixes) | + | |
| - | * Solution for dialysis, catheter maintenance etc. | + | |
| - | * Blood products for transfusion, | + | |
| - | * Cosmetics, sunscreens, non-medicated shampoos and soaps, etc. | + | |
| - | * Surgical materials like bone cements | + | |
| - | * Topical/ | + | |
| - | + | ||
| - | Animal drugs can be handled as Drugs or Devices, depending on what their role in patient data can be expected to be. | + | |
| - | Note that only concepts from Drug domain can have attributes. | + | |
| - | + | ||
| - | **RELATIONSHIP_TO_CONCEPT** | + | |
| - | This table should contain the mapping between source codes and Standard Concepts for Ingredients, | + | |
| - | + | ||
| - | ^Field^Required^Type^Description^ | + | |
| - | |concept_code_1|Yes|string(255)|The source code| | + | |
| - | |concept_id_2|Yes|integer|The existing target Concept| | + | |
| - | |precedence|No|integer|For multiple concept_code_1/ | + | |
| - | |conversion_factor|No|float|The factor used to convert the source code to the target Concept. This is usually defined for units| | + | |
| - | + | ||
| - | This table should contain all mappings from the new to existing Concepts and their precedence. It should also contain links between Ingredients and Drug Classification Concepts, particularly for the new Ingredients. Since ATC is used as an international standard, relationships to ATC are very desirable. | + | |
| - | + | ||
| - | Units should be mapped to Standard Concept Units. Weight units should be converted to milligram, volume units should be mapped to milliliter, molar - to millimole with the right conversion factor. The source_code field should contain the verbatim string of the unit. | + | |
| - | + | ||
| - | **INTERNAL_RELATIONSHIP_STAGE** | + | |
| - | + | ||
| - | ^Field^Required^Type^Description^ | + | |
| - | |concept_code_1|Yes|string(255)|One source code of the pair| | + | |
| - | |concept_code_2|Yes|string(255)|The other source code of the pair| | + | |
| - | + | ||
| - | This table should contain relationships for each Drug Concept: To the Ingredients (always), the Dose Form (if appropriate), | + | |
| - | + | ||
| - | If Drug Product concept does not have an Ingredient attribute, it will not have any standard mapping target after processing. Supplier attribute will not be considered for concepts without DS_STAGE or PC_STAGE entry since Marketed Product concepts can not exist without dosage information. | + | |
| - | + | ||
| - | **DS_STAGE** | + | |
| - | + | ||
| - | ^Field^Required^Type^Description^ | + | |
| - | |drug_concept_code|Yes|string(255)|The source code of the Drug or Drug Component, either Branded or Clinical| | + | |
| - | |ingredient_concept_code|Yes|string(255)|The source code for one of the Ingredients| | + | |
| - | |amount_value|No|float|The numeric value for absolute content (usually solid formulations)| | + | |
| - | |amount_unit|No|string(255)|The verbatim unit of the absolute content (solids)| | + | |
| - | |numerator_value|No|float|The numerator value for a concentration (usually liquid formulations)| | + | |
| - | |numerator_unit|No|string(255)|The verbatim numerator unit of a concentration (liquids)| | + | |
| - | |denominator_value|No|float|The denominator value for a concentration (usally liquid formulations). It should contain a number for Quantified products, and null for everything else.| | + | |
| - | |denominator_unit|No|string(255)|The verbatim denominator unit of a concentration (liquids)| | + | |
| - | |box_size|No|integer|The amount of units per box| | + | |
| - | + | ||
| - | This table contains the dose of each ingredient in each drug, as well as the box_size. For drugs which have no strength information or have only for some of the containing ingredients, | + | |
| - | Drug ingredients should match those in internal_relationship_stage. | + | |
| - | If ingredients are mapped to the same one in relationship_to_concept their dosages should be summed up. | + | |
| - | A drug should not contain ingredients in solid (amount) and liquid (numerator/ | + | |
| - | + | ||
| - | **PС_STAGE** | + | |
| - | + | ||
| - | ^Field^Required^Type^Description^ | + | |
| - | |pack_concept_code|Yes|string(255)|The source code of the Pack, either Branded or Clinical| | + | |
| - | |drug_concept_code|Yes|string(255)|The component drug product in the Pack| | + | |
| - | |amount|No|integer|The number of units of the drug product in drug_concept_code| | + | |
| - | |box_size|No|integer|The number of packs if the pack is boxed (several packs in a larger container| | + | |
| - | + | ||
| - | This table contains the composition of a Clinical or Branded Pack: The Clinical or Branded Drug and the number in each pack. If it is a boxed Pack, it will also contain the box size, since Packs have no records in DS_STAGE like the other drug products. | + | |
| - | + | ||
| - | === 4. Concept Codes === | + | |
| - | Source systems my designate codes for different levels or Concept Classes. For all Concepts that are inferred or do not come with a code has to be assigned. The codes are constructed of the word " | + | |
| - | + | ||
| - | === 5. Quality of input tables === | + | |
| - | + | ||
| - | The input tables need to have the following quality requirements: | + | |
| - | + | ||
| - | ^ Rule ^ If rule is violated | + | |
| - | | Each record should be unique in all tables. | + | |
| - | | Concept Codes should be unique and should not repeat for different products. | + | |
| - | | Combinations of product components should be unique. These are Ingredient-strength(s) combination, | + | |
| - | | Each product should have links (records in INTERNAL_RELATIONSHIP_STAGE) to all their Ingredients. | + | |
| - | | Ingredients should be linked to their Standard Counterparts. | + | |
| - | | Dose Forms should be linked to their Standard Counterparts. | + | |
| - | | Brand Names should be linked to their Valid Counterparts. | + | |
| - | | All % in source dosages should be converted into mg/ml (mg) unless it is a gas. | A drug would not be mapped to it's Standard Conept | + | |
| - | | Marketed Product (a drug that has relationship to it's supplier in INTERNAL_RELATIONSHIP_STAGE) should have both dosage and Dose Form | The product won't be processed into CONCEPT_STAGE table. | + | |
| - | | Boxed drug should have both dosage and Dose Form. | The product won't be processed into CONCEPT_STAGE table. | + | |
| - | | Product ingredients should match in INTERNAL_RELATIONSHIP_STAGE and DS_STAGE | + | |
| - | | When mapping Ingredients, | + | |
| - | + | ||
| - | For quality assurance of input tablesyou can use drug_stage_tables_QA.sql script from project' | + | |
| - | + | ||
| - | === 5. Processing === | + | |
| - | + | ||
| - | If all 5 tables DRUG_CONCEPT_STAGE, | + | |
| - | + | ||
| - | ** Inferring of missing Concept Classes ** | + | |
| - | + | ||
| - | All missing Concept Classes are inferred from the existing ones, from bottom upwards. | + | |
| - | + | ||
| - | ^Concept Class^Defined by^ | + | |
| - | |Clinical Drug Component|Ingredient-strength. Note that Clinical Components are always single-Ingredient. This is in contrast to all other Concept Classes| | + | |
| - | |Branded Drug Component|Ingredient-strength(s), | + | |
| - | |Clinical Drug Form|Ingredient(s), | + | |
| - | |Branded Drug Form|Ingredient(s), | + | |
| - | |Clinical Drug|Ingredient-strength(s), | + | |
| - | |Branded Drug|Ingredient-strength(s), | + | |
| - | |Quantified Clinical Drug|Ingredient-strength(s), | + | |
| - | |Quantified Branded Drug|Ingredient-strength(s), | + | |
| - | |Clinical Drug Box|Ingredient-strength(s), | + | |
| - | |Branded Drug Box|Ingredient-strength(s), | + | |
| - | |Quantified Clinical Box|Ingredient-strength(s), | + | |
| - | |Quantified Branded Box|Ingredient-strength(s), | + | |
| - | + | ||
| - | Even though all drug classes are inferred, only those will be written to the CONCEPT table that have no mapping to an equivalent Standard Concept. | + | |
| - | + | ||
| - | ** Matching ** | + | |
| - | This step is necessary to add inferred equivalence relationships between new and existing Standard Concepts. All matches are created. Links in the RELATIONSHIP_TO_CONCEPT table are ignored. | + | |
| - | + | ||
| - | The matching considers all components (Ingredient-strength(s), | + | |
| - | + | ||
| - | ** Result ** | + | |
| - | All records in the DRUG_CONCEPT_STAGE table are written to the CONCEPT_STAGE table as follows. The standard_concept field is set to ' | + | |
| - | + | ||
| - | All records linking drug products to their Ingredients, | + | |
| - | + | ||
| - | * Ingredients, | + | |
| - | * Ingredients, | + | |
| - | + | ||
| - | Relationships between Drug Products or derivatives (Drug Forms and Components) are connected through CONCEPT_RELATIONSHIP_STAGE records with the the following relationship_id values: | + | |
| - | + | ||
| - | ^ Concept Class 1 ^ Concept Class 2 ^ Relationship ID ^ | + | |
| - | | Brand Name | Branded Drug | Brand name of | | + | |
| - | | Brand Name | Branded Drug Comp | Brand name of | | + | |
| - | | Brand Name | Branded Drug Form | Brand name of | | + | |
| - | | Brand Name | Ingredient | + | |
| - | | Brand Name | Quant Branded Drug | Brand name of | | + | |
| - | | Brand Name | Marketed Product | + | |
| - | | Branded Drug | Brand Name | RxNorm has ing | | + | |
| - | | Branded Drug | Branded Drug Comp | Consists of | | + | |
| - | | Branded Drug | Branded Drug Form | RxNorm is a | | + | |
| - | | Branded Drug | Branded Pack | Contained in | | + | |
| - | | Branded Drug | Clinical Drug | Tradename of | | + | |
| - | | Branded Drug | Clinical Drug Comp | Consists of | | + | |
| - | | Branded Drug | Dose Form | RxNorm has dose form | | + | |
| - | | Branded Drug | Quant Branded Drug | Has quantified form | | + | |
| - | | Branded Drug | Quant Clinical Drug | Tradename of | | + | |
| - | | Branded Drug | Marketed Product | + | |
| - | | Branded Drug Comp | Brand Name | RxNorm has ing | | + | |
| - | | Branded Drug Comp | Branded Drug | Constitutes | + | |
| - | | Branded Drug Comp | Clinical Drug Comp | Tradename of | | + | |
| - | | Branded Drug Comp | Quant Branded Drug | Constitutes | + | |
| - | | Branded Drug Form | Brand Name | RxNorm has ing | | + | |
| - | | Branded Drug Form | Branded Drug | RxNorm inverse is a | | + | |
| - | | Branded Drug Form | Clinical Drug Form | Tradename of | | + | |
| - | | Branded Drug Form | Dose Form | RxNorm has dose form | | + | |
| - | | Branded Drug Form | Quant Branded Drug | RxNorm inverse is a | | + | |
| - | | Branded Pack | Branded Drug | Contains | + | |
| - | | Branded Pack | Clinical Drug | Contains | + | |
| - | | Branded Pack | Clinical Pack | Tradename of | | + | |
| - | | Branded Pack | Dose Form | RxNorm has dose form | | + | |
| - | | Branded Pack | Quant Branded Drug | Contains | + | |
| - | | Branded Pack | Quant Clinical Drug | Contains | + | |
| - | | Branded Pack | Marketed Product | + | |
| - | | Clinical Drug | Branded Drug | Has tradename | + | |
| - | | Clinical Drug | Branded Pack | Contained in | | + | |
| - | | Clinical Drug | Clinical Drug Comp | Consists of | | + | |
| - | | Clinical Drug | Clinical Drug Form | RxNorm is a | | + | |
| - | | Clinical Drug | Clinical Pack | Contained in | | + | |
| - | | Clinical Drug | Dose Form | RxNorm has dose form | | + | |
| - | | Clinical Drug | Quant Branded Drug | Has tradename | + | |
| - | | Clinical Drug | Quant Clinical Drug | Has quantified form | | + | |
| - | | Clinical Drug | Marketed Product | + | |
| - | | Clinical Drug | Marketed Product | + | |
| - | | Clinical Drug Comp | Branded Drug | Constitutes | + | |
| - | | Clinical Drug Comp | Branded Drug Comp | Has tradename | + | |
| - | | Clinical Drug Comp | Clinical Drug | Constitutes | + | |
| - | | Clinical Drug Comp | Ingredient | + | |
| - | | Clinical Drug Comp | Ingredient | + | |
| - | | Clinical Drug Comp | Quant Branded Drug | Constitutes | + | |
| - | | Clinical Drug Comp | Quant Clinical Drug | Constitutes | + | |
| - | | Clinical Drug Form | Branded Drug Form | Has tradename | + | |
| - | | Clinical Drug Form | Clinical Drug | RxNorm inverse is a | | + | |
| - | | Clinical Drug Form | Dose Form | RxNorm has dose form | | + | |
| - | | Clinical Drug Form | Ingredient | + | |
| - | | Clinical Drug Form | Quant Clinical Drug | RxNorm inverse is a | | + | |
| - | | Clinical Pack | Branded Pack | Has tradename | + | |
| - | | Clinical Pack | Clinical Drug | Contains | + | |
| - | | Clinical Pack | Dose Form | RxNorm has dose form | | + | |
| - | | Clinical Pack | Quant Clinical Drug | Contains | + | |
| - | | Clinical Pack | Marketed Product | + | |
| - | | Dose Form | Branded Drug | RxNorm dose form of | | + | |
| - | | Dose Form | Branded Drug Form | RxNorm dose form of | | + | |
| - | | Dose Form | Branded Pack | RxNorm dose form of | | + | |
| - | | Dose Form | Clinical Drug | RxNorm dose form of | | + | |
| - | | Dose Form | Clinical Drug Form | RxNorm dose form of | | + | |
| - | | Dose Form | Clinical Pack | RxNorm dose form of | | + | |
| - | | Dose Form | Quant Branded Drug | RxNorm dose form of | | + | |
| - | | Dose Form | Quant Clinical Drug | RxNorm dose form of | | + | |
| - | | Dose Form | Marketed Product | + | |
| - | | Ingredient | + | |
| - | | Ingredient | + | |
| - | | Ingredient | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Marketed Product | + | |
| - | | Quant Branded Drug | Brand Name | RxNorm has ing | | + | |
| - | | Quant Branded Drug | Branded Drug | Quantified form of | | + | |
| - | | Quant Branded Drug | Branded Drug Comp | Consists of | | + | |
| - | | Quant Branded Drug | Branded Drug Form | RxNorm is a | | + | |
| - | | Quant Branded Drug | Branded Pack | Contained in | | + | |
| - | | Quant Branded Drug | Clinical Drug | Tradename of | | + | |
| - | | Quant Branded Drug | Clinical Drug Comp | Consists of | | + | |
| - | | Quant Branded Drug | Dose Form | RxNorm has dose form | | + | |
| - | | Quant Branded Drug | Quant Clinical Drug | Tradename of | | + | |
| - | | Quant Branded Drug | Marketed Product | + | |
| - | | Quant Clinical Drug | Branded Drug | Has tradename | + | |
| - | | Quant Clinical Drug | Branded Pack | Contained in | | + | |
| - | | Quant Clinical Drug | Clinical Drug | Quantified form of | | + | |
| - | | Quant Clinical Drug | Clinical Drug Comp | Consists of | | + | |
| - | | Quant Clinical Drug | Clinical Drug Form | RxNorm is a | | + | |
| - | | Quant Clinical Drug | Clinical Pack | Contained in | | + | |
| - | | Quant Clinical Drug | Dose Form | RxNorm has dose form | | + | |
| - | | Quant Clinical Drug | Quant Branded Drug | Has tradename | + | |
| - | | Quant Clinical Drug | Marketed Product | + | |
| - | | Quant Clinical Drug | Marketed Product | + | |
| - | | Supplier | + | |
| - | + | ||
| - | From the pack_content, | + | |
| - | + | ||
| - | Relationships between any Drug Concept Class and a Classfication Concept Class is recorded through the "Drug has drug class" and "Drug class of drug" generic relationship pair. | + | |
| - | + | ||
| - | Finally, a new DRUG_STRENGTH_STAGE table should be created from DS_STAGE and the the unit conversions in RELATIONSHIP_TO_CONCEPT, | + | |
documentation/international_drugs.1563541713.txt.gz · Last modified: by ekorchmar
