remove drug end date convention

This commit is contained in:
Maxim Moinat 2024-06-06 17:31:54 +02:00
parent 3b84ef6114
commit ad666fdd9d
No known key found for this signature in database
GPG Key ID: 94EA516FB6174455
2 changed files with 124 additions and 124 deletions

View File

@ -27,12 +27,12 @@ visit_occurrence,person_id,Yes,integer,NA,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
visit_occurrence,visit_concept_id,Yes,integer,"This field contains a concept id representing the kind of visit, like inpatient or outpatient. All concepts in this field should be standard and belong to the Visit domain.","Populate this field based on the kind of visit that took place for the person. For example this could be ""Inpatient Visit"", ""Outpatient Visit"", ""Ambulatory Visit"", etc. This table will contain standard concepts in the Visit domain. These concepts are arranged in a hierarchical structure to facilitate cohort definitions by rolling up to generally familiar Visits adopted in most healthcare systems worldwide. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Visit,NA,NA visit_occurrence,visit_concept_id,Yes,integer,"This field contains a concept id representing the kind of visit, like inpatient or outpatient. All concepts in this field should be standard and belong to the Visit domain.","Populate this field based on the kind of visit that took place for the person. For example this could be ""Inpatient Visit"", ""Outpatient Visit"", ""Ambulatory Visit"", etc. This table will contain standard concepts in the Visit domain. These concepts are arranged in a hierarchical structure to facilitate cohort definitions by rolling up to generally familiar Visits adopted in most healthcare systems worldwide. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Visit,NA,NA
visit_occurrence,visit_start_date,Yes,date,"For inpatient visits, the start date is typically the admission date. For outpatient visits the start date and end date will be the same.","When populating VISIT_START_DATE, you should think about the patient experience to make decisions on how to define visits. In the case of an inpatient visit this should be the date the patient was admitted to the hospital or institution. In all other cases this should be the date of the patient-provider interaction. If this information is not available the record should be dropped.",No,No,NA,NA,NA,NA,NA visit_occurrence,visit_start_date,Yes,date,"For inpatient visits, the start date is typically the admission date. For outpatient visits the start date and end date will be the same.","When populating VISIT_START_DATE, you should think about the patient experience to make decisions on how to define visits. In the case of an inpatient visit this should be the date the patient was admitted to the hospital or institution. In all other cases this should be the date of the patient-provider interaction. If this information is not available the record should be dropped.",No,No,NA,NA,NA,NA,NA
visit_occurrence,visit_start_datetime,No,datetime,NA,"If no time is given for the start date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA visit_occurrence,visit_start_datetime,No,datetime,NA,"If no time is given for the start date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA
visit_occurrence,visit_end_date,Yes,date,For inpatient visits the end date is typically the discharge date.,"Visit end dates are mandatory. If end dates are not provided in the source there are three ways in which to derive them: visit_occurrence,visit_end_date,Yes,date,For inpatient visits the end date is typically the discharge date.,"Visit end dates are mandatory. If end dates are not provided in the source there are three ways in which to derive them:
- Outpatient Visit: visit_end_datetime = visit_start_datetime - Outpatient Visit: visit_end_datetime = visit_start_datetime
- Emergency Room Visit: visit_end_datetime = visit_start_datetime - Emergency Room Visit: visit_end_datetime = visit_start_datetime
- Inpatient Visit: Usually there is information about discharge. If not, you should be able to derive the end date from the sudden decline of activity or from the absence of inpatient procedures/drugs. - Inpatient Visit: Usually there is information about discharge. If not, you should be able to derive the end date from the sudden decline of activity or from the absence of inpatient procedures/drugs.
- Non-hospital institution Visits: Particularly for claims data, if end dates are not provided assume the visit is for the duration of month that it occurs. - Non-hospital institution Visits: Particularly for claims data, if end dates are not provided assume the visit is for the duration of month that it occurs.
For Inpatient Visits ongoing at the date of ETL, put date of processing the data into visit_end_datetime and visit_type_concept_id with 32220 ""Still patient"" to identify the visit as incomplete. For Inpatient Visits ongoing at the date of ETL, put date of processing the data into visit_end_datetime and visit_type_concept_id with 32220 ""Still patient"" to identify the visit as incomplete.
- All other Visits: visit_end_datetime = visit_start_datetime. If this is a one-day visit the end date should match the start date.",No,No,NA,NA,NA,NA,NA - All other Visits: visit_end_datetime = visit_start_datetime. If this is a one-day visit the end date should match the start date.",No,No,NA,NA,NA,NA,NA
visit_occurrence,visit_end_datetime,No,datetime,NA,"If no time is given for the end date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA visit_occurrence,visit_end_datetime,No,datetime,NA,"If no time is given for the end date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA
visit_occurrence,visit_type_concept_id,Yes,Integer,"Use this field to understand the provenance of the visit record, or where the record comes from.","Populate this field based on the provenance of the visit record, as in whether it came from an EHR record or billing claim. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA visit_occurrence,visit_type_concept_id,Yes,Integer,"Use this field to understand the provenance of the visit record, or where the record comes from.","Populate this field based on the provenance of the visit record, as in whether it came from an EHR record or billing claim. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA
@ -50,12 +50,12 @@ visit_detail,person_id,Yes,integer,NA,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
visit_detail,visit_detail_concept_id,Yes,integer,"This field contains a concept id representing the kind of visit detail, like inpatient or outpatient. All concepts in this field should be standard and belong to the Visit domain.","Populate this field based on the kind of visit that took place for the person. For example this could be ""Inpatient Visit"", ""Outpatient Visit"", ""Ambulatory Visit"", etc. This table will contain standard concepts in the Visit domain. These concepts are arranged in a hierarchical structure to facilitate cohort definitions by rolling up to generally familiar Visits adopted in most healthcare systems worldwide. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Visit,NA,NA visit_detail,visit_detail_concept_id,Yes,integer,"This field contains a concept id representing the kind of visit detail, like inpatient or outpatient. All concepts in this field should be standard and belong to the Visit domain.","Populate this field based on the kind of visit that took place for the person. For example this could be ""Inpatient Visit"", ""Outpatient Visit"", ""Ambulatory Visit"", etc. This table will contain standard concepts in the Visit domain. These concepts are arranged in a hierarchical structure to facilitate cohort definitions by rolling up to generally familiar Visits adopted in most healthcare systems worldwide. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Visit,NA,NA
visit_detail,visit_detail_start_date,Yes,date,This is the date of the start of the encounter. This may or may not be equal to the date of the Visit the Visit Detail is associated with.,"When populating VISIT_DETAIL_START_DATE, you should think about the patient experience to make decisions on how to define visits. Most likely this should be the date of the patient-provider interaction.",No,No,NA,NA,NA,NA,NA visit_detail,visit_detail_start_date,Yes,date,This is the date of the start of the encounter. This may or may not be equal to the date of the Visit the Visit Detail is associated with.,"When populating VISIT_DETAIL_START_DATE, you should think about the patient experience to make decisions on how to define visits. Most likely this should be the date of the patient-provider interaction.",No,No,NA,NA,NA,NA,NA
visit_detail,visit_detail_start_datetime,No,datetime,NA,"If no time is given for the start date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA visit_detail,visit_detail_start_datetime,No,datetime,NA,"If no time is given for the start date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA
visit_detail,visit_detail_end_date,Yes,date,This the end date of the patient-provider interaction.,"Visit Detail end dates are mandatory. If end dates are not provided in the source there are three ways in which to derive them:<br> visit_detail,visit_detail_end_date,Yes,date,This the end date of the patient-provider interaction.,"Visit Detail end dates are mandatory. If end dates are not provided in the source there are three ways in which to derive them:<br>
- Outpatient Visit Detail: visit_detail_end_datetime = visit_detail_start_datetime - Outpatient Visit Detail: visit_detail_end_datetime = visit_detail_start_datetime
- Emergency Room Visit Detail: visit_detail_end_datetime = visit_detail_start_datetime - Emergency Room Visit Detail: visit_detail_end_datetime = visit_detail_start_datetime
- Inpatient Visit Detail: Usually there is information about discharge. If not, you should be able to derive the end date from the sudden decline of activity or from the absence of inpatient procedures/drugs. - Inpatient Visit Detail: Usually there is information about discharge. If not, you should be able to derive the end date from the sudden decline of activity or from the absence of inpatient procedures/drugs.
- Non-hospital institution Visit Details: Particularly for claims data, if end dates are not provided assume the visit is for the duration of month that it occurs.<br> - Non-hospital institution Visit Details: Particularly for claims data, if end dates are not provided assume the visit is for the duration of month that it occurs.<br>
For Inpatient Visit Details ongoing at the date of ETL, put date of processing the data into visit_detai_end_datetime and visit_detail_type_concept_id with 32220 ""Still patient"" to identify the visit as incomplete. For Inpatient Visit Details ongoing at the date of ETL, put date of processing the data into visit_detai_end_datetime and visit_detail_type_concept_id with 32220 ""Still patient"" to identify the visit as incomplete.
All other Visits Details: visit_detail_end_datetime = visit_detail_start_datetime.",No,No,NA,NA,NA,NA,NA All other Visits Details: visit_detail_end_datetime = visit_detail_start_datetime.",No,No,NA,NA,NA,NA,NA
visit_detail,visit_detail_end_datetime,No,datetime,NA,"If no time is given for the end date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA visit_detail,visit_detail_end_datetime,No,datetime,NA,"If no time is given for the end date of a visit, set it to midnight (00:00:0000).",No,No,NA,NA,NA,NA,NA
visit_detail,visit_detail_type_concept_id,Yes,integer,"Use this field to understand the provenance of the visit detail record, or where the record comes from.","Populate this field based on the provenance of the visit detail record, as in whether it came from an EHR record or billing claim. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA visit_detail,visit_detail_type_concept_id,Yes,integer,"Use this field to understand the provenance of the visit detail record, or where the record comes from.","Populate this field based on the provenance of the visit detail record, as in whether it came from an EHR record or billing claim. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA
@ -88,17 +88,17 @@ condition_occurrence,condition_source_concept_id,No,integer,"This is the concept
condition_occurrence,condition_status_source_value,No,varchar(50),This field houses the verbatim value from the source data representing the condition status.,This information may be called something different in the source data but the field is meant to contain a value indicating when and how a diagnosis was given to a patient. This source value is mapped to a standard concept which is stored in the CONDITION_STATUS_CONCEPT_ID field.,No,No,NA,NA,NA,NA,NA condition_occurrence,condition_status_source_value,No,varchar(50),This field houses the verbatim value from the source data representing the condition status.,This information may be called something different in the source data but the field is meant to contain a value indicating when and how a diagnosis was given to a patient. This source value is mapped to a standard concept which is stored in the CONDITION_STATUS_CONCEPT_ID field.,No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_id,Yes,integer,The unique key given to records of drug dispensings or administrations for a person. Refer to the ETL for how duplicate drugs during the same visit were handled.,"Each instance of a drug dispensing or administration present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same drug within the same visit. It is valid to keep these duplicates and assign them individual, unique, DRUG_EXPOSURE_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_id,Yes,integer,The unique key given to records of drug dispensings or administrations for a person. Refer to the ETL for how duplicate drugs during the same visit were handled.,"Each instance of a drug dispensing or administration present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same drug within the same visit. It is valid to keep these duplicates and assign them individual, unique, DRUG_EXPOSURE_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA
drug_exposure,person_id,Yes,integer,The PERSON_ID of the PERSON for whom the drug dispensing or administration is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA drug_exposure,person_id,Yes,integer,The PERSON_ID of the PERSON for whom the drug dispensing or administration is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
drug_exposure,drug_concept_id,Yes,integer,"The DRUG_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source concept id which represents a drug product or molecule otherwise introduced to the body. The drug concepts can have a varying degree of information about drug strength and dose. This information is relevant in the context of quantity and administration information in the subsequent fields plus strength information from the DRUG_STRENGTH table, provided as part of the standard vocabulary download.","The CONCEPT_ID that the DRUG_SOURCE_VALUE maps to. The concept id should be derived either from mapping from the source concept id or by picking the drug concept representing the most amount of detail you have. Records whose source values map to standard concepts with a domain of Drug should go in this table. When the Drug Source Value of the code cannot be translated into Standard Drug Concept IDs, a Drug exposure entry is stored with only the corresponding SOURCE_CONCEPT_ID and DRUG_SOURCE_VALUE and a DRUG_CONCEPT_ID of 0. The Drug Concept with the most detailed content of information is preferred during the mapping process. These are indicated in the CONCEPT_CLASS_ID field of the Concept and are recorded in the following order of precedence: ÒMarketed ProductÓ, ÒBranded PackÓ, ÒClinical PackÓ, ÒBranded DrugÓ, ÒClinical DrugÓ, ÒBranded Drug ComponentÓ, ÒClinical Drug ComponentÓ, ÒBranded Drug FormÓ, ÒClinical Drug FormÓ, and only if no other information is available ÒIngredientÓ. Note: If only the drug class is known, the DRUG_CONCEPT_ID field should contain 0. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Drug&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Drug,NA,NA drug_exposure,drug_concept_id,Yes,integer,"The DRUG_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source concept id which represents a drug product or molecule otherwise introduced to the body. The drug concepts can have a varying degree of information about drug strength and dose. This information is relevant in the context of quantity and administration information in the subsequent fields plus strength information from the DRUG_STRENGTH table, provided as part of the standard vocabulary download.","The CONCEPT_ID that the DRUG_SOURCE_VALUE maps to. The concept id should be derived either from mapping from the source concept id or by picking the drug concept representing the most amount of detail you have. Records whose source values map to standard concepts with a domain of Drug should go in this table. When the Drug Source Value of the code cannot be translated into Standard Drug Concept IDs, a Drug exposure entry is stored with only the corresponding SOURCE_CONCEPT_ID and DRUG_SOURCE_VALUE and a DRUG_CONCEPT_ID of 0. The Drug Concept with the most detailed content of information is preferred during the mapping process. These are indicated in the CONCEPT_CLASS_ID field of the Concept and are recorded in the following order of precedence: <EFBFBD>Marketed Product<63>, <20>Branded Pack<63>, <20>Clinical Pack<63>, <20>Branded Drug<75>, <20>Clinical Drug<75>, <20>Branded Drug Component<6E>, <20>Clinical Drug Component<6E>, <20>Branded Drug Form<72>, <20>Clinical Drug Form<72>, and only if no other information is available <20>Ingredient<6E>. Note: If only the drug class is known, the DRUG_CONCEPT_ID field should contain 0. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Drug&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Drug,NA,NA
drug_exposure,drug_exposure_start_date,Yes,date,Use this date to determine the start date of the drug record.,"Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration was recorded. It is a valid ETL choice to use the date the drug was ordered as the DRUG_EXPOSURE_START_DATE.",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_start_date,Yes,date,Use this date to determine the start date of the drug record.,"Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration was recorded. It is a valid ETL choice to use the date the drug was ordered as the DRUG_EXPOSURE_START_DATE.",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_start_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_start_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_end_date,Yes,date,The DRUG_EXPOSURE_END_DATE denotes the day the drug exposure ended for the patient.,"If this information is not explicitly available in the data, infer the end date using the following methods:<br><br> 1. Start first with duration or days supply using the calculation drug start date + days supply -1 day. 2. Use quantity divided by daily dose that you may obtain from the sig or a source field (or assumed daily dose of 1) for solid, indivisibile, drug products. If quantity represents ingredient amount, quantity divided by daily dose * concentration (from drug_strength) drug concept id tells you the dose form. 3. If it is an administration record, set drug end date equal to drug start date. If the record is a written prescription then set end date to start date + 29. If the record is a mail-order prescription set end date to start date + 89. The end date must be equal to or greater than the start date. Ibuprofen 20mg/mL oral solution concept tells us this is oral solution. Calculate duration as quantity (200 example) * daily dose (5mL) /concentration (20mg/mL) 200*5/20 = 50 days. [Examples by dose form](https://ohdsi.github.io/CommonDataModel/drug_dose.html)<br><br>For detailed conventions for how to populate this field, please see the [THEMIS repository](https://ohdsi.github.io/Themis/tag_drug_exposure.html).",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_end_date,Yes,date,The DRUG_EXPOSURE_END_DATE denotes the day the drug exposure ended for the patient.,"If this information is not explicitly available in the data, infer the end date from start date and duration.<br>For detailed conventions for how to populate this field, please see the [THEMIS repository](https://ohdsi.github.io/Themis/tag_drug_exposure.html).",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_end_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_end_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
drug_exposure,verbatim_end_date,No,date,"This is the end date of the drug exposure as it appears in the source data, if it is given",Put the end date or discontinuation date as it appears from the source data or leave blank if unavailable.,No,No,NA,NA,NA,NA,NA drug_exposure,verbatim_end_date,No,date,"This is the end date of the drug exposure as it appears in the source data, if it is given",Put the end date or discontinuation date as it appears from the source data or leave blank if unavailable.,No,No,NA,NA,NA,NA,NA
drug_exposure,drug_type_concept_id,Yes,integer,"You can use the TYPE_CONCEPT_ID to delineate between prescriptions written vs. prescriptions dispensed vs. medication history vs. patient-reported exposure, etc.","Choose the drug_type_concept_id that best represents the provenance of the record, for example whether it came from a record of a prescription written or physician administered drug. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA drug_exposure,drug_type_concept_id,Yes,integer,"You can use the TYPE_CONCEPT_ID to delineate between prescriptions written vs. prescriptions dispensed vs. medication history vs. patient-reported exposure, etc.","Choose the drug_type_concept_id that best represents the provenance of the record, for example whether it came from a record of a prescription written or physician administered drug. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA
drug_exposure,stop_reason,No,varchar(20),"The reason a person stopped a medication as it is represented in the source. Reasons include regimen completed, changed, removed, etc. This field will be retired in v6.0.",This information is often not populated in source data and it is a valid etl choice to leave it blank if the information does not exist.,No,No,NA,NA,NA,NA,NA drug_exposure,stop_reason,No,varchar(20),"The reason a person stopped a medication as it is represented in the source. Reasons include regimen completed, changed, removed, etc. This field will be retired in v6.0.",This information is often not populated in source data and it is a valid etl choice to leave it blank if the information does not exist.,No,No,NA,NA,NA,NA,NA
drug_exposure,refills,No,integer,This is only filled in when the record is coming from a prescription written this field is meant to represent intended refills at time of the prescription.,NA,No,No,NA,NA,NA,NA,NA drug_exposure,refills,No,integer,This is only filled in when the record is coming from a prescription written this field is meant to represent intended refills at time of the prescription.,NA,No,No,NA,NA,NA,NA,NA
drug_exposure,quantity,No,float,NA,"To find the dose form of a drug the RELATIONSHIP table can be used where the relationship_id is 'Has dose form'. If liquid, quantity stands for the total amount dispensed or ordered of ingredient in the units given by the drug_strength table. If the unit from the source data does not align with the unit in the DRUG_STRENGTH table the quantity should be converted to the correct unit given in DRUG_STRENGTH. For clinical drugs with fixed dose forms (tablets etc.) the quantity is the number of units/tablets/capsules prescribed or dispensed (can be partial, but then only 1/2 or 1/3, not 0.01). Clinical drugs with divisible dose forms (injections) the quantity is the amount of ingredient the patient got. For example, if the injection is 2mg/mL but the patient got 80mL then quantity is reported as 160. drug_exposure,quantity,No,float,NA,"To find the dose form of a drug the RELATIONSHIP table can be used where the relationship_id is 'Has dose form'. If liquid, quantity stands for the total amount dispensed or ordered of ingredient in the units given by the drug_strength table. If the unit from the source data does not align with the unit in the DRUG_STRENGTH table the quantity should be converted to the correct unit given in DRUG_STRENGTH. For clinical drugs with fixed dose forms (tablets etc.) the quantity is the number of units/tablets/capsules prescribed or dispensed (can be partial, but then only 1/2 or 1/3, not 0.01). Clinical drugs with divisible dose forms (injections) the quantity is the amount of ingredient the patient got. For example, if the injection is 2mg/mL but the patient got 80mL then quantity is reported as 160.
Quantified clinical drugs with divisible dose forms (prefilled syringes), the quantity is the amount of ingredient similar to clinical drugs. Please see [how to calculate drug dose](https://ohdsi.github.io/CommonDataModel/drug_dose.html) for more information. Quantified clinical drugs with divisible dose forms (prefilled syringes), the quantity is the amount of ingredient similar to clinical drugs. Please see [how to calculate drug dose](https://ohdsi.github.io/CommonDataModel/drug_dose.html) for more information.
",No,No,NA,NA,NA,NA,NA ",No,No,NA,NA,NA,NA,NA
drug_exposure,days_supply,No,integer,The number of days of supply of the medication as recorded in the original prescription or dispensing record. Days supply can differ from actual drug duration (i.e. prescribed days supply vs actual exposure).,"The field should be left empty if the source data does not contain a verbatim days_supply, and should not be calculated from other fields.<br><br>Negative values are not allowed. If the source has negative days supply the record should be dropped as it is unknown if the patient actually took the drug. Several actions are possible: 1) record is not trustworthy and we remove the record entirely. 2) we trust the record and leave days_supply empty or 3) record needs to be combined with other record (e.g. reversal of prescription). High values (>365 days) should be investigated. If considered an error in the source data (e.g. typo), the value needs to be excluded to prevent creation of unrealistic long eras.",No,No,NA,NA,NA,NA,NA drug_exposure,days_supply,No,integer,The number of days of supply of the medication as recorded in the original prescription or dispensing record. Days supply can differ from actual drug duration (i.e. prescribed days supply vs actual exposure).,"The field should be left empty if the source data does not contain a verbatim days_supply, and should not be calculated from other fields.<br><br>Negative values are not allowed. If the source has negative days supply the record should be dropped as it is unknown if the patient actually took the drug. Several actions are possible: 1) record is not trustworthy and we remove the record entirely. 2) we trust the record and leave days_supply empty or 3) record needs to be combined with other record (e.g. reversal of prescription). High values (>365 days) should be investigated. If considered an error in the source data (e.g. typo), the value needs to be excluded to prevent creation of unrealistic long eras.",No,No,NA,NA,NA,NA,NA
drug_exposure,sig,No,varchar(MAX),This is the verbatim instruction for the drug as written by the provider.,"Put the written out instructions for the drug as it is verbatim in the source, if available.",No,No,NA,NA,NA,NA,NA drug_exposure,sig,No,varchar(MAX),This is the verbatim instruction for the drug as written by the provider.,"Put the written out instructions for the drug as it is verbatim in the source, if available.",No,No,NA,NA,NA,NA,NA
@ -142,7 +142,7 @@ device_exposure,device_source_value,No,varchar(50),"This field houses the verbat
device_exposure,device_source_concept_id,No,integer,"This is the concept representing the device source value and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Device necessary for a given analytic use case. Consider using DEVICE_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network.",If the DEVICE_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here.,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA device_exposure,device_source_concept_id,No,integer,"This is the concept representing the device source value and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Device necessary for a given analytic use case. Consider using DEVICE_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network.",If the DEVICE_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here.,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
measurement,measurement_id,Yes,integer,The unique key given to a Measurement record for a Person. Refer to the ETL for how duplicate Measurements during the same Visit were handled.,"Each instance of a measurement present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same measurement within the same visit. It is valid to keep these duplicates and assign them individual, unique, MEASUREMENT_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA measurement,measurement_id,Yes,integer,The unique key given to a Measurement record for a Person. Refer to the ETL for how duplicate Measurements during the same Visit were handled.,"Each instance of a measurement present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same measurement within the same visit. It is valid to keep these duplicates and assign them individual, unique, MEASUREMENT_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA
measurement,person_id,Yes,integer,The PERSON_ID of the Person for whom the Measurement is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA measurement,person_id,Yes,integer,The PERSON_ID of the Person for whom the Measurement is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
measurement,measurement_concept_id,Yes,integer,"The MEASUREMENT_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source value which represents a measurement.",The CONCEPT_ID that the MEASUREMENT_SOURCE_VALUE maps to. Only records whose source values map to concepts with a domain of ÒMeasurementÓ should go in this table.,No,Yes,CONCEPT,CONCEPT_ID,Measurement,NA,NA measurement,measurement_concept_id,Yes,integer,"The MEASUREMENT_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source value which represents a measurement.",The CONCEPT_ID that the MEASUREMENT_SOURCE_VALUE maps to. Only records whose source values map to concepts with a domain of <EFBFBD>Measurement<EFBFBD> should go in this table.,No,Yes,CONCEPT,CONCEPT_ID,Measurement,NA,NA
measurement,measurement_date,Yes,date,Use this date to determine the date of the measurement.,"If there are multiple dates in the source data associated with a record such as order_date, draw_date, and result_date, choose the one that is closest to the date the sample was drawn from the patient.",No,No,NA,NA,NA,NA,NA measurement,measurement_date,Yes,date,Use this date to determine the date of the measurement.,"If there are multiple dates in the source data associated with a record such as order_date, draw_date, and result_date, choose the one that is closest to the date the sample was drawn from the patient.",No,No,NA,NA,NA,NA,NA
measurement,measurement_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA measurement,measurement_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
measurement,measurement_time,No,varchar(10),NA,This is present for backwards compatibility and will be deprecated in an upcoming version.,No,No,NA,NA,NA,NA,NA measurement,measurement_time,No,varchar(10),NA,This is present for backwards compatibility and will be deprecated in an upcoming version.,No,No,NA,NA,NA,NA,NA
@ -190,7 +190,7 @@ note,person_id,Yes,integer,NA,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
note,note_date,Yes,date,The date the note was recorded.,NA,No,No,NA,NA,NA,NA,NA note,note_date,Yes,date,The date the note was recorded.,NA,No,No,NA,NA,NA,NA,NA
note,note_datetime,No,datetime,NA,If time is not given set the time to midnight.,No,No,NA,NA,NA,NA,NA note,note_datetime,No,datetime,NA,If time is not given set the time to midnight.,No,No,NA,NA,NA,NA,NA
note,note_type_concept_id,Yes,integer,The provenance of the note. Most likely this will be EHR.,"Put the source system of the note, as in EHR record. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?standardConcept=Standard&domain=Type+Concept&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA note,note_type_concept_id,Yes,integer,The provenance of the note. Most likely this will be EHR.,"Put the source system of the note, as in EHR record. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?standardConcept=Standard&domain=Type+Concept&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA
note,note_class_concept_id,Yes,integer,"A Standard Concept Id representing the HL7 LOINC note,note_class_concept_id,Yes,integer,"A Standard Concept Id representing the HL7 LOINC
Document Type Vocabulary classification of the note.",Map the note classification to a Standard Concept. For more information see the ETL Conventions in the description of the NOTE table. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?standardConcept=Standard&conceptClass=Doc+Kind&conceptClass=Doc+Role&conceptClass=Doc+Setting&conceptClass=Doc+Subject+Matter&conceptClass=Doc+Type+of+Service&domain=Meas+Value&page=1&pageSize=15&query=). This Concept can alternatively be represented by concepts with the relationship 'Kind of (LOINC)' to [706391](https://athena.ohdsi.org/search-terms/terms/706391) (Note).,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA Document Type Vocabulary classification of the note.",Map the note classification to a Standard Concept. For more information see the ETL Conventions in the description of the NOTE table. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?standardConcept=Standard&conceptClass=Doc+Kind&conceptClass=Doc+Role&conceptClass=Doc+Setting&conceptClass=Doc+Subject+Matter&conceptClass=Doc+Type+of+Service&domain=Meas+Value&page=1&pageSize=15&query=). This Concept can alternatively be represented by concepts with the relationship 'Kind of (LOINC)' to [706391](https://athena.ohdsi.org/search-terms/terms/706391) (Note).,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
note,note_title,No,varchar(250),The title of the note.,NA,No,No,NA,NA,NA,NA,NA note,note_title,No,varchar(250),The title of the note.,NA,No,No,NA,NA,NA,NA,NA
note,note_text,Yes,varchar(MAX),The content of the note.,NA,No,No,NA,NA,NA,NA,NA note,note_text,Yes,varchar(MAX),The content of the note.,NA,No,No,NA,NA,NA,NA,NA
@ -211,22 +211,22 @@ note_nlp,note_nlp_source_concept_id,No,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,N
note_nlp,nlp_system,No,varchar(250),NA,Name and version of the NLP system that extracted the term. Useful for data provenance.,No,No,NA,NA,NA,NA,NA note_nlp,nlp_system,No,varchar(250),NA,Name and version of the NLP system that extracted the term. Useful for data provenance.,No,No,NA,NA,NA,NA,NA
note_nlp,nlp_date,Yes,date,The date of the note processing.,NA,No,No,NA,NA,NA,NA,NA note_nlp,nlp_date,Yes,date,The date of the note processing.,NA,No,No,NA,NA,NA,NA,NA
note_nlp,nlp_datetime,No,datetime,The date and time of the note processing.,NA,No,No,NA,NA,NA,NA,NA note_nlp,nlp_datetime,No,datetime,The date and time of the note processing.,NA,No,No,NA,NA,NA,NA,NA
note_nlp,term_exists,No,varchar(1),NA,"Term_exists is defined as a flag that indicates if the patient actually has or had the condition. Any of the following modifiers would make Term_exists false: note_nlp,term_exists,No,varchar(1),NA,"Term_exists is defined as a flag that indicates if the patient actually has or had the condition. Any of the following modifiers would make Term_exists false:
Negation = true Negation = true
Subject = [anything other than the patient] Subject = [anything other than the patient]
Conditional = true/li> Conditional = true/li>
Rule_out = true Rule_out = true
Uncertain = very low certainty or any lower certainties Uncertain = very low certainty or any lower certainties
A complete lack of modifiers would make Term_exists true. A complete lack of modifiers would make Term_exists true.
",No,No,NA,NA,NA,NA,NA ",No,No,NA,NA,NA,NA,NA
note_nlp,term_temporal,No,varchar(50),NA,"Term_temporal is to indicate if a condition is present or just in the past. The following would be past:<br><br> note_nlp,term_temporal,No,varchar(50),NA,"Term_temporal is to indicate if a condition is present or just in the past. The following would be past:<br><br>
- History = true - History = true
- Concept_date = anything before the time of the report",No,No,NA,NA,NA,NA,NA - Concept_date = anything before the time of the report",No,No,NA,NA,NA,NA,NA
note_nlp,term_modifiers,No,varchar(2000),NA,"For the modifiers that are there, they would have to have these values:<br><br> note_nlp,term_modifiers,No,varchar(2000),NA,"For the modifiers that are there, they would have to have these values:<br><br>
- Negation = false - Negation = false
- Subject = patient - Subject = patient
- Conditional = false - Conditional = false
- Rule_out = false - Rule_out = false
- Uncertain = true or high or moderate or even low (could argue about low). Term_modifiers will concatenate all modifiers for different types of entities (conditions, drugs, labs etc) into one string. Lab values will be saved as one of the modifiers.",No,No,NA,NA,NA,NA,NA - Uncertain = true or high or moderate or even low (could argue about low). Term_modifiers will concatenate all modifiers for different types of entities (conditions, drugs, labs etc) into one string. Lab values will be saved as one of the modifiers.",No,No,NA,NA,NA,NA,NA
specimen,specimen_id,Yes,integer,Unique identifier for each specimen.,NA,Yes,No,NA,NA,NA,NA,NA specimen,specimen_id,Yes,integer,Unique identifier for each specimen.,NA,Yes,No,NA,NA,NA,NA,NA
specimen,person_id,Yes,integer,The person from whom the specimen is collected.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA specimen,person_id,Yes,integer,The person from whom the specimen is collected.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
@ -318,9 +318,9 @@ drug_era,drug_era_id,Yes,integer,NA,NA,Yes,No,NA,NA,NA,NA,NA
drug_era,person_id,Yes,integer,NA,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA drug_era,person_id,Yes,integer,NA,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
drug_era,drug_concept_id,Yes,integer,The drug_concept_id should conform to the concept class 'ingredient' as the drug_era is an era of time where a person is exposed to a particular drug ingredient.,NA,No,Yes,CONCEPT,CONCEPT_ID,Drug,Ingredient,NA drug_era,drug_concept_id,Yes,integer,The drug_concept_id should conform to the concept class 'ingredient' as the drug_era is an era of time where a person is exposed to a particular drug ingredient.,NA,No,Yes,CONCEPT,CONCEPT_ID,Drug,Ingredient,NA
drug_era,drug_era_start_date,Yes,date,NA,"The Drug Era Start Date is the start date of the first Drug Exposure for a given ingredient, with at least 31 days since the previous exposure.",No,No,NA,NA,NA,NA,NA drug_era,drug_era_start_date,Yes,date,NA,"The Drug Era Start Date is the start date of the first Drug Exposure for a given ingredient, with at least 31 days since the previous exposure.",No,No,NA,NA,NA,NA,NA
drug_era,drug_era_end_date,Yes,date,NA,"The Drug Era End Date is the end date of the last Drug Exposure. The End Date of each Drug Exposure is either taken from the field drug_exposure_end_date or, as it is typically not available, inferred using the following rules: drug_era,drug_era_end_date,Yes,date,NA,"The Drug Era End Date is the end date of the last Drug Exposure. The End Date of each Drug Exposure is either taken from the field drug_exposure_end_date or, as it is typically not available, inferred using the following rules:
For pharmacy prescription data, the date when the drug was dispensed plus the number of days of supply are used to extrapolate the End Date for the Drug Exposure. Depending on the country-specific healthcare system, this supply information is either explicitly provided in the day_supply field or inferred from package size or similar information. For pharmacy prescription data, the date when the drug was dispensed plus the number of days of supply are used to extrapolate the End Date for the Drug Exposure. Depending on the country-specific healthcare system, this supply information is either explicitly provided in the day_supply field or inferred from package size or similar information.
For Procedure Drugs, usually the drug is administered on a single date (i.e., the administration date). For Procedure Drugs, usually the drug is administered on a single date (i.e., the administration date).
A standard Persistence Window of 30 days (gap, slack) is permitted between two subsequent such extrapolated DRUG_EXPOSURE records to be considered to be merged into a single Drug Era.",No,No,NA,NA,NA,NA,NA A standard Persistence Window of 30 days (gap, slack) is permitted between two subsequent such extrapolated DRUG_EXPOSURE records to be considered to be merged into a single Drug Era.",No,No,NA,NA,NA,NA,NA
drug_era,drug_exposure_count,No,integer,The count of grouped DRUG_EXPOSURE records that were included in the DRUG_ERA row,NA,No,No,NA,NA,NA,NA,NA drug_era,drug_exposure_count,No,integer,The count of grouped DRUG_EXPOSURE records that were included in the DRUG_ERA row,NA,No,No,NA,NA,NA,NA,NA
drug_era,gap_days,No,integer,NA,"The Gap Days determine how many total drug-free days are observed between all Drug Exposure events that contribute to a DRUG_ERA record. It is assumed that the drugs are ""not stockpiled"" by the patient, i.e. that if a new drug prescription or refill is observed (a new DRUG_EXPOSURE record is written), the remaining supply from the previous events is abandoned. The difference between Persistence Window and Gap Days is that the former is the maximum drug-free time allowed between two subsequent DRUG_EXPOSURE records, while the latter is the sum of actual drug-free days for the given Drug Era under the above assumption of non-stockpiling.",No,No,NA,NA,NA,NA,NA drug_era,gap_days,No,integer,NA,"The Gap Days determine how many total drug-free days are observed between all Drug Exposure events that contribute to a DRUG_ERA record. It is assumed that the drugs are ""not stockpiled"" by the patient, i.e. that if a new drug prescription or refill is observed (a new DRUG_EXPOSURE record is written), the remaining supply from the previous events is abandoned. The difference between Persistence Window and Gap Days is that the former is the maximum drug-free time allowed between two subsequent DRUG_EXPOSURE records, while the latter is the sum of actual drug-free days for the given Drug Era under the above assumption of non-stockpiling.",No,No,NA,NA,NA,NA,NA
@ -334,20 +334,20 @@ dose_era,dose_era_end_date,Yes,date,NA,The date the Person was no longer exposed
condition_era,condition_era_id,Yes,integer,NA,NA,Yes,No,NA,NA,NA,NA,NA condition_era,condition_era_id,Yes,integer,NA,NA,Yes,No,NA,NA,NA,NA,NA
condition_era,person_id,Yes,integer,NA,NA,No,No,PERSON,PERSON_ID,NA,NA,NA condition_era,person_id,Yes,integer,NA,NA,No,No,PERSON,PERSON_ID,NA,NA,NA
condition_era,condition_concept_id,Yes,integer,The Concept Id representing the Condition.,NA,No,Yes,CONCEPT,CONCEPT_ID,Condition,NA,NA condition_era,condition_concept_id,Yes,integer,The Concept Id representing the Condition.,NA,No,Yes,CONCEPT,CONCEPT_ID,Condition,NA,NA
condition_era,condition_era_start_date,Yes,date,"The start date for the Condition Era condition_era,condition_era_start_date,Yes,date,"The start date for the Condition Era
constructed from the individual constructed from the individual
instances of Condition Occurrences. instances of Condition Occurrences.
It is the start date of the very first It is the start date of the very first
chronologically recorded instance of chronologically recorded instance of
the condition with at least 31 days since any prior record of the same Condition.",NA,No,No,NA,NA,NA,NA,NA the condition with at least 31 days since any prior record of the same Condition.",NA,No,No,NA,NA,NA,NA,NA
condition_era,condition_era_end_date,Yes,date,"The end date for the Condition Era condition_era,condition_era_end_date,Yes,date,"The end date for the Condition Era
constructed from the individual constructed from the individual
instances of Condition Occurrences. instances of Condition Occurrences.
It is the end date of the final It is the end date of the final
continuously recorded instance of the continuously recorded instance of the
Condition.",NA,No,No,NA,NA,NA,NA,NA Condition.",NA,No,No,NA,NA,NA,NA,NA
condition_era,condition_occurrence_count,No,integer,"The number of individual Condition condition_era,condition_occurrence_count,No,integer,"The number of individual Condition
Occurrences used to construct the Occurrences used to construct the
condition era.",NA,No,No,NA,NA,NA,NA,NA condition era.",NA,No,No,NA,NA,NA,NA,NA
metadata,metadata_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA metadata,metadata_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
metadata,metadata_type_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA metadata,metadata_type_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
@ -369,57 +369,57 @@ cdm_source,vocabulary_version,No,varchar(20),NA,NA,No,No,NA,NA,NA,NA,NA
concept,concept_id,Yes,integer,A unique identifier for each Concept across all domains.,NA,Yes,No,NA,NA,NA,NA,NA concept,concept_id,Yes,integer,A unique identifier for each Concept across all domains.,NA,Yes,No,NA,NA,NA,NA,NA
concept,concept_name,Yes,varchar(255),"An unambiguous, meaningful and descriptive name for the Concept.",NA,No,No,NA,NA,NA,NA,NA concept,concept_name,Yes,varchar(255),"An unambiguous, meaningful and descriptive name for the Concept.",NA,No,No,NA,NA,NA,NA,NA
concept,domain_id,Yes,varchar(20),A foreign key to the [DOMAIN](https://ohdsi.github.io/CommonDataModel/cdm531.html#domain) table the Concept belongs to.,NA,No,Yes,DOMAIN,DOMAIN_ID,NA,NA,NA concept,domain_id,Yes,varchar(20),A foreign key to the [DOMAIN](https://ohdsi.github.io/CommonDataModel/cdm531.html#domain) table the Concept belongs to.,NA,No,Yes,DOMAIN,DOMAIN_ID,NA,NA,NA
concept,vocabulary_id,Yes,varchar(20),"A foreign key to the [VOCABULARY](https://ohdsi.github.io/CommonDataModel/cdm531.html#vocabulary) concept,vocabulary_id,Yes,varchar(20),"A foreign key to the [VOCABULARY](https://ohdsi.github.io/CommonDataModel/cdm531.html#vocabulary)
table indicating from which source the table indicating from which source the
Concept has been adapted.",NA,No,Yes,VOCABULARY,VOCABULARY_ID,NA,NA,NA Concept has been adapted.",NA,No,Yes,VOCABULARY,VOCABULARY_ID,NA,NA,NA
concept,concept_class_id,Yes,varchar(20),"The attribute or concept class of the concept,concept_class_id,Yes,varchar(20),"The attribute or concept class of the
Concept. Examples are 'Clinical Drug', Concept. Examples are 'Clinical Drug',
'Ingredient', 'Clinical Finding' etc.",NA,No,Yes,CONCEPT_CLASS,CONCEPT_CLASS_ID,NA,NA,NA 'Ingredient', 'Clinical Finding' etc.",NA,No,Yes,CONCEPT_CLASS,CONCEPT_CLASS_ID,NA,NA,NA
concept,standard_concept,No,varchar(1),"This flag determines where a Concept is concept,standard_concept,No,varchar(1),"This flag determines where a Concept is
a Standard Concept, i.e. is used in the a Standard Concept, i.e. is used in the
data, a Classification Concept, or a data, a Classification Concept, or a
non-standard Source Concept. The non-standard Source Concept. The
allowable values are 'S' (Standard allowable values are 'S' (Standard
Concept) and 'C' (Classification Concept) and 'C' (Classification
Concept), otherwise the content is NULL.",NA,No,No,NA,NA,NA,NA,NA Concept), otherwise the content is NULL.",NA,No,No,NA,NA,NA,NA,NA
concept,concept_code,Yes,varchar(50),"The concept code represents the identifier concept,concept_code,Yes,varchar(50),"The concept code represents the identifier
of the Concept in the source vocabulary, of the Concept in the source vocabulary,
such as SNOMED-CT concept IDs, such as SNOMED-CT concept IDs,
RxNorm RXCUIs etc. Note that concept RxNorm RXCUIs etc. Note that concept
codes are not unique across vocabularies.",NA,No,No,NA,NA,NA,NA,NA codes are not unique across vocabularies.",NA,No,No,NA,NA,NA,NA,NA
concept,valid_start_date,Yes,date,"The date when the Concept was first concept,valid_start_date,Yes,date,"The date when the Concept was first
recorded. The default value is recorded. The default value is
1-Jan-1970, meaning, the Concept has no 1-Jan-1970, meaning, the Concept has no
(known) date of inception.",NA,No,No,NA,NA,NA,NA,NA (known) date of inception.",NA,No,No,NA,NA,NA,NA,NA
concept,valid_end_date,Yes,date,"The date when the Concept became concept,valid_end_date,Yes,date,"The date when the Concept became
invalid because it was deleted or invalid because it was deleted or
superseded (updated) by a new concept. superseded (updated) by a new concept.
The default value is 31-Dec-2099, The default value is 31-Dec-2099,
meaning, the Concept is valid until it meaning, the Concept is valid until it
becomes deprecated.",NA,No,No,NA,NA,NA,NA,NA becomes deprecated.",NA,No,No,NA,NA,NA,NA,NA
concept,invalid_reason,No,varchar(1),"Reason the Concept was invalidated. concept,invalid_reason,No,varchar(1),"Reason the Concept was invalidated.
Possible values are D (deleted), U Possible values are D (deleted), U
(replaced with an update) or NULL when (replaced with an update) or NULL when
valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA
vocabulary,vocabulary_id,Yes,varchar(20),"A unique identifier for each Vocabulary, such vocabulary,vocabulary_id,Yes,varchar(20),"A unique identifier for each Vocabulary, such
as ICD9CM, SNOMED, Visit.",NA,Yes,No,NA,NA,NA,NA,NA as ICD9CM, SNOMED, Visit.",NA,Yes,No,NA,NA,NA,NA,NA
vocabulary,vocabulary_name,Yes,varchar(255),"The name describing the vocabulary, for vocabulary,vocabulary_name,Yes,varchar(255),"The name describing the vocabulary, for
example, International Classification of example, International Classification of
Diseases, Ninth Revision, Clinical Diseases, Ninth Revision, Clinical
Modification, Volume 1 and 2 (NCHS) etc.",NA,No,No,NA,NA,NA,NA,NA Modification, Volume 1 and 2 (NCHS) etc.",NA,No,No,NA,NA,NA,NA,NA
vocabulary,vocabulary_reference,Yes,varchar(255),"External reference to documentation or vocabulary,vocabulary_reference,Yes,varchar(255),"External reference to documentation or
available download of the about the available download of the about the
vocabulary.",NA,No,No,NA,NA,NA,NA,NA vocabulary.",NA,No,No,NA,NA,NA,NA,NA
vocabulary,vocabulary_version,No,varchar(255),"Version of the Vocabulary as indicated in vocabulary,vocabulary_version,No,varchar(255),"Version of the Vocabulary as indicated in
the source.",NA,No,No,NA,NA,NA,NA,NA the source.",NA,No,No,NA,NA,NA,NA,NA
vocabulary,vocabulary_concept_id,Yes,integer,A Concept that represents the Vocabulary the VOCABULARY record belongs to.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA vocabulary,vocabulary_concept_id,Yes,integer,A Concept that represents the Vocabulary the VOCABULARY record belongs to.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
domain,domain_id,Yes,varchar(20),A unique key for each domain.,NA,Yes,No,NA,NA,NA,NA,NA domain,domain_id,Yes,varchar(20),A unique key for each domain.,NA,Yes,No,NA,NA,NA,NA,NA
domain,domain_name,Yes,varchar(255),"The name describing the Domain, e.g. domain,domain_name,Yes,varchar(255),"The name describing the Domain, e.g.
Condition, Procedure, Measurement Condition, Procedure, Measurement
etc.",NA,No,No,NA,NA,NA,NA,NA etc.",NA,No,No,NA,NA,NA,NA,NA
domain,domain_concept_id,Yes,integer,A Concept representing the Domain Concept the DOMAIN record belongs to.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA domain,domain_concept_id,Yes,integer,A Concept representing the Domain Concept the DOMAIN record belongs to.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_class,concept_class_id,Yes,varchar(20),A unique key for each class.,NA,Yes,No,NA,NA,NA,NA,NA concept_class,concept_class_id,Yes,varchar(20),A unique key for each class.,NA,Yes,No,NA,NA,NA,NA,NA
concept_class,concept_class_name,Yes,varchar(255),"The name describing the Concept Class, e.g. concept_class,concept_class_name,Yes,varchar(255),"The name describing the Concept Class, e.g.
Clinical Finding, Ingredient, etc.",NA,No,No,NA,NA,NA,NA,NA Clinical Finding, Ingredient, etc.",NA,No,No,NA,NA,NA,NA,NA
concept_class,concept_class_concept_id,Yes,integer,A Concept that represents the Concept Class.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA concept_class,concept_class_concept_id,Yes,integer,A Concept that represents the Concept Class.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_relationship,concept_id_1,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA concept_relationship,concept_id_1,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
@ -428,63 +428,63 @@ concept_relationship,relationship_id,Yes,varchar(20),The relationship between CO
concept_relationship,valid_start_date,Yes,date,The date when the relationship is first recorded.,NA,No,No,NA,NA,NA,NA,NA concept_relationship,valid_start_date,Yes,date,The date when the relationship is first recorded.,NA,No,No,NA,NA,NA,NA,NA
concept_relationship,valid_end_date,Yes,date,The date when the relationship is invalidated.,NA,No,No,NA,NA,NA,NA,NA concept_relationship,valid_end_date,Yes,date,The date when the relationship is invalidated.,NA,No,No,NA,NA,NA,NA,NA
concept_relationship,invalid_reason,No,varchar(1),"Reason the relationship was invalidated. Possible values are 'D' (deleted), 'U' (updated) or NULL.",NA,No,No,NA,NA,NA,NA,NA concept_relationship,invalid_reason,No,varchar(1),"Reason the relationship was invalidated. Possible values are 'D' (deleted), 'U' (updated) or NULL.",NA,No,No,NA,NA,NA,NA,NA
relationship,relationship_id,Yes,varchar(20),"The type of relationship captured by the relationship,relationship_id,Yes,varchar(20),"The type of relationship captured by the
relationship record.",NA,Yes,No,NA,NA,NA,NA,NA relationship record.",NA,Yes,No,NA,NA,NA,NA,NA
relationship,relationship_name,Yes,varchar(255),NA,NA,No,No,NA,NA,NA,NA,NA relationship,relationship_name,Yes,varchar(255),NA,NA,No,No,NA,NA,NA,NA,NA
relationship,is_hierarchical,Yes,varchar(1),"Defines whether a relationship defines relationship,is_hierarchical,Yes,varchar(1),"Defines whether a relationship defines
concepts into classes or hierarchies. Values concepts into classes or hierarchies. Values
are 1 for hierarchical relationship or 0 if not.",NA,No,No,NA,NA,NA,NA,NA are 1 for hierarchical relationship or 0 if not.",NA,No,No,NA,NA,NA,NA,NA
relationship,defines_ancestry,Yes,varchar(1),"Defines whether a hierarchical relationship relationship,defines_ancestry,Yes,varchar(1),"Defines whether a hierarchical relationship
contributes to the concept_ancestor table. contributes to the concept_ancestor table.
These are subsets of the hierarchical These are subsets of the hierarchical
relationships. Valid values are 1 or 0.",NA,No,No,NA,NA,NA,NA,NA relationships. Valid values are 1 or 0.",NA,No,No,NA,NA,NA,NA,NA
relationship,reverse_relationship_id,Yes,varchar(20),"The identifier for the relationship used to relationship,reverse_relationship_id,Yes,varchar(20),"The identifier for the relationship used to
define the reverse relationship between two define the reverse relationship between two
concepts.",NA,No,No,NA,NA,NA,NA,NA concepts.",NA,No,No,NA,NA,NA,NA,NA
relationship,relationship_concept_id,Yes,integer,"A foreign key that refers to an identifier in relationship,relationship_concept_id,Yes,integer,"A foreign key that refers to an identifier in
the [CONCEPT](https://ohdsi.github.io/CommonDataModel/cdm531.html#concept) table for the unique the [CONCEPT](https://ohdsi.github.io/CommonDataModel/cdm531.html#concept) table for the unique
relationship concept.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA relationship concept.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_synonym,concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA concept_synonym,concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_synonym,concept_synonym_name,Yes,varchar(1000),NA,NA,No,No,NA,NA,NA,NA,NA concept_synonym,concept_synonym_name,Yes,varchar(1000),NA,NA,No,No,NA,NA,NA,NA,NA
concept_synonym,language_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA concept_synonym,language_concept_id,Yes,integer,NA,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_ancestor,ancestor_concept_id,Yes,integer,"The Concept Id for the higher-level concept concept_ancestor,ancestor_concept_id,Yes,integer,"The Concept Id for the higher-level concept
that forms the ancestor in the relationship.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA that forms the ancestor in the relationship.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_ancestor,descendant_concept_id,Yes,integer,"The Concept Id for the lower-level concept concept_ancestor,descendant_concept_id,Yes,integer,"The Concept Id for the lower-level concept
that forms the descendant in the that forms the descendant in the
relationship.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA relationship.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
concept_ancestor,min_levels_of_separation,Yes,integer,"The minimum separation in number of concept_ancestor,min_levels_of_separation,Yes,integer,"The minimum separation in number of
levels of hierarchy between ancestor and levels of hierarchy between ancestor and
descendant concepts. This is an attribute descendant concepts. This is an attribute
that is used to simplify hierarchic analysis.",NA,No,No,NA,NA,NA,NA,NA that is used to simplify hierarchic analysis.",NA,No,No,NA,NA,NA,NA,NA
concept_ancestor,max_levels_of_separation,Yes,integer,"The maximum separation in number of concept_ancestor,max_levels_of_separation,Yes,integer,"The maximum separation in number of
levels of hierarchy between ancestor and levels of hierarchy between ancestor and
descendant concepts. This is an attribute descendant concepts. This is an attribute
that is used to simplify hierarchic analysis.",NA,No,No,NA,NA,NA,NA,NA that is used to simplify hierarchic analysis.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,source_code,Yes,varchar(50),"The source code being translated source_to_concept_map,source_code,Yes,varchar(50),"The source code being translated
into a Standard Concept.",NA,No,No,NA,NA,NA,NA,NA into a Standard Concept.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,source_concept_id,Yes,integer,"A foreign key to the Source source_to_concept_map,source_concept_id,Yes,integer,"A foreign key to the Source
Concept that is being translated Concept that is being translated
into a Standard Concept.","This is either 0 or should be a number above 2 billion, which are the Concepts reserved for site-specific codes and mappings.",No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA into a Standard Concept.","This is either 0 or should be a number above 2 billion, which are the Concepts reserved for site-specific codes and mappings.",No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
source_to_concept_map,source_vocabulary_id,Yes,varchar(20),"A foreign key to the source_to_concept_map,source_vocabulary_id,Yes,varchar(20),"A foreign key to the
VOCABULARY table defining the VOCABULARY table defining the
vocabulary of the source code that vocabulary of the source code that
is being translated to a Standard is being translated to a Standard
Concept.",NA,No,No,NA,NA,NA,NA,NA Concept.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,source_code_description,No,varchar(255),"An optional description for the source_to_concept_map,source_code_description,No,varchar(255),"An optional description for the
source code. This is included as a source code. This is included as a
convenience to compare the convenience to compare the
description of the source code to description of the source code to
the name of the concept.",NA,No,No,NA,NA,NA,NA,NA the name of the concept.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,target_concept_id,Yes,integer,"The target Concept source_to_concept_map,target_concept_id,Yes,integer,"The target Concept
to which the source code is being to which the source code is being
mapped.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA mapped.",NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
source_to_concept_map,target_vocabulary_id,Yes,varchar(20),The Vocabulary of the target Concept.,NA,No,Yes,VOCABULARY,VOCABULARY_ID,NA,NA,NA source_to_concept_map,target_vocabulary_id,Yes,varchar(20),The Vocabulary of the target Concept.,NA,No,Yes,VOCABULARY,VOCABULARY_ID,NA,NA,NA
source_to_concept_map,valid_start_date,Yes,date,"The date when the mapping source_to_concept_map,valid_start_date,Yes,date,"The date when the mapping
instance was first recorded.",NA,No,No,NA,NA,NA,NA,NA instance was first recorded.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,valid_end_date,Yes,date,"The date when the mapping source_to_concept_map,valid_end_date,Yes,date,"The date when the mapping
instance became invalid because it instance became invalid because it
was deleted or superseded was deleted or superseded
(updated) by a new relationship. (updated) by a new relationship.
Default value is 31-Dec-2099.",NA,No,No,NA,NA,NA,NA,NA Default value is 31-Dec-2099.",NA,No,No,NA,NA,NA,NA,NA
source_to_concept_map,invalid_reason,No,varchar(1),"Reason the mapping instance was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA source_to_concept_map,invalid_reason,No,varchar(1),"Reason the mapping instance was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA
drug_strength,drug_concept_id,Yes,integer,The Concept representing the Branded Drug or Clinical Drug Product.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA drug_strength,drug_concept_id,Yes,integer,The Concept representing the Branded Drug or Clinical Drug Product.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
@ -496,8 +496,8 @@ drug_strength,numerator_unit_concept_id,No,integer,The Concept representing the
drug_strength,denominator_value,No,float,"The amount of total liquid (or other divisible product, such as ointment, gel, spray, etc.).",NA,No,No,NA,NA,NA,NA,NA drug_strength,denominator_value,No,float,"The amount of total liquid (or other divisible product, such as ointment, gel, spray, etc.).",NA,No,No,NA,NA,NA,NA,NA
drug_strength,denominator_unit_concept_id,No,integer,The Concept representing the denominator unit for the concentration of active ingredient.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA drug_strength,denominator_unit_concept_id,No,integer,The Concept representing the denominator unit for the concentration of active ingredient.,NA,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
drug_strength,box_size,No,integer,The number of units of Clinical Branded Drug or Quantified Clinical or Branded Drug contained in a box as dispensed to the patient.,NA,No,No,NA,NA,NA,NA,NA drug_strength,box_size,No,integer,The number of units of Clinical Branded Drug or Quantified Clinical or Branded Drug contained in a box as dispensed to the patient.,NA,No,No,NA,NA,NA,NA,NA
drug_strength,valid_start_date,Yes,date,"The date when the Concept was first drug_strength,valid_start_date,Yes,date,"The date when the Concept was first
recorded. The default value is recorded. The default value is
1-Jan-1970.",NA,No,No,NA,NA,NA,NA,NA 1-Jan-1970.",NA,No,No,NA,NA,NA,NA,NA
drug_strength,valid_end_date,Yes,date,The date when then Concept became invalid.,NA,No,No,NA,NA,NA,NA,NA drug_strength,valid_end_date,Yes,date,The date when then Concept became invalid.,NA,No,No,NA,NA,NA,NA,NA
drug_strength,invalid_reason,No,varchar(1),"Reason the concept was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA drug_strength,invalid_reason,No,varchar(1),"Reason the concept was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value.",NA,No,No,NA,NA,NA,NA,NA

1 cdmTableName cdmFieldName isRequired cdmDatatype userGuidance etlConventions isPrimaryKey isForeignKey fkTableName fkFieldName fkDomain fkClass unique DQ identifiers
27 visit_occurrence visit_concept_id Yes integer This field contains a concept id representing the kind of visit, like inpatient or outpatient. All concepts in this field should be standard and belong to the Visit domain. Populate this field based on the kind of visit that took place for the person. For example this could be "Inpatient Visit", "Outpatient Visit", "Ambulatory Visit", etc. This table will contain standard concepts in the Visit domain. These concepts are arranged in a hierarchical structure to facilitate cohort definitions by rolling up to generally familiar Visits adopted in most healthcare systems worldwide. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=). No Yes CONCEPT CONCEPT_ID Visit NA NA
28 visit_occurrence visit_start_date Yes date For inpatient visits, the start date is typically the admission date. For outpatient visits the start date and end date will be the same. When populating VISIT_START_DATE, you should think about the patient experience to make decisions on how to define visits. In the case of an inpatient visit this should be the date the patient was admitted to the hospital or institution. In all other cases this should be the date of the patient-provider interaction. If this information is not available the record should be dropped. No No NA NA NA NA NA
29 visit_occurrence visit_start_datetime No datetime NA If no time is given for the start date of a visit, set it to midnight (00:00:0000). No No NA NA NA NA NA
30 visit_occurrence visit_end_date Yes date For inpatient visits the end date is typically the discharge date. Visit end dates are mandatory. If end dates are not provided in the source there are three ways in which to derive them: - Outpatient Visit: visit_end_datetime = visit_start_datetime - Emergency Room Visit: visit_end_datetime = visit_start_datetime - Inpatient Visit: Usually there is information about discharge. If not, you should be able to derive the end date from the sudden decline of activity or from the absence of inpatient procedures/drugs. - Non-hospital institution Visits: Particularly for claims data, if end dates are not provided assume the visit is for the duration of month that it occurs. For Inpatient Visits ongoing at the date of ETL, put date of processing the data into visit_end_datetime and visit_type_concept_id with 32220 "Still patient" to identify the visit as incomplete. - All other Visits: visit_end_datetime = visit_start_datetime. If this is a one-day visit the end date should match the start date. No No NA NA NA NA NA
31 visit_occurrence visit_end_datetime No datetime NA If no time is given for the end date of a visit, set it to midnight (00:00:0000). No No NA NA NA NA NA
32 visit_occurrence visit_type_concept_id Yes Integer Use this field to understand the provenance of the visit record, or where the record comes from. Populate this field based on the provenance of the visit record, as in whether it came from an EHR record or billing claim. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT). No Yes CONCEPT CONCEPT_ID Type Concept NA NA
33 visit_occurrence provider_id No integer There will only be one provider per visit record and the ETL document should clearly state how they were chosen (attending, admitting, etc.). If there are multiple providers associated with a visit in the source, this can be reflected in the event tables (CONDITION_OCCURRENCE, PROCEDURE_OCCURRENCE, etc.) or in the VISIT_DETAIL table. If there are multiple providers associated with a visit, you will need to choose which one to put here. The additional providers can be stored in the [VISIT_DETAIL](https://ohdsi.github.io/CommonDataModel/cdm531.html#visit_detail) table. No Yes PROVIDER PROVIDER_ID NA NA NA
34 visit_occurrence care_site_id No integer This field provides information about the Care Site where the Visit took place. There should only be one Care Site associated with a Visit. No Yes CARE_SITE CARE_SITE_ID NA NA NA
35 visit_occurrence visit_source_value No varchar(50) This field houses the verbatim value from the source data representing the kind of visit that took place (inpatient, outpatient, emergency, etc.) If there is information about the kind of visit in the source data that value should be stored here. If a visit is an amalgamation of visits from the source then use a hierarchy to choose the visit source value, such as IP -> ER-> OP. This should line up with the logic chosen to determine how visits are created. No No NA NA NA NA NA
36 visit_occurrence visit_source_concept_id No integer NA If the visit source value is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
37 visit_occurrence admitting_source_concept_id No integer Use this field to determine where the patient was admitted from. This concept is part of the visit domain and can indicate if a patient was admitted to the hospital from a long-term care facility, for example. If available, map the admitting_source_value to a standard concept in the visit domain. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=). If a person was admitted from home or was self-referred, set this to 0. No Yes CONCEPT CONCEPT_ID Visit NA NA
38 visit_occurrence admitting_source_value No varchar(50) NA This information may be called something different in the source data but the field is meant to contain a value indicating where a person was admitted from. Typically this applies only to visits that have a length of stay, like inpatient visits or long-term care visits. No No NA NA NA NA NA
50 visit_detail provider_id No integer There will only be one provider per **visit** record and the ETL document should clearly state how they were chosen (attending, admitting, etc.). This is a typical reason for leveraging the VISIT_DETAIL table as even though each VISIT_DETAIL record can only have one provider, there is no limit to the number of VISIT_DETAIL records that can be associated to a VISIT_OCCURRENCE record. The additional providers associated to a Visit can be stored in this table where each VISIT_DETAIL record represents a different provider. No Yes PROVIDER PROVIDER_ID NA NA NA
51 visit_detail care_site_id No integer This field provides information about the Care Site where the Visit Detail took place. There should only be one Care Site associated with a Visit Detail. No Yes CARE_SITE CARE_SITE_ID NA NA NA
52 visit_detail visit_detail_source_value No varchar(50) This field houses the verbatim value from the source data representing the kind of visit detail that took place (inpatient, outpatient, emergency, etc.) If there is information about the kind of visit detail in the source data that value should be stored here. If a visit is an amalgamation of visits from the source then use a hierarchy to choose the VISIT_DETAIL_SOURCE_VALUE, such as IP -> ER-> OP. This should line up with the logic chosen to determine how visits are created. No No NA NA NA NA NA
53 visit_detail visit_detail_source_concept_id No Integer NA If the VISIT_DETAIL_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
54 visit_detail admitting_source_value No Varchar(50) NA This information may be called something different in the source data but the field is meant to contain a value indicating where a person was admitted from. Typically this applies only to visits that have a length of stay, like inpatient visits or long-term care visits. No No NA NA NA NA NA
55 visit_detail admitting_source_concept_id No Integer Use this field to determine where the patient was admitted from. This concept is part of the visit domain and can indicate if a patient was admitted to the hospital from a long-term care facility, for example. If available, map the admitting_source_value to a standard concept in the visit domain. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=). If a person was admitted from home or was self-referred, set this to 0. No Yes CONCEPT CONCEPT_ID Visit NA NA
56 visit_detail discharge_to_source_value No Varchar(50) NA This information may be called something different in the source data but the field is meant to contain a value indicating where a person was discharged to after a visit, as in they went home or were moved to long-term care. Typically this applies only to visits that have a length of stay of a day or more. No No NA NA NA NA NA
57 visit_detail discharge_to_concept_id No integer Use this field to determine where the patient was discharged to after a visit detail record. This concept is part of the visit domain and can indicate if a patient was discharged to home or sent to a long-term care facility, for example. If available, map the DISCHARGE_TO_SOURCE_VALUE to a Standard Concept in the Visit domain. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=1&pageSize=15&query=). No Yes CONCEPT CONCEPT_ID Visit NA NA
58 visit_detail preceding_visit_detail_id No integer Use this field to find the visit detail that occurred for the person prior to the given visit detail record. There could be a few days or a few years in between. The PRECEDING_VISIT_DETAIL_ID can be used to link a visit immediately preceding the current Visit Detail. Note this is not symmetrical, and there is no such thing as a "following_visit_id". No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
59 visit_detail visit_detail_parent_id No integer Use this field to find the visit detail that subsumes the given visit detail record. This is used in the case that a visit detail record needs to be nested beyond the VISIT_OCCURRENCE/VISIT_DETAIL relationship. If there are multiple nested levels to how Visits are represented in the source, the VISIT_DETAIL_PARENT_ID can be used to record this relationship. No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
60 visit_detail visit_occurrence_id Yes integer Use this field to link the VISIT_DETAIL record to its VISIT_OCCURRENCE. Put the VISIT_OCCURRENCE_ID that subsumes the VISIT_DETAIL record here. No Yes VISIT_OCCURRENCE VISIT_OCCURRENCE_ID NA NA NA
61 condition_occurrence condition_occurrence_id Yes integer The unique key given to a condition record for a person. Refer to the ETL for how duplicate conditions during the same visit were handled. Each instance of a condition present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same condition within the same visit. It is valid to keep these duplicates and assign them individual, unique, CONDITION_OCCURRENCE_IDs, though it is up to the ETL how they should be handled. Yes No NA NA NA NA NA
88 drug_exposure quantity No float NA To find the dose form of a drug the RELATIONSHIP table can be used where the relationship_id is 'Has dose form'. If liquid, quantity stands for the total amount dispensed or ordered of ingredient in the units given by the drug_strength table. If the unit from the source data does not align with the unit in the DRUG_STRENGTH table the quantity should be converted to the correct unit given in DRUG_STRENGTH. For clinical drugs with fixed dose forms (tablets etc.) the quantity is the number of units/tablets/capsules prescribed or dispensed (can be partial, but then only 1/2 or 1/3, not 0.01). Clinical drugs with divisible dose forms (injections) the quantity is the amount of ingredient the patient got. For example, if the injection is 2mg/mL but the patient got 80mL then quantity is reported as 160. Quantified clinical drugs with divisible dose forms (prefilled syringes), the quantity is the amount of ingredient similar to clinical drugs. Please see [how to calculate drug dose](https://ohdsi.github.io/CommonDataModel/drug_dose.html) for more information. No No NA NA NA NA NA
89 drug_exposure days_supply No integer The number of days of supply of the medication as recorded in the original prescription or dispensing record. Days supply can differ from actual drug duration (i.e. prescribed days supply vs actual exposure). The field should be left empty if the source data does not contain a verbatim days_supply, and should not be calculated from other fields.<br><br>Negative values are not allowed. If the source has negative days supply the record should be dropped as it is unknown if the patient actually took the drug. Several actions are possible: 1) record is not trustworthy and we remove the record entirely. 2) we trust the record and leave days_supply empty or 3) record needs to be combined with other record (e.g. reversal of prescription). High values (>365 days) should be investigated. If considered an error in the source data (e.g. typo), the value needs to be excluded to prevent creation of unrealistic long eras. No No NA NA NA NA NA
90 drug_exposure sig No varchar(MAX) This is the verbatim instruction for the drug as written by the provider. Put the written out instructions for the drug as it is verbatim in the source, if available. No No NA NA NA NA NA
91 drug_exposure route_concept_id No integer NA The standard CONCEPT_ID that the ROUTE_SOURCE_VALUE maps to in the route domain. No Yes CONCEPT CONCEPT_ID Route NA NA
92 drug_exposure lot_number No varchar(50) NA NA No No NA NA NA NA NA
93 drug_exposure provider_id No integer The Provider associated with drug record, e.g. the provider who wrote the prescription or the provider who administered the drug. The ETL may need to make a choice as to which PROVIDER_ID to put here. Based on what is available this may or may not be different than the provider associated with the overall VISIT_OCCURRENCE record, for example the ordering vs administering physician on an EHR record. No Yes PROVIDER PROVIDER_ID NA NA NA
94 drug_exposure visit_occurrence_id No integer The Visit during which the drug was prescribed, administered or dispensed. To populate this field drug exposures must be explicitly initiated in the visit. No Yes VISIT_OCCURRENCE VISIT_OCCURRENCE_ID NA NA NA
95 drug_exposure visit_detail_id No integer The VISIT_DETAIL record during which the drug exposure occurred. For example, if the person was in the ICU at the time of the drug administration the VISIT_OCCURRENCE record would reflect the overall hospital stay and the VISIT_DETAIL record would reflect the ICU stay during the hospital visit. Same rules apply as for the VISIT_OCCURRENCE_ID. No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
96 drug_exposure drug_source_value No varchar(50) This field houses the verbatim value from the source data representing the drug exposure that occurred. For example, this could be an NDC or Gemscript code. This code is mapped to a Standard Drug Concept in the Standardized Vocabularies and the original code is stored here for reference. No No NA NA NA NA NA
97 drug_exposure drug_source_concept_id No integer This is the concept representing the drug source value and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Drug necessary for a given analytic use case. Consider using DRUG_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network. If the DRUG_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
98 drug_exposure route_source_value No varchar(50) This field houses the verbatim value from the source data representing the drug route. This information may be called something different in the source data but the field is meant to contain a value indicating when and how a drug was given to a patient. This source value is mapped to a standard concept which is stored in the ROUTE_CONCEPT_ID field. No No NA NA NA NA NA
99 drug_exposure dose_unit_source_value No varchar(50) This field houses the verbatim value from the source data representing the dose unit of the drug given. This information may be called something different in the source data but the field is meant to contain a value indicating the unit of dosage of drug given to the patient. This is an older column and will be deprecated in an upcoming version. No No NA NA NA NA NA
100 procedure_occurrence procedure_occurrence_id Yes integer The unique key given to a procedure record for a person. Refer to the ETL for how duplicate procedures during the same visit were handled. Each instance of a procedure occurrence in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same procedure within the same visit. It is valid to keep these duplicates and assign them individual, unique, PROCEDURE_OCCURRENCE_IDs, though it is up to the ETL how they should be handled. Yes No NA NA NA NA NA
101 procedure_occurrence person_id Yes integer The PERSON_ID of the PERSON for whom the procedure is recorded. This may be a system generated code. NA No Yes PERSON PERSON_ID NA NA NA
102 procedure_occurrence procedure_concept_id Yes integer The PROCEDURE_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source value which represents a procedure The CONCEPT_ID that the PROCEDURE_SOURCE_VALUE maps to. Only records whose source values map to standard concepts with a domain of "Procedure" should go in this table. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Procedure&standardConcept=Standard&page=1&pageSize=15&query=). No Yes CONCEPT CONCEPT_ID Procedure NA NA
103 procedure_occurrence procedure_date Yes date Use this date to determine the date the procedure occurred. If a procedure lasts more than a day, then it should be recorded as a separate record for each day the procedure occurred, this logic is in lieu of the procedure_end_date, which will be added in a future version of the CDM. No No NA NA NA NA NA
104 procedure_occurrence procedure_datetime No datetime NA This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000) No No NA NA NA NA NA
142 measurement provider_id No integer The provider associated with measurement record, e.g. the provider who ordered the test or the provider who recorded the result. The ETL may need to make a choice as to which PROVIDER_ID to put here. Based on what is available this may or may not be different than the provider associated with the overall VISIT_OCCURRENCE record. For example the admitting vs attending physician on an EHR record. No Yes PROVIDER PROVIDER_ID NA NA NA
143 measurement visit_occurrence_id No integer The visit during which the Measurement occurred. Depending on the structure of the source data, this may have to be determined based on dates. If a MEASUREMENT_DATE occurs within the start and end date of a Visit it is a valid ETL choice to choose the VISIT_OCCURRENCE_ID from the visit that subsumes it, even if not explicitly stated in the data. While not required, an attempt should be made to locate the VISIT_OCCURRENCE_ID of the measurement record. If a measurement is related to a visit explicitly in the source data, it is possible that the result date of the Measurement falls outside of the bounds of the Visit dates. No Yes VISIT_OCCURRENCE VISIT_OCCURRENCE_ID NA NA NA
144 measurement visit_detail_id No integer The VISIT_DETAIL record during which the Measurement occurred. For example, if the Person was in the ICU at the time the VISIT_OCCURRENCE record would reflect the overall hospital stay and the VISIT_DETAIL record would reflect the ICU stay during the hospital visit. Same rules apply as for the VISIT_OCCURRENCE_ID. No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
145 measurement measurement_source_value No varchar(50) This field contains the exact value from the source data that represents the measurement that occurred. This value corresponds to a standardized CONCEPT_ID found in MEASUREMENT_CONCEPT_ID and in the 'Measurement' domain within the Standardized Vocabularies. The original code is retained here for reference purposes. No No NA NA NA NA NA
146 measurement measurement_source_concept_id No integer This is the concept representing the MEASUREMENT_SOURCE_VALUE and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Measurement necessary for a given analytic use case. Consider using MEASUREMENT_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network. If the MEASUREMENT_SOURCE_VALUE is coded in the source data using a vocabulary supported by OMOP Standardized Vocabularies, insert the CONCEPT_ID representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
147 measurement unit_source_value No varchar(50) This field contains the exact value from the source data that represents the unit of measurement used. This value corresponds to a standardized CONCEPT_ID found in UNIT_CONCEPT_ID and in the 'Unit' domain within the Standardized Vocabularies. The original code is retained here for reference purposes. No No NA NA NA NA NA
148 measurement value_source_value No varchar(50) This field houses the verbatim result value of the Measurement from the source data . If both a continuous and categorical result are given in the source data such that both VALUE_AS_NUMBER and VALUE_AS_CONCEPT_ID are both included, store the verbatim value that was mapped to VALUE_AS_CONCEPT_ID here. No No NA NA NA NA NA
190 note_nlp section_concept_id No integer NA The SECTION_CONCEPT_ID should be used to represent the note section contained in the NOTE_NLP record. These concepts can be found as parts of document panels and are based on the type of note written, i.e. a discharge summary. These panels can be found as concepts with the relationship 'Subsumes' to CONCEPT_ID [45875957](https://athena.ohdsi.org/search-terms/terms/45875957). No Yes CONCEPT CONCEPT_ID NA NA NA
191 note_nlp snippet No varchar(250) A small window of text surrounding the term NA No No NA NA NA NA NA
192 note_nlp "offset" No varchar(50) Character offset of the extracted term in the input note NA No No NA NA NA NA NA
193 note_nlp lexical_variant Yes varchar(250) Raw text extracted from the NLP tool. NA No No NA NA NA NA NA
194 note_nlp note_nlp_concept_id No integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
195 note_nlp note_nlp_source_concept_id No integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
196 note_nlp nlp_system No varchar(250) NA Name and version of the NLP system that extracted the term. Useful for data provenance. No No NA NA NA NA NA
211 specimen disease_status_concept_id No integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
212 specimen specimen_source_id No varchar(50) This is the identifier for the specimen from the source system. NA No No NA NA NA NA NA
213 specimen specimen_source_value No varchar(50) NA NA No No NA NA NA NA NA
214 specimen unit_source_value No varchar(50) NA This unit for the quantity of the specimen, as represented in the source. No No NA NA NA NA NA
215 specimen anatomic_site_source_value No varchar(50) NA This is the site on the body where the specimen was taken from, as represented in the source. No No NA NA NA NA NA
216 specimen disease_status_source_value No varchar(50) NA NA No No NA NA NA NA NA
217 fact_relationship domain_concept_id_1 Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
218 fact_relationship fact_id_1 Yes integer NA NA No No NA NA NA NA NA
219 fact_relationship domain_concept_id_2 Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
220 fact_relationship fact_id_2 Yes integer NA NA No No NA NA NA NA NA
221 fact_relationship relationship_concept_id Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
222 location location_id Yes integer The unique key given to a unique Location. Each instance of a Location in the source data should be assigned this unique key. Yes No NA NA NA NA NA
223 location address_1 No varchar(50) This is the first line of the address. NA No No NA NA NA NA NA
224 location address_2 No varchar(50) This is the second line of the address NA No No NA NA NA NA NA
225 location city No varchar(50) NA NA No No NA NA NA NA NA
226 location state No varchar(2) NA NA No No NA NA NA NA NA
227 location zip No varchar(9) NA Zip codes are handled as strings of up to 9 characters length. For US addresses, these represent either a 3-digit abbreviated Zip code as provided by many sources for patient protection reasons, the full 5-digit Zip or the 9-digit (ZIP + 4) codes. Unless for specific reasons analytical methods should expect and utilize only the first 3 digits. For international addresses, different rules apply. No No NA NA NA NA NA
228 location county No varchar(20) NA NA No No NA NA NA NA NA
229 location location_source_value No varchar(50) NA Put the verbatim value for the location here, as it shows up in the source. No No NA NA NA NA NA
230 care_site care_site_id Yes integer NA Assign an id to each unique combination of location_id and place_of_service_source_value Yes No NA NA NA NA NA
231 care_site care_site_name No varchar(255) The name of the care_site as it appears in the source data NA No No NA NA NA NA NA
232 care_site place_of_service_concept_id No integer This is a high-level way of characterizing a Care Site. Typically, however, Care Sites can provide care in multiple settings (inpatient, outpatient, etc.) and this granularity should be reflected in the visit. Choose the concept in the visit domain that best represents the setting in which healthcare is provided in the Care Site. If most visits in a Care Site are Inpatient, then the place_of_service_concept_id should represent Inpatient. If information is present about a unique Care Site (e.g. Pharmacy) then a Care Site record should be created. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Visit&standardConcept=Standard&page=2&pageSize=15&query=). For information about how to populate this field please see the [THEMIS Conventions](https://ohdsi.github.io/Themis/tag_place_of_service.html). No Yes CONCEPT CONCEPT_ID NA NA NA
318 cdm_source source_description No varchar(MAX) The description of the CDM instance. NA No No NA NA NA NA NA
319 cdm_source source_documentation_reference No varchar(255) NA NA No No NA NA NA NA NA
320 cdm_source cdm_etl_reference No varchar(255) NA Version of the ETL script used. e.g. link to the Git release No No NA NA NA NA NA
321 cdm_source source_release_date No date The date the data was extracted from the source system. In some systems that is the same as the date the ETL was run. Typically the latest even date in the source is on the source_release_date. NA No No NA NA NA NA NA
322 cdm_source cdm_release_date No date The date the ETL script was completed. Typically this is after the source_release_date. NA No No NA NA NA NA NA
323 cdm_source cdm_version No varchar(10) Version of the OMOP CDM used as string. e.g. v5.4 NA No No NA NA NA NA NA
324 cdm_source vocabulary_version No varchar(20) NA NA No No NA NA NA NA NA
325 concept concept_id Yes integer A unique identifier for each Concept across all domains. NA Yes No NA NA NA NA NA
326 concept concept_name Yes varchar(255) An unambiguous, meaningful and descriptive name for the Concept. NA No No NA NA NA NA NA
334 concept invalid_reason No varchar(1) Reason the Concept was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value. NA No No NA NA NA NA NA
335 vocabulary vocabulary_id Yes varchar(20) A unique identifier for each Vocabulary, such as ICD9CM, SNOMED, Visit. NA Yes No NA NA NA NA NA
336 vocabulary vocabulary_name Yes varchar(255) The name describing the vocabulary, for example, International Classification of Diseases, Ninth Revision, Clinical Modification, Volume 1 and 2 (NCHS) etc. NA No No NA NA NA NA NA
337 vocabulary vocabulary_reference Yes varchar(255) External reference to documentation or available download of the about the vocabulary. NA No No NA NA NA NA NA
338 vocabulary vocabulary_version No varchar(255) Version of the Vocabulary as indicated in the source. NA No No NA NA NA NA NA
339 vocabulary vocabulary_concept_id Yes integer A Concept that represents the Vocabulary the VOCABULARY record belongs to. NA No Yes CONCEPT CONCEPT_ID NA NA NA
340 domain domain_id Yes varchar(20) A unique key for each domain. NA Yes No NA NA NA NA NA
341 domain domain_name Yes varchar(255) The name describing the Domain, e.g. Condition, Procedure, Measurement etc. NA No No NA NA NA NA NA
342 domain domain_concept_id Yes integer A Concept representing the Domain Concept the DOMAIN record belongs to. NA No Yes CONCEPT CONCEPT_ID NA NA NA
343 concept_class concept_class_id Yes varchar(20) A unique key for each class. NA Yes No NA NA NA NA NA
344 concept_class concept_class_name Yes varchar(255) The name describing the Concept Class, e.g. Clinical Finding, Ingredient, etc. NA No No NA NA NA NA NA
345 concept_class concept_class_concept_id Yes integer A Concept that represents the Concept Class. NA No Yes CONCEPT CONCEPT_ID NA NA NA
346 concept_relationship concept_id_1 Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
347 concept_relationship concept_id_2 Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
348 concept_relationship relationship_id Yes varchar(20) The relationship between CONCEPT_ID_1 and CONCEPT_ID_2. Please see the [Vocabulary Conventions](https://ohdsi.github.io/CommonDataModel/dataModelConventions.html#concept_relationships). for more information. NA No Yes RELATIONSHIP RELATIONSHIP_ID NA NA NA
349 concept_relationship valid_start_date Yes date The date when the relationship is first recorded. NA No No NA NA NA NA NA
350 concept_relationship valid_end_date Yes date The date when the relationship is invalidated. NA No No NA NA NA NA NA
351 concept_relationship invalid_reason No varchar(1) Reason the relationship was invalidated. Possible values are 'D' (deleted), 'U' (updated) or NULL. NA No No NA NA NA NA NA
352 relationship relationship_id Yes varchar(20) The type of relationship captured by the relationship record. NA Yes No NA NA NA NA NA
353 relationship relationship_name Yes varchar(255) NA NA No No NA NA NA NA NA
369 source_to_concept_map target_concept_id Yes integer The target Concept to which the source code is being mapped. NA No Yes CONCEPT CONCEPT_ID NA NA NA
370 source_to_concept_map target_vocabulary_id Yes varchar(20) The Vocabulary of the target Concept. NA No Yes VOCABULARY VOCABULARY_ID NA NA NA
371 source_to_concept_map valid_start_date Yes date The date when the mapping instance was first recorded. NA No No NA NA NA NA NA
372 source_to_concept_map valid_end_date Yes date The date when the mapping instance became invalid because it was deleted or superseded (updated) by a new relationship. Default value is 31-Dec-2099. NA No No NA NA NA NA NA
373 source_to_concept_map invalid_reason No varchar(1) Reason the mapping instance was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value. NA No No NA NA NA NA NA
374 drug_strength drug_concept_id Yes integer The Concept representing the Branded Drug or Clinical Drug Product. NA No Yes CONCEPT CONCEPT_ID NA NA NA
375 drug_strength ingredient_concept_id Yes integer The Concept representing the active ingredient contained within the drug product. Combination Drugs will have more than one record in this table, one for each active Ingredient. No Yes CONCEPT CONCEPT_ID NA NA NA
376 drug_strength amount_value No float The numeric value or the amount of active ingredient contained within the drug product. NA No No NA NA NA NA NA
377 drug_strength amount_unit_concept_id No integer The Concept representing the Unit of measure for the amount of active ingredient contained within the drug product. NA No Yes CONCEPT CONCEPT_ID NA NA NA
378 drug_strength numerator_value No float The concentration of the active ingredient contained within the drug product. NA No No NA NA NA NA NA
379 drug_strength numerator_unit_concept_id No integer The Concept representing the Unit of measure for the concentration of active ingredient. NA No Yes CONCEPT CONCEPT_ID NA NA NA
380 drug_strength denominator_value No float The amount of total liquid (or other divisible product, such as ointment, gel, spray, etc.). NA No No NA NA NA NA NA
381 drug_strength denominator_unit_concept_id No integer The Concept representing the denominator unit for the concentration of active ingredient. NA No Yes CONCEPT CONCEPT_ID NA NA NA
382 drug_strength box_size No integer The number of units of Clinical Branded Drug or Quantified Clinical or Branded Drug contained in a box as dispensed to the patient. NA No No NA NA NA NA NA
383 drug_strength valid_start_date Yes date The date when the Concept was first recorded. The default value is 1-Jan-1970. NA No No NA NA NA NA NA
384 drug_strength valid_end_date Yes date The date when then Concept became invalid. NA No No NA NA NA NA NA
385 drug_strength invalid_reason No varchar(1) Reason the concept was invalidated. Possible values are D (deleted), U (replaced with an update) or NULL when valid_end_date has the default value. NA No No NA NA NA NA NA
386 cohort_definition cohort_definition_id Yes integer This is the identifier given to the cohort, usually by the ATLAS application NA No No NA NA NA NA NA
387 cohort_definition cohort_definition_name Yes varchar(255) A short description of the cohort NA No No NA NA NA NA NA
388 cohort_definition cohort_definition_description No varchar(MAX) A complete description of the cohort. NA No No NA NA NA NA NA
389 cohort_definition definition_type_concept_id Yes integer Type defining what kind of Cohort Definition the record represents and how the syntax may be executed. NA No Yes CONCEPT CONCEPT_ID NA NA NA
390 cohort_definition cohort_definition_syntax No varchar(MAX) Syntax or code to operationalize the Cohort Definition. NA No No NA NA NA NA NA
391 cohort_definition subject_concept_id Yes integer This field contains a Concept that represents the domain of the subjects that are members of the cohort (e.g., Person, Provider, Visit). NA No Yes CONCEPT CONCEPT_ID NA NA NA
392 cohort_definition cohort_initiation_date No date A date to indicate when the Cohort was initiated in the COHORT table. NA No No NA NA NA NA NA
393 attribute_definition attribute_definition_id Yes integer NA NA No No NA NA NA NA NA
394 attribute_definition attribute_name Yes varchar(255) NA NA No No NA NA NA NA NA
395 attribute_definition attribute_description No varchar(MAX) NA NA No No NA NA NA NA NA
396 attribute_definition attribute_type_concept_id Yes integer NA NA No Yes CONCEPT CONCEPT_ID NA NA NA
397 attribute_definition attribute_syntax No varchar(MAX) NA NA No No NA NA NA NA NA
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
496
497
498
499
500
501
502
503

View File

@ -88,10 +88,10 @@ condition_occurrence,condition_source_concept_id,No,integer,"This is the concept
condition_occurrence,condition_status_source_value,No,varchar(50),This field houses the verbatim value from the source data representing the condition status.,This information may be called something different in the source data but the field is meant to contain a value indicating when and how a diagnosis was given to a patient. This source value is mapped to a standard concept which is stored in the CONDITION_STATUS_CONCEPT_ID field.,No,No,NA,NA,NA,NA,NA condition_occurrence,condition_status_source_value,No,varchar(50),This field houses the verbatim value from the source data representing the condition status.,This information may be called something different in the source data but the field is meant to contain a value indicating when and how a diagnosis was given to a patient. This source value is mapped to a standard concept which is stored in the CONDITION_STATUS_CONCEPT_ID field.,No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_id,Yes,integer,The unique key given to records of drug dispensings or administrations for a person. Refer to the ETL for how duplicate drugs during the same visit were handled.,"Each instance of a drug dispensing or administration present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same drug within the same visit. It is valid to keep these duplicates and assign them individual, unique, DRUG_EXPOSURE_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_id,Yes,integer,The unique key given to records of drug dispensings or administrations for a person. Refer to the ETL for how duplicate drugs during the same visit were handled.,"Each instance of a drug dispensing or administration present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same drug within the same visit. It is valid to keep these duplicates and assign them individual, unique, DRUG_EXPOSURE_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA
drug_exposure,person_id,Yes,integer,The PERSON_ID of the PERSON for whom the drug dispensing or administration is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA drug_exposure,person_id,Yes,integer,The PERSON_ID of the PERSON for whom the drug dispensing or administration is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
drug_exposure,drug_concept_id,Yes,integer,"The DRUG_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source concept id which represents a drug product or molecule otherwise introduced to the body. The drug concepts can have a varying degree of information about drug strength and dose. This information is relevant in the context of quantity and administration information in the subsequent fields plus strength information from the DRUG_STRENGTH table, provided as part of the standard vocabulary download.","The CONCEPT_ID that the DRUG_SOURCE_VALUE maps to. The concept id should be derived either from mapping from the source concept id or by picking the drug concept representing the most amount of detail you have. Records whose source values map to standard concepts with a domain of Drug should go in this table. When the Drug Source Value of the code cannot be translated into Standard Drug Concept IDs, a Drug exposure entry is stored with only the corresponding SOURCE_CONCEPT_ID and DRUG_SOURCE_VALUE and a DRUG_CONCEPT_ID of 0. The Drug Concept with the most detailed content of information is preferred during the mapping process. These are indicated in the CONCEPT_CLASS_ID field of the Concept and are recorded in the following order of precedence: ÒMarketed ProductÓ, ÒBranded PackÓ, ÒClinical PackÓ, ÒBranded DrugÓ, ÒClinical DrugÓ, ÒBranded Drug ComponentÓ, ÒClinical Drug ComponentÓ, ÒBranded Drug FormÓ, ÒClinical Drug FormÓ, and only if no other information is available ÒIngredientÓ. Note: If only the drug class is known, the DRUG_CONCEPT_ID field should contain 0. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Drug&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Drug,NA,NA drug_exposure,drug_concept_id,Yes,integer,"The DRUG_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source concept id which represents a drug product or molecule otherwise introduced to the body. The drug concepts can have a varying degree of information about drug strength and dose. This information is relevant in the context of quantity and administration information in the subsequent fields plus strength information from the DRUG_STRENGTH table, provided as part of the standard vocabulary download.","The CONCEPT_ID that the DRUG_SOURCE_VALUE maps to. The concept id should be derived either from mapping from the source concept id or by picking the drug concept representing the most amount of detail you have. Records whose source values map to standard concepts with a domain of Drug should go in this table. When the Drug Source Value of the code cannot be translated into Standard Drug Concept IDs, a Drug exposure entry is stored with only the corresponding SOURCE_CONCEPT_ID and DRUG_SOURCE_VALUE and a DRUG_CONCEPT_ID of 0. The Drug Concept with the most detailed content of information is preferred during the mapping process. These are indicated in the CONCEPT_CLASS_ID field of the Concept and are recorded in the following order of precedence: <EFBFBD>Marketed Product<63>, <20>Branded Pack<63>, <20>Clinical Pack<63>, <20>Branded Drug<75>, <20>Clinical Drug<75>, <20>Branded Drug Component<6E>, <20>Clinical Drug Component<6E>, <20>Branded Drug Form<72>, <20>Clinical Drug Form<72>, and only if no other information is available <20>Ingredient<6E>. Note: If only the drug class is known, the DRUG_CONCEPT_ID field should contain 0. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Drug&standardConcept=Standard&page=1&pageSize=15&query=).",No,Yes,CONCEPT,CONCEPT_ID,Drug,NA,NA
drug_exposure,drug_exposure_start_date,Yes,date,Use this date to determine the start date of the drug record.,"Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration was recorded. It is a valid ETL choice to use the date the drug was ordered as the DRUG_EXPOSURE_START_DATE.",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_start_date,Yes,date,Use this date to determine the start date of the drug record.,"Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration was recorded. It is a valid ETL choice to use the date the drug was ordered as the DRUG_EXPOSURE_START_DATE.",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_start_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_start_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_end_date,Yes,date,The DRUG_EXPOSURE_END_DATE denotes the day the drug exposure ended for the patient.,"If this information is not explicitly available in the data, infer the end date using the following methods:<br><br> 1. Start first with duration or days supply using the calculation drug start date + days supply -1 day. 2. Use quantity divided by daily dose that you may obtain from the sig or a source field (or assumed daily dose of 1) for solid, indivisibile, drug products. If quantity represents ingredient amount, quantity divided by daily dose * concentration (from drug_strength) drug concept id tells you the dose form. 3. If it is an administration record, set drug end date equal to drug start date. If the record is a written prescription then set end date to start date + 29. If the record is a mail-order prescription set end date to start date + 89. The end date must be equal to or greater than the start date. Ibuprofen 20mg/mL oral solution concept tells us this is oral solution. Calculate duration as quantity (200 example) * daily dose (5mL) /concentration (20mg/mL) 200*5/20 = 50 days. [Examples by dose form](https://ohdsi.github.io/CommonDataModel/drug_dose.html)<br><br>For detailed conventions for how to populate this field, please see the [THEMIS repository](https://ohdsi.github.io/Themis/tag_drug_exposure.html).",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_end_date,Yes,date,The DRUG_EXPOSURE_END_DATE denotes the day the drug exposure ended for the patient.,"If this information is not explicitly available in the data, infer the end date from start date and duration.<br>For detailed conventions for how to populate this field, please see the [THEMIS repository](https://ohdsi.github.io/Themis/tag_drug_exposure.html).",No,No,NA,NA,NA,NA,NA
drug_exposure,drug_exposure_end_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA drug_exposure,drug_exposure_end_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
drug_exposure,verbatim_end_date,No,date,"This is the end date of the drug exposure as it appears in the source data, if it is given",Put the end date or discontinuation date as it appears from the source data or leave blank if unavailable.,No,No,NA,NA,NA,NA,NA drug_exposure,verbatim_end_date,No,date,"This is the end date of the drug exposure as it appears in the source data, if it is given",Put the end date or discontinuation date as it appears from the source data or leave blank if unavailable.,No,No,NA,NA,NA,NA,NA
drug_exposure,drug_type_concept_id,Yes,integer,"You can use the TYPE_CONCEPT_ID to delineate between prescriptions written vs. prescriptions dispensed vs. medication history vs. patient-reported exposure, etc.","Choose the drug_type_concept_id that best represents the provenance of the record, for example whether it came from a record of a prescription written or physician administered drug. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA drug_exposure,drug_type_concept_id,Yes,integer,"You can use the TYPE_CONCEPT_ID to delineate between prescriptions written vs. prescriptions dispensed vs. medication history vs. patient-reported exposure, etc.","Choose the drug_type_concept_id that best represents the provenance of the record, for example whether it came from a record of a prescription written or physician administered drug. [Accepted Concepts](https://athena.ohdsi.org/search-terms/terms?domain=Type+Concept&standardConcept=Standard&page=1&pageSize=15&query=). A more detailed explanation of each Type Concept can be found on the [vocabulary wiki](https://github.com/OHDSI/Vocabulary-v5.0/wiki/Vocab.-TYPE_CONCEPT).",No,Yes,CONCEPT,CONCEPT_ID,Type Concept,NA,NA
@ -148,7 +148,7 @@ device_exposure,unit_source_value,No,varchar(50),"This field houses the verbatim
device_exposure,unit_source_concept_id,No,integer,"This is the concept representing the UNIT_SOURCE_VALUE and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Unit necessary for a given analytic use case. Consider using UNIT_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network.",If the UNIT_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here.,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA device_exposure,unit_source_concept_id,No,integer,"This is the concept representing the UNIT_SOURCE_VALUE and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Unit necessary for a given analytic use case. Consider using UNIT_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network.",If the UNIT_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here.,No,Yes,CONCEPT,CONCEPT_ID,NA,NA,NA
measurement,measurement_id,Yes,integer,The unique key given to a Measurement record for a Person. Refer to the ETL for how duplicate Measurements during the same Visit were handled.,"Each instance of a measurement present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same measurement within the same visit. It is valid to keep these duplicates and assign them individual, unique, MEASUREMENT_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA measurement,measurement_id,Yes,integer,The unique key given to a Measurement record for a Person. Refer to the ETL for how duplicate Measurements during the same Visit were handled.,"Each instance of a measurement present in the source data should be assigned this unique key. In some cases, a person can have multiple records of the same measurement within the same visit. It is valid to keep these duplicates and assign them individual, unique, MEASUREMENT_IDs, though it is up to the ETL how they should be handled.",Yes,No,NA,NA,NA,NA,NA
measurement,person_id,Yes,integer,The PERSON_ID of the Person for whom the Measurement is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA measurement,person_id,Yes,integer,The PERSON_ID of the Person for whom the Measurement is recorded. This may be a system generated code.,NA,No,Yes,PERSON,PERSON_ID,NA,NA,NA
measurement,measurement_concept_id,Yes,integer,"The MEASUREMENT_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source value which represents a measurement.",The CONCEPT_ID that the MEASUREMENT_SOURCE_VALUE maps to. Only records whose source values map to concepts with a domain of ÒMeasurementÓ should go in this table.,No,Yes,CONCEPT,CONCEPT_ID,Measurement,NA,NA measurement,measurement_concept_id,Yes,integer,"The MEASUREMENT_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies. This is the standard concept mapped from the source value which represents a measurement.",The CONCEPT_ID that the MEASUREMENT_SOURCE_VALUE maps to. Only records whose source values map to concepts with a domain of <EFBFBD>Measurement<EFBFBD> should go in this table.,No,Yes,CONCEPT,CONCEPT_ID,Measurement,NA,NA
measurement,measurement_date,Yes,date,Use this date to determine the date of the measurement.,"If there are multiple dates in the source data associated with a record such as order_date, draw_date, and result_date, choose the one that is closest to the date the sample was drawn from the patient.",No,No,NA,NA,NA,NA,NA measurement,measurement_date,Yes,date,Use this date to determine the date of the measurement.,"If there are multiple dates in the source data associated with a record such as order_date, draw_date, and result_date, choose the one that is closest to the date the sample was drawn from the patient.",No,No,NA,NA,NA,NA,NA
measurement,measurement_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA measurement,measurement_datetime,No,datetime,NA,"This is not required, though it is in v6. If a source does not specify datetime the convention is to set the time to midnight (00:00:0000)",No,No,NA,NA,NA,NA,NA
measurement,measurement_time,No,varchar(10),NA,This is present for backwards compatibility and will be deprecated in an upcoming version.,No,No,NA,NA,NA,NA,NA measurement,measurement_time,No,varchar(10),NA,This is present for backwards compatibility and will be deprecated in an upcoming version.,No,No,NA,NA,NA,NA,NA

1 cdmTableName cdmFieldName isRequired cdmDatatype userGuidance etlConventions isPrimaryKey isForeignKey fkTableName fkFieldName fkDomain fkClass unique DQ identifiers
88 drug_exposure quantity No float NA To find the dose form of a drug the RELATIONSHIP table can be used where the relationship_id is 'Has dose form'. If liquid, quantity stands for the total amount dispensed or ordered of ingredient in the units given by the drug_strength table. If the unit from the source data does not align with the unit in the DRUG_STRENGTH table the quantity should be converted to the correct unit given in DRUG_STRENGTH. For clinical drugs with fixed dose forms (tablets etc.) the quantity is the number of units/tablets/capsules prescribed or dispensed (can be partial, but then only 1/2 or 1/3, not 0.01). Clinical drugs with divisible dose forms (injections) the quantity is the amount of ingredient the patient got. For example, if the injection is 2mg/mL but the patient got 80mL then quantity is reported as 160. Quantified clinical drugs with divisible dose forms (prefilled syringes), the quantity is the amount of ingredient similar to clinical drugs. Please see [how to calculate drug dose](https://ohdsi.github.io/CommonDataModel/drug_dose.html) for more information. No No NA NA NA NA NA
89 drug_exposure days_supply No integer NA The number of days of supply of the medication as recorded in the original prescription or dispensing record. Days supply can differ from actual drug duration (i.e. prescribed days supply vs actual exposure).","The field should be left empty if the source data does not contain a verbatim days_supply, and should not be calculated from other fields.<br><br>Negative values are not allowed. If the source has negative days supply the record should be dropped as it is unknown if the patient actually took the drug. Several actions are possible: 1) record is not trustworthy and we remove the record entirely. 2) we trust the record and leave days_supply empty or 3) record needs to be combined with other record (e.g. reversal of prescription). High values (>365 days) should be investigated. If considered an error in the source data (e.g. typo), the value needs to be excluded to prevent creation of unrealistic long eras. No No NA NA NA NA NA
90 drug_exposure sig No varchar(MAX) This is the verbatim instruction for the drug as written by the provider. Put the written out instructions for the drug as it is verbatim in the source, if available. No No NA NA NA NA NA
91 drug_exposure route_concept_id No integer NA The standard CONCEPT_ID that the ROUTE_SOURCE_VALUE maps to in the route domain. No Yes CONCEPT CONCEPT_ID Route NA NA
92 drug_exposure lot_number No varchar(50) NA NA No No NA NA NA NA NA
93 drug_exposure provider_id No integer The Provider associated with drug record, e.g. the provider who wrote the prescription or the provider who administered the drug. The ETL may need to make a choice as to which PROVIDER_ID to put here. Based on what is available this may or may not be different than the provider associated with the overall VISIT_OCCURRENCE record, for example the ordering vs administering physician on an EHR record. No Yes PROVIDER PROVIDER_ID NA NA NA
94 drug_exposure visit_occurrence_id No integer The Visit during which the drug was prescribed, administered or dispensed. To populate this field drug exposures must be explicitly initiated in the visit. No Yes VISIT_OCCURRENCE VISIT_OCCURRENCE_ID NA NA NA
95 drug_exposure visit_detail_id No integer The VISIT_DETAIL record during which the drug exposure occurred. For example, if the person was in the ICU at the time of the drug administration the VISIT_OCCURRENCE record would reflect the overall hospital stay and the VISIT_DETAIL record would reflect the ICU stay during the hospital visit. Same rules apply as for the VISIT_OCCURRENCE_ID. No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
96 drug_exposure drug_source_value No varchar(50) This field houses the verbatim value from the source data representing the drug exposure that occurred. For example, this could be an NDC or Gemscript code. This code is mapped to a Standard Drug Concept in the Standardized Vocabularies and the original code is stored here for reference. No No NA NA NA NA NA
97 drug_exposure drug_source_concept_id No integer This is the concept representing the drug source value and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Drug necessary for a given analytic use case. Consider using DRUG_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network. If the DRUG_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
148 measurement provider_id No integer The provider associated with measurement record, e.g. the provider who ordered the test or the provider who recorded the result. The ETL may need to make a choice as to which PROVIDER_ID to put here. Based on what is available this may or may not be different than the provider associated with the overall VISIT_OCCURRENCE record. For example the admitting vs attending physician on an EHR record. No Yes PROVIDER PROVIDER_ID NA NA NA
149 measurement visit_occurrence_id No integer The visit during which the Measurement occurred. Depending on the structure of the source data, this may have to be determined based on dates. If a MEASUREMENT_DATE occurs within the start and end date of a Visit it is a valid ETL choice to choose the VISIT_OCCURRENCE_ID from the visit that subsumes it, even if not explicitly stated in the data. While not required, an attempt should be made to locate the VISIT_OCCURRENCE_ID of the measurement record. If a measurement is related to a visit explicitly in the source data, it is possible that the result date of the Measurement falls outside of the bounds of the Visit dates. No Yes VISIT_OCCURRENCE VISIT_OCCURRENCE_ID NA NA NA
150 measurement visit_detail_id No integer The VISIT_DETAIL record during which the Measurement occurred. For example, if the Person was in the ICU at the time the VISIT_OCCURRENCE record would reflect the overall hospital stay and the VISIT_DETAIL record would reflect the ICU stay during the hospital visit. Same rules apply as for the VISIT_OCCURRENCE_ID. No Yes VISIT_DETAIL VISIT_DETAIL_ID NA NA NA
151 measurement measurement_source_value No varchar(50) This field contains the exact value from the source data that represents the measurement that occurred. This value corresponds to a standardized CONCEPT_ID found in MEASUREMENT_CONCEPT_ID and in the 'Measurement' domain within the Standardized Vocabularies. The original code is retained here for reference purposes. No No NA NA NA NA NA
152 measurement measurement_source_concept_id No integer This is the concept representing the MEASUREMENT_SOURCE_VALUE and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Measurement necessary for a given analytic use case. Consider using MEASUREMENT_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network. If the MEASUREMENT_SOURCE_VALUE is coded in the source data using a vocabulary supported by OMOP Standardized Vocabularies, insert the CONCEPT_ID representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA
153 measurement unit_source_value No varchar(50) This field contains the exact value from the source data that represents the unit of measurement used. This value corresponds to a standardized CONCEPT_ID found in UNIT_CONCEPT_ID and in the 'Unit' domain within the Standardized Vocabularies. The original code is retained here for reference purposes. No No NA NA NA NA NA
154 measurement unit_source_concept_id No integer "This is the concept representing the UNIT_SOURCE_VALUE and may not necessarily be standard. This field is discouraged from use in analysis because it is not required to contain Standard Concepts that are used across the OHDSI community, and should only be used when Standard Concepts do not adequately represent the source detail for the Measurement necessary for a given analytic use case. Consider using UNIT_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network." If the UNIT_SOURCE_VALUE is coded in the source data using an OMOP supported vocabulary put the concept id representing the source value here. No Yes CONCEPT CONCEPT_ID NA NA NA