OMOP Common Data Model Documentation

CDM v5.3.1

PERSON

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
person_id It is assumed that every person with a different unique identifier is in fact a different person and should be treated independently. Any person linkage that needs to occur to identify unique persons should be done prior to ETL. integer Yes Yes No NA NA NA
gender_concept_id This field is meant to capture the biological sex at birth of the Person. This field should not be used to study gender identity issues. Use the gender or sex value present in the data under the assumption that it is the biological sex at birth. If the source data captures gender identity it should be stored in the OBSERVATION table. integer Yes No Yes CONCEPT Gender NA
year_of_birth NA For data sources with date of birth, the year is extracted. For data sources where the year of birth is not available, the approximate year of birth is derived based on any age group categorization available. integer Yes No No NA NA NA
month_of_birth NA For data sources that provide the precise date of birth, the month is extracted and stored in this field. integer No No No NA NA NA
day_of_birth NA For data sources that provide the precise date of birth, the day is extracted and stored in this field. integer No No No NA NA NA
birth_datetime Compute age using birth_datetime. For data sources that provide the precise datetime of birth, store that value in this field. If birth_datetime is not provided in the source, use the following logic to infer the date: If day_of_birth is null and month_of_birth is not null then use month/1/year. If month_of_birth is null then use 1/day/year, if day_of_birth is null and month_of_birth is null then 1/1/year. If time of birth is not given use midnight (00:00:0000). datetime No No No NA NA NA
race_concept_id NA NA integer Yes No Yes CONCEPT Race NA
ethnicity_concept_id Ethnic backgrounds as subsets of race. The OMOP CDM adheres to the OMB standards so only Concepts that represent “Hispanic” and “Not Hispanic” are stored here. If a source has more granular ethnicity information it can be found in the field ethnicity_source_value. Ethnicity in the OMOP CDM follows the OMB Standards for Data on Race and Ethnicity: Only distinctions between Hispanics and Non-Hispanics are made. If a source provides more granular ethnicity information it should be stored in the field ethnicity_source_value. integer Yes No Yes CONCEPT Ethnicity NA
location_id The location refers to the physical address of the person. Put the location_id from the LOCATION table here that represents the most granular location information for the person. This could be zip code, state, or county for example. integer No No Yes LOCATION NA NA
provider_id The Provider refers to the last known primary care provider (General Practitioner). Put the provider_id from the PROVIDER table of the last known general practitioner of the person. integer No No Yes PROVIDER NA NA
care_site_id The Care Site refers to where the Provider typically provides the primary care. NA integer No No Yes CARE_SITE NA NA
person_source_value Use this field to link back to persons in the source data. This is typically used for error checking of ETL logic. Some use cases require the ability to link back to persons in the source data. This field allows for the storing of the person value as it appears in the source. varchar(50) No No No NA NA NA
gender_source_value This field is used to store the biological sex of the person from the source data. It is not intended for use in standard analytics but for reference only. Put the biological sex of the person as it appears in the source data. varchar(50) No No No NA NA NA
gender_source_concept_id NA If the source data codes biological sex in a non-standard vocabulary, store the concept_id here. Integer No No Yes CONCEPT NA NA
race_source_value This field is used to store the race of the person from the source data. It is not intended for use in standard analytics but for reference only. Put the race of the person as it appears in the source data. varchar(50) No No No NA NA NA
race_source_concept_id NA If the source data codes race in an OMOP supported vocabulary store the concept_id here. Integer No No Yes CONCEPT NA NA
ethnicity_source_value This field is used to store the ethnicity of the person from the source data. It is not intended for use in standard analytics but for reference only. If the person has an ethnicity other than the OMB standard of “Hispanic” or “Not Hispanic” store that value from the source data here. varchar(50) No No No NA NA NA
ethnicity_source_concept_id NA If the source data codes ethnicity in an OMOP supported vocabulary, store the concept_id here. Integer No No Yes CONCEPT NA NA

OBSERVATION_PERIOD

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
observation_period_id A Person can have multiple discrete observations periods which are identified by the Observation_Period_Id. It is assumed that the observation period covers the period of time for which we know events occurred for the Person. In the context of the Common Data Model the absence of events during an observation period implies that the event did not occur. Assign a unique observation_period_id to each discrete observation period for a Person. An observation period should the length of time for which we know events occurred for the Person. It may take some logic to define an observation period, especially when working with EHR or registry data. Often if no enrollment or coverage information is given an observation period is defined as the time between the earliest record and the latest record available for a person. integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
observation_period_start_date Use this date to determine the start date of the period for which we can assume that all events for a Person are recorded and any absense of records indicates an absence of events. It is often the case that the idea of observation periods does not exist in source data. In those cases the observation_period_start_date can be inferred as the earliest event date available for the Person. In US claims, the observation period can be considered as the time period the person is enrolled with an insurer. If a Person switches plans but stays with the same insurer, that change would be captured in payer_plan_period. date Yes No No NA NA NA
observation_period_end_date Use this date to determine the end date of the period for which we can assume that all events for a Person are recorded and any absense of records indicates an absence of events. It is often the case that the idea of observation periods does not exist in source data. In those cases the observation_period_start_end_date can be inferred as the latest event date available for the Person. The event dates include insurance enrollment dates. date Yes No No NA NA NA
period_type_concept_id This field can be used to determine the provenance of the observation period as in whether the period was determined from an insurance enrollment file or if it was determined from EHR healthcare encounters. Choose the observation_period_type_concept_id that best represents how the period was determined. Integer Yes No Yes CONCEPT Type Concept NA

VISIT_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
visit_occurrence_id Use this to identify unique interactions between a person and the health care system. This identifier links across the other CDM event tables to associate events with a visit. This should be populated by creating a unique identifier for each unique interaction between a person and the healthcare system where the person receives a medical good or service over a span of time. integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
visit_concept_id This field contains a concept id representing the kind of visit, like inpatient or outpatient. 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. It is often the case that some logic should be written for how to define visits and how to assign Visit_Concept_Id. In US claims outpatient visits that appear to occur within the time period of an inpatient visit can be rolled into one with the same Visit_Occurrence_Id. In EHR data inpatient visits that are within one day of each other may be strung together to create one visit. It will all depend on the source data and how encounter records should be translated to visit occurrences. integer Yes No Yes CONCEPT Visit NA
visit_start_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 will first have to make decisions on how to define visits. In some cases visits in the source data can be strung together if there are one or fewer days between them. date Yes No No NA NA NA
visit_start_datetime NA If no time is given for the start date of a visit, set it to midnight (00:00:0000). datetime No No No NA NA NA
visit_end_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. date Yes No No NA NA NA
visit_end_datetime NA If no time is given for the end date of a visit, set it to midnight (00:00:0000). datetime No No No NA NA NA
visit_type_concept_id 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. Integer Yes No Yes CONCEPT Type Concept NA
provider_id There will only be one provider per visit. If multiple providers are associated with a visit that information can be found 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 table. integer No No No PROVIDER NA NA
care_site_id This field provides information about the care site where the visit took place. There should only be one care site associated with a visit. integer No No No CARE_SITE NA NA
visit_source_value 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. varchar(50) No No No NA NA NA
visit_source_concept_id 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. integer No No Yes CONCEPT NA NA
admitting_source_concept_id 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 admitted_from_source_value to a standard concept in the visit domain. integer No No Yes CONCEPT Visit NA
admitting_source_value 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. varchar(50) No No No NA NA NA
discharge_to_concept_id Use this field to determine where the patient was discharged to after a visit. 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. integer No No Yes CONCEPT Visit NA
discharge_to_source_value 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. varchar(50) No No No NA NA NA
preceding_visit_occurrence_id Use this field to find the visit that occured for the person prior to the given visit. There could be a few days or a few years in between. The preceding_visit_id can be used to link a visit immediately preceding the current visit. Note this is not symmetrical, and there is no such thing as a “following_visit_id”. integer No No Yes VISIT_OCCURRENCE NA NA

CONDITION_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
condition_occurrence_id NA NA bigint Yes Yes No NA NA NA
person_id NA NA bigint Yes No Yes PERSON NA NA
condition_concept_id The CONDITION_CONCEPT_ID field is recommended for primary use in analyses, and must be used for network studies NA integer Yes No Yes CONCEPT Condition NA
condition_start_date NA NA date Yes No No NA NA NA
condition_start_datetime NA NA datetime No No No NA NA NA
condition_end_date NA NA date No No No NA NA NA
condition_end_datetime NA should not be inferred datetime No No No NA NA NA
condition_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
condition_status_concept_id NA

Presently, there is no designated vocabulary, domain, or class that represents condition status. The following concepts from SNOMED are recommended:

Admitting diagnosis: 4203942

Final diagnosis: 4230359 (should also be used for discharge diagnosis

Preliminary diagnosis: 4033240
integer No No Yes CONCEPT NA NA
stop_reason The Stop Reason indicates why a Condition is no longer valid with respect to the purpose within the source data. Note that a Stop Reason does not necessarily imply that the condition is no longer occurring. NA varchar(20) No No No NA NA NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
condition_source_value 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 Condition necessary for a given analytic use case. Consider using CONDITION_CONCEPT_ID instead to enable standardized analytics that can be consistent across the network. This code is mapped to a Standard Condition Concept in the Standardized Vocabularies and the original code is stored here for reference. varchar(50) No No No NA NA NA
condition_source_concept_id NA NA integer No No Yes CONCEPT NA NA
condition_status_source_value NA This code is mapped to a Standard Concept in the Standardized Vocabularies and the original code is stored here for reference. varchar(50) No No No NA NA NA

DRUG_EXPOSURE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
drug_exposure_id NA NA bigint Yes Yes No NA NA NA
person_id NA NA bigint Yes No Yes PERSON NA NA
drug_concept_id NA NA integer Yes No Yes CONCEPT Drug NA
drug_exposure_start_date NA Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration procedure was recorded. date Yes No No NA NA NA
drug_exposure_start_datetime NA NA datetime No No No NA NA NA
drug_exposure_end_date NA The DRUG_EXPOSURE_END_DATE denotes the day the drug exposure ended for the patient. This could be that the duration of DRUG_SUPPLY was reached (in which case DRUG_EXPOSURE_END_DATETIME = DRUG_EXPOSURE_START_DATETIME + DAYS_SUPPLY -1 day), or because the exposure was stopped (medication changed, medication discontinued, etc.) When the native data suggests a drug exposure has a days supply less than 0, drop the record as unknown if a person has received the drug or not (THEMIS issue #24). If a patient has multiple records on the same day for the same drug or procedures the ETL should not de-dupe them unless there is probable reason to believe the item is a true data duplicate (THEMIS issue #14). Depending on different sources, it could be a known or an inferred date and denotes the last day at which the patient was still exposed to Drug. date Yes No No NA NA NA
drug_exposure_end_datetime NA NA datetime No No No NA NA NA
verbatim_end_date You can use the TYPE_CONCEPT_ID to delineate between prescriptions written vs. prescriptions dispensed vs. medication history vs. patient-reported exposure NA date No No No NA NA NA
drug_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
stop_reason NA Reasons include regimen completed, changed, removed, etc. varchar(20) No No No NA NA NA
refills The content of the refills field determines the current number of refills, not the number of remaining refills. For example, for a drug prescription with 2 refills, the content of this field for the 3 Drug Exposure events are null, 1 and 2. NA integer No No No NA NA NA
quantity NA NA float No No No NA NA NA
days_supply NA NA integer No No No NA NA NA
sig (and printed on the container) NA varchar(MAX) No No No NA NA NA
route_concept_id Route information can also be inferred from the Drug product itself by determining the Drug Form of the Concept, creating some partial overlap of the same type of information. Therefore, route information should be stored in DRUG_CONCEPT_ID (as a drug with corresponding Dose Form). The ROUTE_CONCEPT_ID could be used for storing more granular forms e.g. ‘Intraventricular cardiac’. NA integer No No Yes CONCEPT Route NA
lot_number NA NA varchar(50) No No No NA NA NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
drug_source_value NA This code is mapped to a Standard Drug concept in the Standardized Vocabularies and the original code is, stored here for reference. varchar(50) No No No NA NA NA
drug_source_concept_id NA NA integer No No Yes CONCEPT NA NA
route_source_value NA NA varchar(50) No No No NA NA NA
dose_unit_source_value NA NA varchar(50) No No No NA NA NA

PROCEDURE_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
procedure_occurrence_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
procedure_concept_id NA NA integer Yes No Yes CONCEPT Procedure NA
procedure_date NA NA date Yes No No NA NA NA
procedure_datetime NA NA datetime No No No NA NA NA
procedure_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
modifier_concept_id These concepts are typically distinguished by ‘Modifier’ concept classes (e.g., ‘CPT4 Modifier’ as part of the ‘CPT4’ vocabulary). NA integer No No Yes CONCEPT NA NA
quantity If the quantity value is omitted, a single procedure is assumed. If a Procedure has a quantity of ‘0’ in the source, this should default to ‘1’ in the ETL. If there is a record in the source it can be assumed the exposure occurred at least once (THEMIS issue #26). integer No No No NA NA NA
provider_id NA NA integer No No No PROVIDER NA NA
visit_occurrence_id NA NA integer No No No VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No No VISIT_DETAIL NA NA
procedure_source_value NA This code is mapped to a standard procedure Concept in the Standardized Vocabularies and the original code is, stored here for reference. Procedure source codes are typically ICD-9-Proc, CPT-4, HCPCS or OPCS-4 codes. varchar(50) No No No NA NA NA
procedure_source_concept_id NA NA integer No No No CONCEPT NA NA
modifier_source_value NA NA varchar(50) No No No NA NA NA

DEVICE_EXPOSURE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
device_exposure_id NA NA bigint Yes Yes No NA NA NA
person_id NA NA bigint Yes No Yes PERSON NA NA
device_concept_id NA NA integer Yes No Yes CONCEPT Device NA
device_exposure_start_date NA NA date Yes No No NA NA NA
device_exposure_start_datetime NA NA datetime No No No NA NA NA
device_exposure_end_date NA NA date No No No NA NA NA
device_exposure_end_datetime NA NA datetime No No No NA NA NA
device_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
unique_device_id NA For medical devices that are regulated by the FDA, a Unique Device Identification (UDI) is provided if available in the data source and is recorded in the UNIQUE_DEVICE_ID field. varchar(50) No No No NA NA NA
quantity NA NA integer No No No NA NA NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
device_source_value NA NA varchar(50) No No No NA NA NA
device_source_concept_id NA NA integer No No Yes CONCEPT NA NA

MEASUREMENT

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
measurement_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
measurement_concept_id NA NA integer Yes No Yes CONCEPT Measurement NA
measurement_date NA NA date Yes No No NA NA NA
measurement_datetime NA NA datetime No No No NA NA NA
measurement_time This is present for backwards compatibility and will be deprecated in an upcoming version NA varchar(10) No No No NA NA NA
measurement_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
operator_concept_id The meaning of Concept 4172703 for ‘=’ is identical to omission of a OPERATOR_CONCEPT_ID value. Since the use of this field is rare, it’s important when devising analyses to not to forget testing for the content of this field for values different from =.

If there is a negative value coming from the source, set the VALUE_AS_NUMBER to NULL, with the exception of the following Measurements (listed as LOINC codes):

1925-7 Base excess in Arterial blood by calculation

1927-3 Base excess in Venous blood by calculation Operators are <, <=, =, >=, > and these concepts belong to the ‘Meas Value Operator’ domain.

8632-2 QRS-Axis

11555-0 Base excess in Blood by calculation

1926-5 Base excess in Capillary blood by calculation

28638-5 Base excess in Arterial cord blood by calculation

28639-3 Base excess in Venous cord blood by calculation

THEMIS issue #16
integer No No Yes CONCEPT NA NA
value_as_number NA NA float No No No NA NA NA
value_as_concept_id NA NA integer No No Yes CONCEPT NA NA
unit_concept_id NA NA integer No No Yes CONCEPT Unit NA
range_low Ranges have the same unit as the VALUE_AS_NUMBER. If reference ranges for upper and lower limit of normal as provided (typically by a laboratory) these are stored in the RANGE_HIGH and RANGE_LOW fields. Ranges have the same unit as the VALUE_AS_NUMBER. float No No No NA NA NA
range_high Ranges have the same unit as the VALUE_AS_NUMBER. NA float No No No NA NA NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
measurement_source_value NA NA varchar(50) No No No NA NA NA
measurement_source_concept_id NA NA integer No No Yes CONCEPT NA NA
unit_source_value NA NA varchar(50) No No No NA NA NA
value_source_value NA NA varchar(50) No No No NA NA NA

VISIT_DETAIL

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
visit_detail_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
visit_detail_concept_id NA NA integer Yes No Yes CONCEPT Visit NA
visit_detail_start_date NA NA date Yes No No NA NA NA
visit_detail_start_datetime NA NA datetime No No No NA NA NA
visit_detail_end_date NA NA date Yes No No NA NA NA
visit_detail_end_datetime NA NA datetime No No No NA NA NA
visit_detail_type_concept_id NA NA Integer Yes No Yes CONCEPT Type Concept NA
provider_id NA NA integer No No Yes PROVIDER NA NA
care_site_id NA NA integer No No Yes CARE_SITE NA NA
visit_detail_source_value NA NA string(50) No No No NA NA NA
visit_detail_source_concept_id NA NA Integer No No Yes CONCEPT NA NA
admitting_source_value NA NA Varchar(50) No No No NA NA NA
admitting_source_concept_id NA NA Integer No No Yes CONCEPT NA NA
discharge_to_source_value NA NA Varchar(50) No No No NA NA NA
discharge_to_concept_id NA NA Integer No No Yes CONCEPT NA NA
preceding_visit_detail_id NA NA Integer No No Yes VISIT_DETAIL NA NA
visit_detail_parent_id NA NA Integer No No Yes VISIT_DETAIL NA NA
visit_occurrence_id NA NA Integer Yes No Yes VISIT_OCCURRENCE NA NA

NOTE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
note_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
note_date NA NA date Yes No No NA NA NA
note_datetime NA NA datetime No No No NA NA NA
note_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
note_class_concept_id NA NA integer Yes No Yes CONCEPT NA NA
note_title NA NA varchar(250) No No No NA NA NA
note_text NA NA varchar(MAX) Yes No No NA NA NA
encoding_concept_id NA NA integer Yes No Yes CONCEPT NA NA
language_concept_id NA NA integer Yes No Yes CONCEPT NA NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
note_source_value NA NA varchar(50) No No No NA NA NA

NOTE_NLP

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
note_nlp_id NA NA integer Yes Yes No NA NA NA
note_id NA NA integer Yes No No NA NA NA
section_concept_id NA NA integer No No Yes CONCEPT NA NA
snippet NA NA varchar(250) No No No NA NA NA
offset NA NA varchar(50) No No No NA NA NA
lexical_variant NA NA varchar(250) Yes No No NA NA NA
note_nlp_concept_id NA NA integer No No Yes CONCEPT NA NA
note_nlp_source_concept_id NA NA integer No No Yes CONCEPT NA NA
nlp_system NA NA varchar(250) No No No NA NA NA
nlp_date NA NA date Yes No No NA NA NA
nlp_datetime NA NA datetime No No No NA NA NA
term_exists 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

Subject = [anything other than the patient]

Conditional = true/li>

Rule_out = true

Uncertain = very low certainty or any lower certainties

A complete lack of modifiers would make Term_exists true.
varchar(1) No No No NA NA NA
term_temporal NA Term_temporal is to indicate if a condition is �present� or just in the �past�. The following would be past: History = true Concept_date = anything before the time of the report varchar(50) No No No NA NA NA
term_modifiers NA

For the modifiers that are there, they would have to have these values:

Negation = false

Subject = patient

Conditional = 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. A list of allowable modifiers (e.g., signature for medications) and their possible values will be standardized later.
varchar(2000) No No No NA NA NA

OBSERVATION

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
observation_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
observation_concept_id NA NA integer Yes No Yes CONCEPT NA NA
observation_date NA NA date Yes No No NA NA NA
observation_datetime NA NA datetime No No No NA NA NA
observation_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
value_as_number NA NA float No No No NA NA NA
value_as_string NA NA varchar(60) No No No NA NA NA
value_as_concept_id NA Note that the value of VALUE_AS_CONCEPT_ID may be provided through mapping from a source Concept which contains the content of the Observation. In those situations, the CONCEPT_RELATIONSHIP table in addition to the ‘Maps to’ record contains a second record with the relationship_id set to ‘Maps to value’. For example, ICD9CM V17.5 concept_id 44828510 ‘Family history of asthma’ has a ‘Maps to’ relationship to 4167217 ‘Family history of clinical finding’ as well as a ‘Maps to value’ record to 317009 ‘Asthma’. Integer No No Yes CONCEPT NA NA
qualifier_concept_id NA NA integer No No Yes CONCEPT NA NA
unit_concept_id NA NA integer No No Yes CONCEPT Unit NA
provider_id NA NA integer No No Yes PROVIDER NA NA
visit_occurrence_id NA NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id NA NA integer No No Yes VISIT_DETAIL NA NA
observation_source_value NA NA varchar(50) No No No NA NA NA
observation_source_concept_id NA NA integer No No Yes CONCEPT NA NA
unit_source_value NA NA varchar(50) No No No NA NA NA
qualifier_source_value NA NA varchar(50) No No No NA NA NA

SPECIMEN

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
specimen_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
specimen_concept_id NA NA integer Yes No Yes CONCEPT NA NA
specimen_type_concept_id NA NA integer Yes No Yes CONCEPT Type Concept NA
specimen_date NA NA date Yes No No NA NA NA
specimen_datetime NA NA datetime No No No NA NA NA
quantity NA NA float No No No NA NA NA
unit_concept_id NA NA integer No No Yes CONCEPT NA NA
anatomic_site_concept_id NA NA integer No No Yes CONCEPT NA NA
disease_status_concept_id NA NA integer No No Yes CONCEPT NA NA
specimen_source_id NA NA varchar(50) No No No NA NA NA
specimen_source_value NA NA varchar(50) No No No NA NA NA
unit_source_value NA NA varchar(50) No No No NA NA NA
anatomic_site_source_value NA NA varchar(50) No No No NA NA NA
disease_status_source_value NA NA varchar(50) No No No NA NA NA

FACT_RELATIONSHIP

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
domain_concept_id_1 NA NA integer Yes No Yes CONCEPT NA NA
fact_id_1 NA NA integer Yes No No NA NA NA
domain_concept_id_2 NA NA integer Yes No Yes CONCEPT NA NA
fact_id_2 NA NA integer Yes No No NA NA NA
relationship_concept_id NA NA integer Yes No Yes CONCEPT NA NA

LOCATION

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
location_id NA NA integer Yes Yes No NA NA NA
address_1 NA NA varchar(50) No No No NA NA NA
address_2 NA NA varchar(50) No No No NA NA NA
city NA NA varchar(50) No No No NA NA NA
state NA NA varchar(2) No No No NA NA NA
zip 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. varchar(9) No No No NA NA NA
county NA NA varchar(20) No No No NA NA NA
location_source_value NA NA varchar(50) No No No NA NA NA

CARE_SITE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
care_site_id NA NA integer Yes Yes No NA NA NA
care_site_name NA NA varchar(255) No No No NA NA NA
place_of_service_concept_id NA NA integer No No Yes CONCEPT NA NA
location_id NA NA integer No No No NA NA NA
care_site_source_value NA NA varchar(50) No No No NA NA NA
place_of_service_source_value NA NA varchar(50) No No No NA NA NA

PROVIDER

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
provider_id NA NA integer Yes Yes No NA NA NA
provider_name NA NA varchar(255) No No No NA NA NA
npi NA NA varchar(20) No No No NA NA NA
dea NA NA varchar(20) No No No NA NA NA
specialty_concept_id NA If a Provider has more than one Specialty, the main or most often exerted specialty should be recorded. integer No No Yes CONCEPT NA NA
care_site_id NA NA integer No No Yes CARE_SITE NA NA
year_of_birth NA NA integer No No No NA NA NA
gender_concept_id NA NA integer No No Yes CONCEPT Gender NA
provider_source_value NA NA varchar(50) No No No NA NA NA
specialty_source_value NA NA varchar(50) No No No NA NA NA
specialty_source_concept_id NA NA integer No No Yes CONCEPT NA NA
gender_source_value NA NA varchar(50) No No No NA NA NA
gender_source_concept_id NA NA integer No No Yes CONCEPT NA NA

PAYER_PLAN_PERIOD

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
payer_plan_period_id NA NA integer Yes Yes Yes PERSON NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
payer_plan_period_start_date NA NA date Yes No No NA NA NA
payer_plan_period_end_date NA NA date Yes No No NA NA NA
payer_concept_id NA NA integer No No Yes CONCEPT NA NA
payer_source_value NA NA varchar(50) No No No NA NA NA
payer_source_concept_id NA NA integer No No Yes CONCEPT NA NA
plan_concept_id NA NA integer No No Yes CONCEPT NA NA
plan_source_value NA NA varchar(50) No No No NA NA NA
plan_source_concept_id NA NA integer No No Yes CONCEPT NA NA
sponsor_concept_id NA NA integer No No Yes CONCEPT NA NA
sponsor_source_value NA NA varchar(50) No No No NA NA NA
sponsor_source_concept_id NA NA integer No No Yes CONCEPT NA NA
family_source_value NA NA varchar(50) No No No NA NA NA
stop_reason_concept_id NA NA integer No No Yes CONCEPT NA NA
stop_reason_source_value NA NA varchar(50) No No No NA NA NA
stop_reason_source_concept_id NA NA integer No No Yes CONCEPT NA NA

COST

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
cost_id NA NA INTEGER Yes Yes No NA NA NA
cost_event_id NA NA INTEGER Yes No No NA NA NA
cost_domain_id NA NA VARCHAR(20) Yes No Yes DOMAIN NA NA
cost_type_concept_id NA NA integer Yes No Yes CONCEPT NA NA
currency_concept_id NA NA integer No No Yes CONCEPT NA NA
total_charge NA NA FLOAT No No No NA NA NA
total_cost NA NA FLOAT No No No NA NA NA
total_paid NA NA FLOAT No No No NA NA NA
paid_by_payer NA NA FLOAT No No No NA NA NA
paid_by_patient NA NA FLOAT No No No NA NA NA
paid_patient_copay NA NA FLOAT No No Yes CONCEPT NA NA
paid_patient_coinsurance NA NA FLOAT No No No NA NA NA
paid_patient_deductible NA NA FLOAT No No No NA NA NA
paid_by_primary NA NA FLOAT No No No NA NA NA
paid_ingredient_cost NA NA FLOAT No No No NA NA NA
paid_dispensing_fee NA NA FLOAT No No No NA NA NA
payer_plan_period_id NA NA INTEGER No No No NA NA NA
amount_allowed NA NA FLOAT No No No NA NA NA
revenue_code_concept_id NA NA integer No No Yes CONCEPT NA NA
revenue_code_source_value Revenue codes are a method to charge for a class of procedures and conditions in the U.S. hospital system. NA VARCHAR(50) No No No NA NA NA
drg_concept_id NA NA integer No No Yes CONCEPT NA NA
drg_source_value Diagnosis Related Groups are US codes used to classify hospital cases into one of approximately 500 groups. NA VARCHAR(3) No No No NA NA NA

DRUG_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
drug_era_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
drug_concept_id NA NA integer Yes No Yes CONCEPT Drug Ingredient
drug_era_start_date NA The Drug Era Start Date is the start date of the first Drug Exposure for a given ingredient. (NOT RIGHT) datetime Yes No No NA NA NA
drug_era_end_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 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. (ARENT WE REQUIRING TO USE DRUG_EXPOSURE_END_DATE NOW????)
datetime Yes No No NA NA NA
drug_exposure_count NA NA integer No No No NA NA NA
gap_days 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. integer No No No NA NA NA

DOSE_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
dose_era_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No Yes PERSON NA NA
drug_concept_id NA NA integer Yes No Yes CONCEPT Drug Ingredient
unit_concept_id NA NA integer Yes No Yes CONCEPT Unit NA
dose_value NA NA float Yes No No NA NA NA
dose_era_start_date NA NA datetime Yes No No NA NA NA
dose_era_end_date NA NA datetime Yes No No NA NA NA

CONDITION_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
condition_era_id NA NA integer Yes Yes No NA NA NA
person_id NA NA integer Yes No No PERSON NA NA
condition_concept_id NA NA integer Yes No Yes CONCEPT Condition NA
condition_era_start_date NA NA datetime Yes No No NA NA NA
condition_era_end_date NA NA datetime Yes No No NA NA NA
condition_occurrence_count NA NA integer No No No NA NA NA

CDM v6.0

PERSON

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
person_id A unique identifier for each person. NA integer Yes Yes No NA NA NA
gender_concept_id A foreign key that refers to an identifier in the CONCEPT table for the unique gender of the person. NA integer Yes No Yes CONCEPT Gender NA
year_of_birth The year of birth of the person. For data sources with date of birth, the year is extracted. For data sources where the year of birth is not available, the approximate year of birth is derived based on any age group categorization available. NA integer Yes No No NA NA NA
month_of_birth The month of birth of the person. For data sources that provide the precise date of birth, the month is extracted and stored in this field. NA integer No No No NA NA NA
day_of_birth The day of the month of birth of the person. For data sources that provide the precise date of birth, the day is extracted and stored in this field. NA integer No No No NA NA NA
birth_datetime The date and time of birth of the person. NA datetime No No No NA NA NA
death_datetime The date and time of death of the person. NA datetime No No No NA NA NA
race_concept_id A foreign key that refers to an identifier in the CONCEPT table for the unique race of the person, belonging to the ‘’Race’’ vocabulary. NA integer Yes No Yes CONCEPT Race NA
ethnicity_concept_id A foreign key that refers to the standard concept identifier in the Standardized Vocabularies for the ethnicity of the person, belonging to the ‘’Ethnicity’’ vocabulary. NA integer Yes No Yes CONCEPT Ethnicity NA
location_id A foreign key to the place of residency for the person in the location table, where the detailed address information is stored. NA integer No No Yes LOCATION NA NA
provider_id A foreign key to the primary care provider the person is seeing in the provider table. NA integer No No Yes PROVIDER NA NA
care_site_id A foreign key to the site of primary care in the care_site table, where the details of the care site are stored. NA integer No No Yes CARE_SITE NA NA
person_source_value An (encrypted) key derived from the person identifier in the source data. This is necessary when a use case requires a link back to the person data at the source dataset. NA varchar(50) No No No NA NA NA
gender_source_value The source code for the gender of the person as it appears in the source data. The person’s gender is mapped to a standard gender concept in the Standardized Vocabularies; the original value is stored here for reference. NA varchar(50) No No No NA NA NA
gender_source_concept_id A foreign key to the gender concept that refers to the code used in the source. NA Integer Yes No Yes CONCEPT NA NA
race_source_value The source code for the race of the person as it appears in the source data. The person race is mapped to a standard race concept in the Standardized Vocabularies and the original value is stored here for reference. NA varchar(50) No No No NA NA NA
race_source_concept_id A foreign key to the race concept that refers to the code used in the source. NA Integer Yes No Yes CONCEPT NA NA
ethnicity_source_value The source code for the ethnicity of the person as it appears in the source data. The person ethnicity is mapped to a standard ethnicity concept in the Standardized Vocabularies and the original code is, stored here for reference. NA varchar(50) No No No NA NA NA
ethnicity_source_concept_id A foreign key to the ethnicity concept that refers to the code used in the source. NA Integer Yes No Yes CONCEPT NA NA

OBSERVATION_PERIOD

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
observation_period_id A unique identifier for each observation period. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the person for whom the observation period is defined. The demographic details of that person are stored in the person table. NA integer Yes No Yes PERSON NA NA
observation_period_start_date The start date of the observation period for which data are available from the data source. NA date Yes No No NA NA NA
observation_period_end_date The end date of the observation period for which data are available from the data source. NA date Yes No No NA NA NA
period_type_concept_id A foreign key identifier to the predefined concept in the Standardized Vocabularies reflecting the source of the observation period information, belonging to the ‘’Obs Period Type’’ vocabulary NA Integer Yes No Yes CONCEPT Type Concept NA

VISIT_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
visit_occurrence_id A unique identifier for each Person’’s visit or encounter at a healthcare provider. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person for whom the visit is recorded. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
visit_concept_id A foreign key that refers to a visit Concept identifier in the Standardized Vocabularies belonging to the ‘’Visit’’ Vocabulary. NA integer Yes No Yes CONCEPT Visit NA
visit_start_date The start date of the visit. NA date No No No NA NA NA
visit_start_datetime The date and time of the visit started. NA datetime Yes No No NA NA NA
visit_end_date The end date of the visit. If this is a one-day visit the end date should match the start date. NA date No No No NA NA NA
visit_end_datetime The date and time of the visit end. NA datetime Yes No No NA NA NA
visit_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the type of source data from which the visit record is derived belonging to the ‘’Visit Type’’ vocabulary. NA Integer Yes No Yes CONCEPT Type Concept NA
provider_id A foreign key to the provider in the provider table who was associated with the visit. NA integer No No No PROVIDER NA NA
care_site_id A foreign key to the care site in the care site table that was visited. NA integer No No No CARE_SITE NA NA
visit_source_value The source code for the visit as it appears in the source data. NA varchar(50) No No No NA NA NA
visit_source_concept_id A foreign key to a Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
admitted_from_concept_id A foreign key to the predefined concept in the Place of Service Vocabulary reflecting where the patient was admitted from. NA integer Yes No Yes CONCEPT NA NA
admitted_from_source_value The source code for where the patient was admitted from as it appears in the source data. NA varchar(50) No No No NA NA NA
discharge_to_concept_id A foreign key to the predefined concept in the Place of Service Vocabulary reflecting the discharge disposition for a visit. NA integer Yes No Yes CONCEPT NA NA
discharge_to_source_value The source code for the discharge disposition as it appears in the source data. NA varchar(50) No No No NA NA NA
preceding_visit_occurrence_id A foreign key to the VISIT_OCCURRENCE table of the visit immediately preceding this visit NA integer No No Yes VISIT_OCCURRENCE NA NA

CONDITION_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
condition_occurrence_id A unique identifier for each Condition Occurrence event. NA bigint Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is experiencing the condition. The demographic details of that Person are stored in the PERSON table. NA bigint Yes No Yes PERSON NA NA
condition_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies belonging to the ‘’Condition’’ domain. NA integer Yes No Yes CONCEPT Condition NA
condition_start_date The date when the instance of the Condition is recorded. NA date No No No NA NA NA
condition_start_datetime The date and time when the instance of the Condition is recorded. NA datetime Yes No No NA NA NA
condition_end_date The date when the instance of the Condition is considered to have ended. NA date No No No NA NA NA
condition_end_datetime The date when the instance of the Condition is considered to have ended. NA datetime No No No NA NA NA
condition_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the source data from which the Condition was recorded, the level of standardization, and the type of occurrence. These belong to the ‘’Condition Type’’ vocabulary NA integer Yes No Yes CONCEPT Type Concept NA
condition_status_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies reflecting the point of care at which the Condition was diagnosed. NA integer Yes No Yes CONCEPT NA NA
stop_reason The reason that the Condition was no longer present, as indicated in the source data. NA varchar(20) No No No NA NA NA
provider_id A foreign key to the Provider in the PROVIDER table who was responsible for capturing (diagnosing) the Condition. NA integer No No Yes PROVIDER NA NA
visit_occurrence_id A foreign key to the visit in the VISIT_OCCURRENCE table during which the Condition was determined (diagnosed). NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the visit in the VISIT_DETAIL table during which the Condition was determined (diagnosed). NA integer No No Yes VISIT_DETAIL NA NA
condition_source_value The source code for the Condition as it appears in the source data. This code is mapped to a Standard Condition Concept in the Standardized Vocabularies and the original code is stored here for reference. NA varchar(50) No No No NA NA NA
condition_source_concept_id A foreign key to a Condition Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
condition_status_source_value The source code for the condition status as it appears in the source data. This code is mapped to a Standard Concept in the Standardized Vocabularies and the original code is stored here for reference. NA varchar(50) No No No NA NA NA

DRUG_EXPOSURE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
drug_exposure_id A system-generated unique identifier for each Drug utilization event. NA bigint Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is subjected to the Drug. The demographic details of that Person are stored in the PERSON table. NA bigint Yes No Yes PERSON NA NA
drug_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies belonging to the ‘’Drug’’ domain. NA integer Yes No Yes CONCEPT Drug NA
drug_exposure_start_date The start date for the current instance of Drug utilization. Valid entries include a start date of a prescription, the date a prescription was filled, or the date on which a Drug administration procedure was recorded. NA date No No No NA NA NA
drug_exposure_start_datetime The start date and time for the current instance of Drug utilization. Valid entries include a start datetime of a prescription, the date and time a prescription was filled, or the date and time on which a Drug administration procedure was recorded. NA datetime Yes No No NA NA NA
drug_exposure_end_date The end date for the current instance of Drug utilization. Depending on different sources, it could be a known or an inferred date and denotes the last day at which the patient was still exposed to Drug. NA date Yes No No NA NA NA
drug_exposure_end_datetime The end date and time for the current instance of Drug utilization. Depending on different sources, it could be a known or an inferred date and time and denotes the last day at which the patient was still exposed to Drug. NA datetime Yes No No NA NA NA
verbatim_end_date The known end date of a drug_exposure as provided by the source. NA date No No No NA NA NA
drug_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the type of Drug Exposure recorded. It indicates how the Drug Exposure was represented in the source data and belongs to the ‘’Drug Type’’ vocabulary. NA integer Yes No Yes CONCEPT Type Concept NA
stop_reason The reason the Drug was stopped. Reasons include regimen completed, changed, removed, etc. NA varchar(20) No No No NA NA NA
refills The number of refills after the initial prescription. The initial prescription is not counted, values start with null. NA integer No No No NA NA NA
quantity The quantity of drug as recorded in the original prescription or dispensing record. NA float No No No NA NA NA
days_supply The number of days of supply of the medication as prescribed. This reflects the intention of the provider for the length of exposure. NA integer No No No NA NA NA
sig The directions (‘’signetur’’) on the Drug prescription as recorded in the original prescription (and printed on the container) or dispensing record. NA varchar(MAX) No No No NA NA NA
route_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies reflecting the route of administration and belonging to the ‘’Route’’ domain. NA integer Yes No Yes CONCEPT NA NA
lot_number An identifier assigned to a particular quantity or lot of Drug product from the manufacturer. NA varchar(50) No No No NA NA NA
provider_id A foreign key to the provider in the PROVIDER table who initiated (prescribed or administered) the Drug Exposure. NA integer No No Yes PROVIDER NA NA
visit_occurrence_id A foreign key to the Visit in the VISIT_OCCURRENCE table during which the Drug Exposure was initiated. NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the Visit Detail in the VISIT_DETAIL table during which the Drug Exposure was initiated. NA integer No No Yes VISIT_DETAIL NA NA
drug_source_value The source code for the Drug as it appears in the source data. This code is mapped to a Standard Drug concept in the Standardized Vocabularies and the original code is, stored here for reference. NA varchar(50) No No No NA NA NA
drug_source_concept_id A foreign key to a Drug Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
route_source_value The information about the route of administration as detailed in the source. NA varchar(50) No No No NA NA NA
dose_unit_source_value The information about the dose unit as detailed in the source. NA varchar(50) No No No NA NA NA

PROCEDURE_OCCURRENCE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
procedure_occurrence_id A system-generated unique identifier for each Procedure Occurrence. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is subjected to the Procedure. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
procedure_concept_id A foreign key that refers to a standard procedure Concept identifier in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT Procedure NA
procedure_date The date on which the Procedure was performed. NA date No No No NA NA NA
procedure_datetime The date and time on which the Procedure was performed. NA datetime Yes No No NA NA NA
procedure_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the type of source data from which the procedure record is derived, belonging to the ‘Procedure Type’ vocabulary. NA integer Yes No Yes CONCEPT Type Concept NA
modifier_concept_id A foreign key to a Standard Concept identifier for a modifier to the Procedure (e.g. bilateral). These concepts are typically distinguished by ‘Modifier’ concept classes (e.g., ‘CPT4 Modifier’ as part of the ‘CPT4’ vocabulary). NA integer Yes No Yes CONCEPT NA NA
quantity The quantity of procedures ordered or administered. NA integer No No No NA NA NA
provider_id A foreign key to the provider in the PROVIDER table who was responsible for carrying out the procedure. NA integer No No No PROVIDER NA NA
visit_occurrence_id A foreign key to the Visit in the VISIT_OCCURRENCE table during which the Procedure was carried out. NA integer No No No VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the Visit Detail in the VISIT_DETAIL table during which the Procedure was carried out. NA integer No No No VISIT_DETAIL NA NA
procedure_source_value The source code for the Procedure as it appears in the source data. This code is mapped to a standard procedure Concept in the Standardized Vocabularies and the original code is, stored here for reference. Procedure source codes are typically ICD-9-Proc, CPT-4, HCPCS or OPCS-4 codes. NA varchar(50) No No No NA NA NA
procedure_source_concept_id A foreign key to a Procedure Concept that refers to the code used in the source. NA integer Yes No No CONCEPT NA NA
modifier_source_value The source code for the qualifier as it appears in the source data. NA varchar(50) No No No NA NA NA

DEVICE_EXPOSURE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
device_exposure_id A system-generated unique identifier for each Device Exposure. NA bigint Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is subjected to the Device. The demographic details of that Person are stored in the PERSON table. NA bigint Yes No Yes PERSON NA NA
device_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies belonging to the ‘Device’ domain. NA integer Yes No Yes CONCEPT Device NA
device_exposure_start_date The date the Device or supply was applied or used. NA date No No No NA NA NA
device_exposure_start_datetime The date and time the Device or supply was applied or used. NA datetime Yes No No NA NA NA
device_exposure_end_date The date use of the Device or supply was ceased. NA date No No No NA NA NA
device_exposure_end_datetime The date and time use of the Device or supply was ceased. NA datetime No No No NA NA NA
device_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the type of Device Exposure recorded. It indicates how the Device Exposure was represented in the source data and belongs to the ‘Device Type’ domain. NA integer Yes No Yes CONCEPT Type Concept NA
unique_device_id A UDI or equivalent identifying the instance of the Device used in the Person. NA varchar(50) No No No NA NA NA
quantity The number of individual Devices used in the exposure. NA integer No No No NA NA NA
provider_id A foreign key to the provider in the PROVIDER table who initiated or administered the Device. NA integer No No Yes PROVIDER NA NA
visit_occurrence_id A foreign key to the visit in the VISIT_OCCURRENCE table during which the Device was used. NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the visit detail record in the VISIT_DETAIL table during which the Device was used. NA integer No No Yes VISIT_DETAIL NA NA
device_source_value The source code for the Device as it appears in the source data. This code is mapped to a Standard Device Concept in the Standardized Vocabularies and the original code is stored here for reference. NA varchar(50) No No No NA NA NA
device_source_concept_id A foreign key to a Device Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA

MEASUREMENT

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
measurement_id A unique identifier for each Measurement. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person about whom the measurement was recorded. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
measurement_concept_id A foreign key to the standard measurement concept identifier in the Standardized Vocabularies. These belong to the ‘Measurement’ domain, but could overlap with the ‘Observation’ domain (see #3 below). NA integer Yes No Yes CONCEPT Measurement NA
measurement_date The date of the Measurement. NA date No No No NA NA NA
measurement_datetime The date and time of the Measurement. Some database systems don’t have a datatype of time. To accommodate all temporal analyses, datatype datetime can be used (combining measurement_date and measurement_time forum discussion) NA datetime Yes No No NA NA NA
measurement_time The time of the Measurement. This is present for backwards compatibility and will be deprecated in an upcoming version NA varchar(10) No No No NA NA NA
measurement_type_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the provenance from where the Measurement record was recorded. These belong to the ‘Meas Type’ vocabulary NA integer Yes No Yes CONCEPT Type Concept NA
operator_concept_id A foreign key identifier to the predefined Concept in the Standardized Vocabularies reflecting the mathematical operator that is applied to the value_as_number. Operators are <, <=, =, >=, > and these concepts belong to the ‘Meas Value Operator’ domain. NA integer No No Yes CONCEPT NA NA
value_as_number A Measurement result where the result is expressed as a numeric value. NA float No No No NA NA NA
value_as_concept_id A foreign key to a Measurement result represented as a Concept from the Standardized Vocabularies (e.g., positive/negative, present/absent, low/high, etc.). These belong to the ‘Meas Value’ domain NA integer No No Yes CONCEPT NA NA
unit_concept_id A foreign key to a Standard Concept ID of Measurement Units in the Standardized Vocabularies that belong to the ‘Unit’ domain. NA integer No No Yes CONCEPT Unit NA
range_low The lower limit of the normal range of the Measurement result. The lower range is assumed to be of the same unit of measure as the Measurement value. NA float No No No NA NA NA
range_high The upper limit of the normal range of the Measurement. The upper range is assumed to be of the same unit of measure as the Measurement value. NA float No No No NA NA NA
provider_id A foreign key to the provider in the PROVIDER table who was responsible for initiating or obtaining the measurement. NA integer No No Yes PROVIDER NA NA
visit_occurrence_id A foreign key to the Visit in the VISIT_OCCURRENCE table during which the Measurement was recorded. NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the Visit Detail in the VISIT_DETAIL table during which the Measurement was recorded. NA integer No No Yes VISIT_DETAIL NA NA
measurement_source_value The Measurement name as it appears in the source data. This code is mapped to a Standard Concept in the Standardized Vocabularies and the original code is stored here for reference. NA varchar(50) No No No NA NA NA
measurement_source_concept_id A foreign key to a Concept in the Standard Vocabularies that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
unit_source_value The source code for the unit as it appears in the source data. This code is mapped to a standard unit concept in the Standardized Vocabularies and the original code is stored here for reference. NA varchar(50) No No No NA NA NA
value_source_value The source value associated with the content of the value_as_number or value_as_concept_id as stored in the source data. NA varchar(50) No No No NA NA NA

VISIT_DETAIL

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
visit_detail_id A unique identifier for each Person’s visit or encounter at a healthcare provider. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person for whom the visit is recorded. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
visit_detail_concept_id A foreign key that refers to a visit Concept identifier in the Standardized Vocabularies belonging to the ‘Visit’ Vocabulary. NA integer Yes No Yes CONCEPT Visit NA
visit_detail_start_date The start date of the visit. NA date No No No NA NA NA
visit_detail_start_datetime The date and time of the visit started. NA datetime Yes No No NA NA NA
visit_detail_end_date The end date of the visit. If this is a one-day visit the end date should match the start date. NA date No No No NA NA NA
visit_detail_end_datetime The date and time of the visit end. NA datetime Yes No No NA NA NA
visit_detail_type_concept_id A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the type of source data from which the visit record is derived belonging to the ‘Visit Type’ vocabulary. NA Integer Yes No Yes NA NA NA
provider_id A foreign key to the provider in the provider table who was associated with the visit. NA integer No No Yes PROVIDER NA NA
care_site_id A foreign key to the care site in the care site table that was visited. NA integer No No Yes CARE_SITE NA NA
visit_detail_source_value The source code for the visit as it appears in the source data. NA string(50) No No No NA NA NA
visit_detail_source_concept_id A foreign key to a Concept that refers to the code used in the source. NA Integer Yes No Yes CONCEPT NA NA
admitted_from_source_value The source code for the admitting source as it appears in the source data. NA Varchar(50) No No No NA NA NA
admitted_from_concept_id A foreign key to the predefined concept in the ‘Place of Service’ Vocabulary reflecting the admitting source for a visit. NA Integer Yes No Yes CONCEPT NA NA
discharge_to_source_value The source code for the discharge disposition as it appears in the source data. NA Varchar(50) No No No NA NA NA
discharge_to_concept_id A foreign key to the predefined concept in the ‘Place of Service’ Vocabulary reflecting the discharge disposition for a visit. NA Integer Yes No Yes CONCEPT NA NA
preceding_visit_detail_id A foreign key to the VISIT_DETAIL table of the visit immediately preceding this visit NA Integer No No Yes VISIT_DETAIL NA NA
visit_detail_parent_id A foreign key to the VISIT_DETAIL table record to represent the immediate parent visit-detail record. NA Integer No No Yes VISIT_DETAIL NA NA
visit_occurrence_id A foreign key that refers to the record in the VISIT_OCCURRENCE table. This is a required field, because for every visit_detail is a child of visit_occurrence and cannot exist without a corresponding parent record in visit_occurrence. NA Integer Yes No Yes VISIT_OCCURRENCE NA NA

NOTE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
note_id A unique identifier for each note. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person about whom the Note was recorded. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
note_event_id A foreign key identifier to the event (e.g. Measurement, Procedure, Visit, Drug Exposure, etc) record during which the note was recorded. NA integer No No No NA NA NA
note_event_field_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the field to which the note_event_id is referring. NA integer No No No CONCEPT NA NA
note_date The date the note was recorded. NA date No No No NA NA NA
note_datetime The date and time the note was recorded. NA datetime Yes No No NA NA NA
note_type_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the type, origin or provenance of the Note. These belong to the ‘Note Type’ vocabulary NA integer Yes No Yes CONCEPT Type Concept NA
note_class_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the HL7 LOINC Document Type Vocabulary classification of the note. NA integer Yes No Yes CONCEPT NA NA
note_title The title of the Note as it appears in the source. NA varchar(250) No No No NA NA NA
note_text The content of the Note. NA varchar(MAX) Yes No No NA NA NA
encoding_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the note character encoding type NA integer Yes No Yes CONCEPT NA NA
language_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the language of the note NA integer Yes No Yes CONCEPT NA NA
provider_id A foreign key to the Provider in the PROVIDER table who took the Note. NA integer No No Yes NA NA NA
visit_occurrence_id A foreign key to the Visit in the VISIT_OCCURRENCE table when the Note was taken. NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the Visit in the VISIT_DETAIL table when the Note was taken. NA integer No No Yes VISIT_DETAIL NA NA
note_source_value The source value associated with the origin of the Note NA varchar(50) No No No NA NA NA

NOTE_NLP

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
note_nlp_id A unique identifier for each term extracted from a note. NA integer Yes Yes No NA NA NA
note_id A foreign key to the Note table note the term was NA integer Yes No No NA NA NA
section_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies representing the section of the extracted term. NA integer Yes No Yes NOTE NA NA
snippet A small window of text surrounding the term. NA varchar(250) No No No NA NA NA
offset Character offset of the extracted term in the input note. NA varchar(50) No No No NA NA NA
lexical_variant Raw text extracted from the NLP tool. NA varchar(250) Yes No No NA NA NA
note_nlp_concept_id A foreign key to the predefined Concept in the Standardized Vocabularies reflecting the normalized concept for the extracted term. Domain of the term is represented as part of the Concept table. NA integer Yes No Yes CONCEPT NA NA
note_nlp_source_concept_id A foreign key to a Concept that refers to the code in the source vocabulary used by the NLP system NA integer Yes No Yes CONCEPT NA NA
nlp_system Name and version of the NLP system that extracted the term.Useful for data provenance. NA varchar(250) No No No NA NA NA
nlp_date The date of the note processing.Useful for data provenance. NA date Yes No No NA NA NA
nlp_datetime The date and time of the note processing. Useful for data provenance. NA datetime No No No NA NA NA
term_exists A summary modifier that signifies presence or absence of the term for a given patient. Useful for quick querying. NA varchar(1) No No No NA NA NA
term_temporal An optional time modifier associated with the extracted term. (for now “past” or “present” only). Standardize it later. NA varchar(50) No No No NA NA NA
term_modifiers A compact description of all the modifiers of the specific term extracted by the NLP system. (e.g. “son has rash” ? “negated=no,subject=family, certainty=undef,conditional=false,general=false”). NA varchar(2000) No No No NA NA NA

SURVEY_CONDUCT

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
SURVEY_CONDUCT_ID Unique identifier for each completed survey. NA integer Yes Yes No NA NA NA
PERSON_ID A foreign key identifier to the Person in the PERSON table about whom the survey was completed. NA integer Yes No Yes PERSON NA NA
SURVEY_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the name and identity of the survey. NA integer Yes No Yes CONCEPT NA NA
SURVEY_START_DATE Date on which the survey was started. NA date No No No NA NA NA
SURVEY_START_DATETIME Date and time the survey was started. NA datetime Yes No No NA NA NA
SURVEY_END_DATE Date on which the survey was completed. NA date No No No NA NA NA
SURVEY_END_DATETIME Date and time the survey was completed. NA datetime Yes No No NA NA NA
PROVIDER_ID A foreign key to the provider in the provider table who was associated with the survey completion. NA integer No No Yes PROVIDER NA NA
ASSISTED_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies indicating whether the survey was completed with assistance. NA integer Yes No Yes NA NA NA
RESPONDENT_TYPE_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the respondent type. Example: Research Associate, Patient. NA integer Yes No Yes CONCEPT NA NA
TIMING_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies that refers to a certain timing. Example: 3 month follow-up, 6 month follow-up. NA integer Yes No Yes NA NA NA
COLLECTION_METHOD_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the data collection method (e.g. Paper, Telephone, Electronic Questionnaire). NA integer Yes No No CONCEPT NA NA
ASSISTED_SOURCE_VALUE Source value representing whether patient required assistance to complete the survey. Example: “Completed without assistance”, ”Completed with assistance”. NA varchar(50) No No No NA NA NA
RESPONDENT_TYPE_SOURCE_VALUE Source code representing role of person who completed the survey. NA varchar(100) No No No NA NA NA
TIMING_SOURCE_VALUE Text string representing the timing of the survey. Example: Baseline, 6-month follow-up. NA varchar(100) No No No NA NA NA
COLLECTION_METHOD_SOURCE_VALUE The collection method as it appears in the source data. NA varchar(100) No No No NA NA NA
SURVEY_SOURCE_VALUE The survey name/title as it appears in the source data. NA varchar(100) No No No NA NA NA
SURVEY_SOURCE_CONCEPT_ID A foreign key to a predefined Concept that refers to the code for the survey name/title used in the source. NA integer Yes No Yes CONCEPT NA NA
SURVEY_SOURCE_IDENTIFIER Unique identifier for each completed survey in source system. NA varchar(100) No No No NA NA NA
VALIDATED_SURVEY_CONCEPT_ID A foreign key to the predefined Concept identifier in the Standardized Vocabularies reflecting the validation status of the survey. NA integer Yes No Yes CONCEPT NA NA
VALIDATED_SURVEY_SOURCE_VALUE Source value representing the validation status of the survey. NA integer No No No NA NA NA
SURVEY_VERSION_NUMBER Version number of the questionnaire or survey used. NA varchar(20) No No No NA NA NA
VISIT_OCCURRENCE_ID A foreign key to the VISIT_OCCURRENCE table during which the survey was completed NA integer No No Yes VISIT_OCCURRENCE NA NA
RESPONSE_VISIT_OCCURRENCE_ID A foreign key to the visit in the VISIT_OCCURRENCE table during which treatment was carried out that relates to this survey. NA integer No No Yes VISIT_OCCURRENCE NA NA

OBSERVATION

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
observation_id A unique identifier for each observation. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person about whom the observation was recorded. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
observation_concept_id A foreign key to the standard observation concept identifier in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
observation_date The date of the observation. NA date No No No NA NA NA
observation_datetime The date and time of the observation. NA datetime Yes No No NA NA NA
observation_type_concept_id A foreign key to the predefined concept identifier in the Standardized Vocabularies reflecting the type of the observation. NA integer Yes No Yes CONCEPT Type Concept NA
value_as_number The observation result stored as a number. This is applicable to observations where the result is expressed as a numeric value. NA float No No No NA NA NA
value_as_string The observation result stored as a string. This is applicable to observations where the result is expressed as verbatim text. NA varchar(60) No No No NA NA NA
value_as_concept_id A foreign key to an observation result stored as a Concept ID. This is applicable to observations where the result can be expressed as a Standard Concept from the Standardized Vocabularies (e.g., positive/negative, present/absent, low/high, etc.). NA Integer No No Yes CONCEPT NA NA
qualifier_concept_id A foreign key to a Standard Concept ID for a qualifier (e.g., severity of drug-drug interaction alert) NA integer No No Yes CONCEPT NA NA
unit_concept_id A foreign key to a Standard Concept ID of measurement units in the Standardized Vocabularies. NA integer No No Yes CONCEPT Unit NA
provider_id A foreign key to the provider in the PROVIDER table who was responsible for making the observation. NA integer No No Yes PROVIDER NA NA
visit_occurrence_id A foreign key to the visit in the VISIT_OCCURRENCE table during which the observation was recorded. NA integer No No Yes VISIT_OCCURRENCE NA NA
visit_detail_id A foreign key to the visit in the VISIT_DETAIL table during which the observation was recorded. NA integer No No Yes VISIT_DETAIL NA NA
observation_source_value The observation code as it appears in the source data. This code is mapped to a Standard Concept in the Standardized Vocabularies and the original code is, stored here for reference. NA varchar(50) No No No NA NA NA
observation_source_concept_id A foreign key to a Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
unit_source_value The source code for the unit as it appears in the source data. This code is mapped to a standard unit concept in the Standardized Vocabularies and the original code is, stored here for reference. NA varchar(50) No No No NA NA NA
qualifier_source_value The source value associated with a qualifier to characterize the observation NA varchar(50) No No No NA NA NA
observation_event_id A foreign key to an event table (e.g., PROCEDURE_OCCURRENCE_ID). NA integer No No No NA NA NA
obs_event_field_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies referring to the field represented in the OBSERVATION_EVENT_ID. NA integer Yes No Yes CONCEPT NA NA
value_as_datetime The observation result stored as a datetime value. This is applicable to observations where the result is expressed as a point in time. NA datetime No No No NA NA NA

SPECIMEN

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
specimen_id A unique identifier for each specimen. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person for whom the Specimen is recorded. NA integer Yes No Yes PERSON NA NA
specimen_concept_id A foreign key referring to a Standard Concept identifier in the Standardized Vocabularies for the Specimen. NA integer Yes No Yes CONCEPT NA NA
specimen_type_concept_id A foreign key referring to the Concept identifier in the Standardized Vocabularies reflecting the system of record from which the Specimen was represented in the source data. NA integer Yes No Yes CONCEPT Type Concept NA
specimen_date The date the specimen was obtained from the Person. NA date No No No NA NA NA
specimen_datetime The date and time on the date when the Specimen was obtained from the person. NA datetime Yes No No NA NA NA
quantity The amount of specimen collection from the person during the sampling procedure. NA float No No No NA NA NA
unit_concept_id A foreign key to a Standard Concept identifier for the Unit associated with the numeric quantity of the Specimen collection. NA integer No No Yes CONCEPT NA NA
anatomic_site_concept_id A foreign key to a Standard Concept identifier for the anatomic location of specimen collection. NA integer Yes No Yes CONCEPT NA NA
disease_status_concept_id A foreign key to a Standard Concept identifier for the Disease Status of specimen collection. NA integer Yes No Yes CONCEPT NA NA
specimen_source_id The Specimen identifier as it appears in the source data. NA varchar(50) No No No NA NA NA
specimen_source_value The Specimen value as it appears in the source data. This value is mapped to a Standard Concept in the Standardized Vocabularies and the original code is, stored here for reference. NA varchar(50) No No No NA NA NA
unit_source_value The information about the Unit as detailed in the source. NA varchar(50) No No No NA NA NA
anatomic_site_source_value The information about the anatomic site as detailed in the source. NA varchar(50) No No No NA NA NA
disease_status_source_value The information about the disease status as detailed in the source. NA varchar(50) No No No NA NA NA

FACT_RELATIONSHIP

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
domain_concept_id_1 The concept representing the domain of fact one, from which the corresponding table can be inferred. NA integer Yes No Yes CONCEPT NA NA
fact_id_1 The unique identifier in the table corresponding to the domain of fact one. NA integer Yes No No NA NA NA
domain_concept_id_2 The concept representing the domain of fact two, from which the corresponding table can be inferred. NA integer Yes No Yes CONCEPT NA NA
fact_id_2 The unique identifier in the table corresponding to the domain of fact two. NA integer Yes No No NA NA NA
relationship_concept_id A foreign key to a Standard Concept ID of relationship in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA

LOCATION

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
location_id A unique identifier for each geographic location. NA integer Yes Yes No NA NA NA
address_1 The address field 1, typically used for the street address, as it appears in the source data. NA varchar(50) No No No NA NA NA
address_2 The address field 2, typically used for additional detail such as buildings, suites, floors, as it appears in the source data. NA varchar(50) No No No NA NA NA
city The city field as it appears in the source data. NA varchar(50) No No No NA NA NA
state The state field as it appears in the source data. NA varchar(2) No No No NA NA NA
zip The zip or postal code. NA varchar(9) No No No NA NA NA
county The county. NA varchar(20) No No No NA NA NA
country The country NA varchar(100) No No No NA NA NA
location_source_value The verbatim information that is used to uniquely identify the location as it appears in the source data. NA varchar(50) No No No NA NA NA
latitude The geocoded latitude NA float No No No NA NA NA
longitude The geocoded longitude NA float No No No NA NA NA

LOCATION_HISTORY

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
location_id A foreign key to the location table. NA integer Yes No Yes LOCATION NA NA
relationship_type_concept_id The type of relationship between location and entity. NA varchar(50) Yes No Yes CONCEPT NA NA
domain_id The domain of the entity that is related to the location. Either PERSON, PROVIDER, or CARE_SITE. NA varchar(50) Yes No No NA NA NA
entity_id The unique identifier for the entity. References either person_id, provider_id, or care_site_id, depending on domain_id. NA integer Yes No No NA NA NA
start_date The date the relationship started. NA date Yes No No NA NA NA
end_date The date the relationship ended. NA date No No No NA NA NA

CARE_SITE

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
care_site_id A unique identifier for each Care Site. NA integer Yes Yes No NA NA NA
care_site_name The verbatim description or name of the Care Site as in data source NA varchar(255) No No No NA NA NA
place_of_service_concept_id A foreign key that refers to a Place of Service Concept ID in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
location_id A foreign key to the geographic Location in the LOCATION table, where the detailed address information is stored. NA integer No No No NA NA NA
care_site_source_value The identifier for the Care Site in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
place_of_service_source_value The source code for the Place of Service as it appears in the source data, stored here for reference. NA varchar(50) No No No NA NA NA

PROVIDER

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
provider_id A unique identifier for each Provider. NA integer Yes Yes No NA NA NA
provider_name A description of the Provider. NA varchar(255) No No No NA NA NA
npi The National Provider Identifier (NPI) of the provider. NA varchar(20) No No No NA NA NA
dea The Drug Enforcement Administration (DEA) number of the provider. NA varchar(20) No No No NA NA NA
specialty_concept_id A foreign key to a Standard Specialty Concept ID in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
care_site_id A foreign key to the main Care Site where the provider is practicing. NA integer No No Yes CARE_SITE NA NA
year_of_birth The year of birth of the Provider. NA integer No No No NA NA NA
gender_concept_id The gender of the Provider. NA integer Yes No Yes CONCEPT Gender NA
provider_source_value The identifier used for the Provider in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
specialty_source_value The source code for the Provider specialty as it appears in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
specialty_source_concept_id A foreign key to a Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
gender_source_value The gender code for the Provider as it appears in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
gender_source_concept_id A foreign key to a Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA

PAYER_PLAN_PERIOD

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
payer_plan_period_id A identifier for each unique combination of payer, plan, family code and time span. NA integer Yes Yes Yes PERSON NA NA
person_id A foreign key identifier to the Person covered by the payer. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
contract_person_id A foreign key identifier to the person_id in person table, for the person who is the primary subscriber/contract owner for the record in the payer_plan_period table. Maybe the same person or different person, depending on who is the primary subscriber/contract owner. NA integer No No No NA NA NA
payer_plan_period_start_date The start date of the payer plan period. NA date Yes No No NA NA NA
payer_plan_period_end_date The end date of the payer plan period. NA date Yes No No NA NA NA
payer_concept_id A foreign key that refers to a standard Payer concept identifier in the Standarized Vocabularies NA integer Yes No Yes CONCEPT NA NA
payer_source_value The source code for the payer as it appears in the source data. NA varchar(50) No No No NA NA NA
payer_source_concept_id A foreign key to a payer concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
plan_concept_id A foreign key that refers to a standard plan concept identifier that represents the health benefit plan in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
plan_source_value The source code for the Person’s health benefit plan as it appears in the source data. NA varchar(50) No No No NA NA NA
plan_source_concept_id A foreign key to a plan concept that refers to the plan code used in the source data. NA integer Yes No Yes CONCEPT NA NA
contract_concept_id A foreign key to a standard concept representing the reason justifying the contract between person_id and contract_person_id. NA integer Yes No Yes CONCEPT NA NA
contract_source_value The source code representing the reason justifying the contract. Usually it is family relationship like a spouse, domestic partner, child etc. NA integer No No No NA NA NA
contract_source_concept_id A foreign key to a concept that refers to the code used in the source as the reason justifying the contract. NA integer Yes No Yes CONCEPT NA NA
sponsor_concept_id A foreign key that refers to a concept identifier that represents the sponsor in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
sponsor_source_value The source code for the Person’s sponsor of the health plan as it appears in the source data. NA varchar(50) No No No NA NA NA
sponsor_source_concept_id A foreign key to a sponsor concept that refers to the sponsor code used in the source data. NA integer Yes No Yes CONCEPT NA NA
family_source_value The source code for the Person’s family as it appears in the source data. NA varchar(50) No No No NA NA NA
stop_reason_concept_id A foreign key that refers to a standard termination reason that represents the reason for the termination in the Standardized Vocabularies. NA integer Yes No Yes CONCEPT NA NA
stop_reason_source_value The reason for stop-coverage as it appears in the source data. NA varchar(50) No No No NA NA NA
stop_reason_source_concept_id A foreign key to a stop-coverage concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA

COST

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
cost_id A unique identifier for each COST record. NA integer Yes Yes No NA NA NA
person_id A unique identifier for each PERSON. NA integer Yes No Yes PERSON NA NA
cost_event_id A foreign key identifier to the event (e.g. Measurement, Procedure, Visit, Drug Exposure, etc) record for which cost data are recorded. NA integer Yes No No NA NA NA
cost_event_field_concept_id A foreign key identifier to a concept in the CONCEPT table representing the identity of the field represented by COST_EVENT_ID NA integer Yes No Yes CONCEPT NA NA
cost_concept_id A foreign key that refers to a Standard Cost Concept identifier in the Standardized Vocabularies belonging to the ‘Cost’ vocabulary. NA integer Yes No Yes CONCEPT NA NA
cost_type_concept_id A foreign key identifier to a concept in the CONCEPT table for the provenance or the source of the COST data and belonging to the ‘Cost Type’ vocabulary NA integer Yes No Yes CONCEPT NA NA
cost_source_concept_id A foreign key to a Cost Concept that refers to the code used in the source. NA integer Yes No Yes CONCEPT NA NA
cost_source_value The source value for the cost as it appears in the source data NA varchar(50) No No No NA NA NA
currency_concept_id A foreign key identifier to the concept representing the 3-letter code used to delineate international currencies, such as USD for US Dollar. These belong to the ‘Currency’ vocabulary NA integer Yes No Yes CONCEPT NA NA
cost The actual financial cost amount NA float Yes No No NA NA NA
incurred_date The first date of service of the clinical event corresponding to the cost as in table capturing the information (e.g. date of visit, date of procedure, date of condition, date of drug etc). NA date Yes No No NA NA NA
billed_date The date a bill was generated for a service or encounter NA date No No No NA NA NA
paid_date The date payment was received for a service or encounter NA date No No No NA NA NA
revenue_code_concept_id A foreign key referring to a Standard Concept ID in the Standardized Vocabularies for Revenue codes belonging to the ‘Revenue Code’ vocabulary. NA integer Yes No Yes CONCEPT NA NA
drg_concept_id A foreign key referring to a Standard Concept ID in the Standardized Vocabularies for DRG codes belonging to the ‘DRG’ vocabulary. NA integer Yes No Yes NA NA NA
revenue_code_source_value The source value for the Revenue code as it appears in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
drg_source_value The source value for the 3-digit DRG source code as it appears in the source data, stored here for reference. NA varchar(50) No No No NA NA NA
payer_plan_period_id A foreign key to the PAYER_PLAN_PERIOD table, where the details of the Payer, Plan and Family are stored. Record the payer_plan_id that relates to the payer who contributed to the paid_by_payer field. NA integer No No Yes NA NA NA

DRUG_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
drug_era_id A unique identifier for each Drug Era. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is subjected to the Drug during the fDrug Era. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
drug_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies for the Ingredient Concept. NA integer Yes No Yes CONCEPT Drug Ingredient
drug_era_start_datetime The start date for the Drug Era constructed from the individual instances of Drug Exposures. It is the start date of the very first chronologically recorded instance of conutilization of a Drug. NA datetime Yes No No NA NA NA
drug_era_end_datetime The end date for the drug era constructed from the individual instance of drug exposures. It is the end date of the final continuously recorded instance of utilization of a drug. NA datetime Yes No No NA NA NA
drug_exposure_count The number of individual Drug Exposure occurrences used to construct the Drug Era. NA integer No No No NA NA NA
gap_days The number of days that are not covered by DRUG_EXPOSURE records that wer NA integer No No No NA NA NA

DOSE_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
dose_era_id A unique identifier for each Dose Era. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is subjected to the drug during the drug era. The demographic details of that Person are stored in the PERSON table. NA integer Yes No Yes PERSON NA NA
drug_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies for the active Ingredient Concept. NA integer Yes No Yes CONCEPT Drug Ingredient
unit_concept_id A foreign key that refers to a Standard Concept identifier in the Standardized Vocabularies for the unit concept. NA integer Yes No Yes CONCEPT Unit NA
dose_value The numeric value of the dose. NA float Yes No No NA NA NA
dose_era_start_datetime The start date for the drug era constructed from the individual instances of drug exposures. It is the start date of the very first chronologically recorded instance of utilization of a drug. NA datetime Yes No No NA NA NA
dose_era_end_datetime The end date for the drug era constructed from the individual instance of drug exposures. It is the end date of the final continuously recorded instance of utilization of a drug. NA datetime Yes No No NA NA NA

CONDITION_ERA

CDM Field User Guide ETL Conventions Datatype Is Required Is Primary Key Is Foreign Key (FK) FK Table FK Domain FK Class
condition_era_id A unique identifier for each Condition Era. NA integer Yes Yes No NA NA NA
person_id A foreign key identifier to the Person who is experiencing the Condition during the Condition Era. The demographic details of that Person are stored in the PERSON table. NA integer Yes No No PERSON NA NA
condition_concept_id A foreign key that refers to a standard Condition Concept identifier in the Standardized Vocabularies. NA integer Yes No No CONCEPT Condition NA
condition_era_start_datetime The start date for the Condition Era constructed from the individual instances of Condition Occurrences. It is the start date of the very first chronologically recorded instance of the condition. NA datetime Yes No No NA NA NA
condition_era_end_datetime The end date for the Condition Era constructed from the individual instances of Condition Occurrences. It is the end date of the final continuously recorded instance of the Condition. NA datetime Yes No No NA NA NA
condition_occurrence_count The number of individual Condition Occurrences used to construct the condition era. NA integer No No No NA NA NA