Skip to content

CSV File Data Dictionary

Dylan Hall edited this page Apr 17, 2020 · 55 revisions

Synthea can be configured to export data as CSV into ./output/csv.

To export CSV, edit ./src/main/resources/synthea.properties and change this setting:

exporter.csv.export = true

Note that you should build again.

./gradlew build check test

After running Synthea, the CSV exporter will create these files:

File Description
allergies.csv Patient allergy data.
careplans.csv Patient care plan data, including goals.
conditions.csv Patient conditions or diagnoses.
devices.csv Patient-affixed permanent and semi-permanent devices.
encounters.csv Patient encounter data.
imaging_studies.csv Patient imaging metadata.
immunizations.csv Patient immunization data.
medications.csv Patient medication data.
observations.csv Patient observations including vital signs and lab reports.
organizations.csv Provider organizations including hospitals.
patients.csv Patient demographic data.
payer_transitions.csv Payer Transition data (i.e. changes in health insurance).
payers.csv Payer organization data.
procedures.csv Patient procedure data including surgeries.
providers.csv Clinicians that provide patient care.
supplies.csv Supplies used in the provision of care.

Data Dictionary information for each CSV table follows below.

Allergies

Column Name Data Type Required? Description
Start Date (YYYY-MM-DD) true The date the allergy was diagnosed.
Stop Date (YYYY-MM-DD) false The date the allergy ended, if applicable.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter when the allergy was diagnosed.
Code String true Allergy code from SNOMED-CT
Description String true Description of the Allergy

CarePlans

Column Name Data Type Required? Description
🔑 Id UUID true Primary Key. Unique Identifier of the care plan.
Start Date (YYYY-MM-DD) true The date the care plan was initiated.
Stop Date (YYYY-MM-DD) false The date the care plan ended, if applicable.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter when the care plan was initiated.
Code String true Code from SNOMED-CT
Description String true Description of the care plan.
ReasonCode String true Diagnosis code from SNOMED-CT that this care plan addresses.
ReasonDescription String true Description of the reason code.

Conditions

Column Name Data Type Required? Description
Start Date (YYYY-MM-DD) true The date the condition was diagnosed.
Stop Date (YYYY-MM-DD) false The date the condition resolved, if applicable.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter when the condition was diagnosed.
Code String true Diagnosis code from SNOMED-CT
Description String true Description of the condition.

Devices

Column Name Data Type Required? Description
Start iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the device was associated to the patient.
Stop iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') false The date and time the device was removed, if applicable.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter when the device was associated.
Code String true Type of device, from SNOMED-CT
Description String true Description of the device.
UDI String true Unique Device Identifier for the device.

Encounters

Column Name Data Type Required? Description
🔑 Id UUID true Primary Key. Unique Identifier of the encounter.
Start iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the encounter started.
Stop iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') false The date and time the encounter concluded.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Organization UUID true Foreign key to the Organization.
🗝️ Provider UUID true Foreign key to the Provider.
🗝️ Payer UUID true Foreign key to the Payer.
EncounterClass String true The class of the encounter, such as ambulatory, emergency, inpatient, wellness, or urgentcare
Code String true Encounter code from SNOMED-CT
Description String true Description of the type of encounter.
Base_Encounter_Cost Numeric true The base cost of the encounter, not including any line item costs related to medications, immunizations, procedures, or other services.
Total_Claim_Cost Numeric true The total cost of the encounter, including all line items.
Payer_Coverage Numeric true The amount of cost covered by the Payer.
ReasonCode String false Diagnosis code from SNOMED-CT, only if this encounter targeted a specific condition.
ReasonDescription String false Description of the reason code.

Imaging Studies

Column Name Data Type Required? Description
🔑 Id UUID true Primary Key. Unique Identifier of the imaging study.
Date iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the imaging study was conducted.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter where the imaging study was conducted.
Body Site Code String true A SNOMED Body Structures code describing what part of the body the images in the series were taken of.
Body Site Description String true Description of the body site.
Modality Code String true A DICOM-DCM code describing the method used to take the images.
Modality Description String true Description of the modality.
SOP Code String true A DICOM-SOP code describing the Subject-Object Pair (SOP) that constitutes the image.
SOP Description String true Description of the SOP code.

Immunizations

Column Name Data Type Required? Description
Date iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date the immunization was administered.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter where the immunization was administered.
Code String true Immunization code from CVX.
Description String true Description of the immunization.
Cost Numeric true The line item cost of the immunization.

Medications

Column Name Data Type Required? Description
Start iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the medication was prescribed.
Stop iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') false The date and time the prescription ended, if applicable.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Payer UUID true Foreign key to the Payer.
🗝️ Encounter UUID true Foreign key to the Encounter where the medication was prescribed.
Code String true Medication code from RxNorm.
Description String true Description of the medication.
Base_Cost Numeric true The line item cost of the medication.
Payer_Coverage Numeric true The amount covered or reimbursed by the Payer.
Dispenses Numeric true The number of times the prescription was filled.
TotalCost Numeric true The total cost of the prescription, including all dispenses.
ReasonCode String false Diagnosis code from SNOMED-CT specifying why this medication was prescribed.
ReasonDescription String false Description of the reason code.

Observations

Column Name Data Type Required? Description
Date iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the observation was performed.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter where the observation was performed.
Code String true Observation or Lab code from LOINC
Description String true Description of the observation or lab.
Value String true The recorded value of the observation.
Units String false The units of measure for the value.
Type String true The datatype of Value: text or numeric

Organizations

Column Name Data Type Required? Description
🔑 Id UUID true Primary key of the Organization.
Name String true Name of the Organization.
Address String true Organization's street address without commas or newlines.
City String true Street address city.
State String false Street address state abbreviation.
Zip String false Street address zip or postal code.
Lat Numeric false Latitude of Organization's address.
Lon Numeric false Longitude of Organization's address.
Phone String false Organization's phone number.
Revenue Numeric true The monetary revenue of the organization during the entire simulation.
Utilization Numeric true The number of Encounters performed by this Organization.

Patients

Column Name Data Type Required? Description
🔑 Id UUID true Primary Key. Unique Identifier of the patient.
BirthDate Date (YYYY-MM-DD) true The date the patient was born.
DeathDate Date (YYYY-MM-DD) false The date the patient died.
SSN String true Patient Social Security identifier.
Drivers String false Patient Drivers License identifier.
Passport String false Patient Passport identifier.
Prefix String false Name prefix, such as Mr., Mrs., Dr., etc.
First String true First name of the patient.
Last String true Last or surname of the patient.
Suffix String false Name suffix, such as PhD, MD, JD, etc.
Maiden String false Maiden name of the patient.
Marital String false Marital Status. M is married, S is single. Currently no support for divorce (D) or widowing (W)
Race String true Description of the patient's primary race.
Ethnicity String true Description of the patient's primary ethnicity.
Gender String true Gender. M is male, F is female.
BirthPlace String true Name of the town where the patient was born.
Address String true Patient's street address without commas or newlines.
City String true Patient's address city.
County String false Patient's address county.
State String true Patient's address state.
Zip String false Patient's zip code.
Lat Numeric false Latitude of Patient's address.
Lon Numeric false Longitude of Patient's address.
Healthcare_Expenses true The total lifetime cost of healthcare to the patient (i.e. what the patient paid).
Healthcare_Coverage true The total lifetime cost of healthcare services that were covered by Payers (i.e. what the insurance company paid).

Payer Transitions

Column Name Data Type Required? Description
🗝️ Patient UUID true Foreign key to the Patient.
Start_Year Date (YYYY) true The year the coverage started (inclusive).
End_Year Date (YYYY) true The year the coverage ended (inclusive).
🗝️ Payer UUID true Foreign key to the Payer.
Ownership String false The owner of the insurance policy. Legal values: Guardian, Self, Spouse.

Payers

Column Name Data Type Required? Description
🔑 Id UUID true Primary key of the Payer (e.g. Insurance).
Name String true Name of the Payer.
Address String false Payer's street address without commas or newlines.
City String false Street address city.
State_Headquartered String false Street address state abbreviation.
Zip String false Street address zip or postal code.
Phone String false Payer's phone number.
Amount_Covered Numeric true The monetary amount paid to Organizations during the entire simulation.
Amount_Uncovered Numeric true The monetary amount not paid to Organizations during the entire simulation, and covered out of pocket by patients.
Revenue Numeric true The monetary revenue of the Payer during the entire simulation.
Covered_Encounters Numeric true The number of Encounters paid for by this Payer.
Uncovered_Encounters Numeric true The number of Encounters not paid for by this Payer, and paid out of pocket by patients.
Covered_Medications Numeric true The number of Medications paid for by this Payer.
Uncovered_Medications Numeric true The number of Medications not paid for by this Payer, and paid out of pocket by patients.
Covered_Procedures Numeric true The number of Procedures paid for by this Payer.
Uncovered_Procedures Numeric true The number of Procedures not paid for by this Payer, and paid out of pocket by patients.
Covered_Immunizations Numeric true The number of Immunizations paid for by this Payer.
Uncovered_Immunizations Numeric true The number of Immunizations not paid for by this Payer, and paid out of pocket by patients.
Unique_Customers Numeric true The number of unique patients enrolled with this Payer during the entire simulation.
QOLS_Avg Numeric true The average Quality of Life Scores (QOLS) for all patients enrolled with this Payer during the entire simulation.
Member_Months Numeric true The total number of months that patients were enrolled with this Payer during the simulation and paid monthly premiums (if any).

Procedures

Column Name Data Type Required? Description
Date iso8601 UTC Date (yyyy-MM-dd'T'HH:mm'Z') true The date and time the procedure was performed.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter where the procedure was performed.
Code String true Procedure code from SNOMED-CT
Description String true Description of the procedure.
Base_Cost Numeric true The line item cost of the procedure.
ReasonCode String false Diagnosis code from SNOMED-CT specifying why this procedure was performed.
ReasonDescription String false Description of the reason code.

Providers

Column Name Data Type Required? Description
🔑 Id UUID true Primary key of the Provider/Clinician.
🗝️ Organization UUID true Foreign key to the Organization that employees this provider.
Name String true First and last name of the Provider.
Gender String true Gender. M is male, F is female.
Speciality String true Provider speciality.
Address String true Provider's street address without commas or newlines.
City String true Street address city.
State String false Street address state abbreviation.
Zip String false Street address zip or postal code.
Lat Numeric false Latitude of Provider's address.
Lon Numeric false Longitude of Provider's address.
Utilization Numeric true The number of Encounter's performed by this provider.

Supplies

Column Name Data Type Required? Description
Date Date (YYYY-MM-DD) true The date the supplies were used.
🗝️ Patient UUID true Foreign key to the Patient.
🗝️ Encounter UUID true Foreign key to the Encounter when the supplies were used.
Code String true Code for the type of supply used, from SNOMED-CT
Description String true Description of supply used.
Clone this wiki locally