From 3211d7408ff53e3580738bbbff45b9cbc5e12f09 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:13:09 -0400 Subject: [PATCH 01/12] Update Project.toml --- Project.toml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Project.toml b/Project.toml index 3787f0d..174e927 100644 --- a/Project.toml +++ b/Project.toml @@ -1,18 +1,19 @@ name = "OMOPCommonDataModel" uuid = "ba65db9e-6590-4054-ab8a-101ed9124986" authors = ["Dilum Aluthge", "Brown Center for Biomedical Informatics", "JuliaHealth", "contributors"] -version = "0.1.4" +version = "0.2.0" [deps] Dates = "ade2ca70-3891-5945-98fb-dc099432e06a" DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" +PrettyPrint = "8162dcfd-2161-5ef2-ae6c-7681170c5f98" [compat] -DataFrames = "0.21" -DocStringExtensions = "0.8" +DataFrames = "1" +DocStringExtensions = "0.8, 0.9" PrettyPrint = "0.2" -StructArrays = "0.4" +StructArrays = "0.4, 0.5, 0.6" Tables = "1" julia = "1.1" From 6c74eee53e28bc583aa4813d2981f75a380f1aa3 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:14:08 -0400 Subject: [PATCH 02/12] Update README --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 5d941cb..4983069 100644 --- a/README.md +++ b/README.md @@ -8,3 +8,10 @@ Pure Julia implementation of the [OMOP Common Data Model (CDM)](https://github.com/OHDSI/CommonDataModel). Please see the [documentation](https://JuliaHealth.github.io/OMOPCommonDataModel.jl/stable). + +## Example +```julia +using CSV, DataFrames, OMOPCommonDataModel + +CSV.File("person.csv",types=[Person.types...]) |> DataFrame +``` From 25b0f781dcc5855db21cc2c53294435f3f2ef4d9 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:15:47 -0400 Subject: [PATCH 03/12] Support 5.4.1 or 5.3.1 --- src/version-utils.jl | 2 +- src/version.jl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/version-utils.jl b/src/version-utils.jl index d4ed273..4abbf3b 100644 --- a/src/version-utils.jl +++ b/src/version-utils.jl @@ -15,5 +15,5 @@ end The version of the OMOP Common Data Model (CDM) being implemented. """ @inline function cdm_version()::VersionNumber - return CDM_VERSION + return OMOP_CDM_VERSION end diff --git a/src/version.jl b/src/version.jl index 6bac6c6..37ed23e 100644 --- a/src/version.jl +++ b/src/version.jl @@ -1 +1 @@ -const CDM_VERSION = v"5.3.1" +const OMOP_CDM_VERSION = get(ENV, "OMOP_CDM_VERSION", v"5.4.1") From 05c265eb920b74b097875e6bd534d892c99bbf6f Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:16:38 -0400 Subject: [PATCH 04/12] Update regex for modern DDLs --- src/Generate/generate-types.jl | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/Generate/generate-types.jl b/src/Generate/generate-types.jl index d632be7..8451cbc 100644 --- a/src/Generate/generate-types.jl +++ b/src/Generate/generate-types.jl @@ -1,11 +1,12 @@ -const _default_input_file_name = "OMOP-CDM-sql-server-ddl.txt" +const VERSION = "5.4" +const _default_input_file_name = join(["OMOPCDM_duckdb_", VERSION, "_ddl.sql"]) const _default_input_file_path = joinpath(dirname(dirname(dirname(@__FILE__))), "assets", _default_input_file_name) """ Generate the code for OMOPCommonDataModel from the DDL. """ @inline function generate(; input_file = _default_input_file_path, - output_file = "autogenerated.jl", + output_file = join(["Outfiles/", VERSION, ".jl"]), string_casing::F = pascalcase, export_structs::Bool = true, make_all_fields_optional::Bool = false, @@ -35,7 +36,7 @@ end export_structs::Bool, make_all_fields_optional, struct_keyword)::String where F - pattern = r"CREATE TABLE ([\w_]*?)[ ]?[\n]?\(([\s\S]*?\n)\s?\s?\s?\s?\s?\s?\)\n;" + pattern = r"CREATE TABLE @cdmDatabaseSchema.([\w_]*) \(([\s\S]*?)[\n\)];" all_match_positions = findall(pattern, input_file_contents) all_match_strings = String[input_file_contents[position] for position in all_match_positions] all_type_lines = String[ @@ -136,10 +137,16 @@ end return "Int" elseif _cdm_type == "date" return "Dates.DateTime" + elseif _cdm_type == "timestamp" + return "Dates.DateTime" elseif _cdm_type == "datetime2" return "Dates.DateTime" + elseif _cdm_type == "numeric" + return "Float64" elseif _cdm_type == "float" return "Float64" + elseif _cdm_type == "text" + return "String" elseif _cdm_type == "varchar(max)" return "String" elseif occursin(varchar_pattern, _cdm_type) From be5a7d14943088905c9c113a5df28d9d9515f901 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:17:18 -0400 Subject: [PATCH 05/12] Check ENV for OMOP_CDM_VERSION --- src/OMOPCommonDataModel.jl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/OMOPCommonDataModel.jl b/src/OMOPCommonDataModel.jl index c203633..0010834 100644 --- a/src/OMOPCommonDataModel.jl +++ b/src/OMOPCommonDataModel.jl @@ -9,7 +9,11 @@ include("types.jl") include("version.jl") include("Generate/Generate.jl") -include("autogenerated.jl") include("version-utils.jl") +if cdm_version() ≥ v"5.4" + include("Generate/Outfiles/5.4.jl") +else + include("Generate/Outfiles/5.3.jl") +end end # end module OMOPCommonDataModel From cd84e36b935be08ff9884a985f12a8f51bdbe8cc Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:18:12 -0400 Subject: [PATCH 06/12] Remove old DDL --- assets/OMOP-CDM-sql-server-ddl.txt | 730 ----------------------------- 1 file changed, 730 deletions(-) delete mode 100644 assets/OMOP-CDM-sql-server-ddl.txt diff --git a/assets/OMOP-CDM-sql-server-ddl.txt b/assets/OMOP-CDM-sql-server-ddl.txt deleted file mode 100644 index cc2c114..0000000 --- a/assets/OMOP-CDM-sql-server-ddl.txt +++ /dev/null @@ -1,730 +0,0 @@ -/********************************************************************************* -# Copyright 2017-11 Observational Health Data Sciences and Informatics -# -# -# Licensed under the Apache License, Version 2.0 (the "License") -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -********************************************************************************/ - -/************************ - - ####### # # ####### ###### ##### ###### # # ####### ##### - # # ## ## # # # # # # # # ## ## # # # # # - # # # # # # # # # # # # # # # # # # # # # - # # # # # # # ###### # # # # # # # # ###### ##### - # # # # # # # # # # # # # # # ### # - # # # # # # # # # # # # # # # # # ### # # - ####### # # ####### # ##### ###### # # ## ##### ### ##### - - -sql server script to create OMOP common data model version 5.3 - -last revised: 14-June-2018 - -Authors: Patrick Ryan, Christian Reich, Clair Blacketer - - -*************************/ - - -/************************ - -Standardized vocabulary - -************************/ - - -CREATE TABLE concept ( - concept_id INTEGER NOT NULL , - concept_name VARCHAR(255) NOT NULL , - domain_id VARCHAR(20) NOT NULL , - vocabulary_id VARCHAR(20) NOT NULL , - concept_class_id VARCHAR(20) NOT NULL , - standard_concept VARCHAR(1) NULL , - concept_code VARCHAR(50) NOT NULL , - valid_start_date DATE NOT NULL , - valid_end_date DATE NOT NULL , - invalid_reason VARCHAR(1) NULL -) -; - - -CREATE TABLE vocabulary ( - vocabulary_id VARCHAR(20) NOT NULL, - vocabulary_name VARCHAR(255) NOT NULL, - vocabulary_reference VARCHAR(255) NOT NULL, - vocabulary_version VARCHAR(255) NOT NULL, - vocabulary_concept_id INTEGER NOT NULL -) -; - - -CREATE TABLE domain ( - domain_id VARCHAR(20) NOT NULL, - domain_name VARCHAR(255) NOT NULL, - domain_concept_id INTEGER NOT NULL -) -; - - -CREATE TABLE concept_class ( - concept_class_id VARCHAR(20) NOT NULL, - concept_class_name VARCHAR(255) NOT NULL, - concept_class_concept_id INTEGER NOT NULL -) -; - - -CREATE TABLE concept_relationship ( - concept_id_1 INTEGER NOT NULL, - concept_id_2 INTEGER NOT NULL, - relationship_id VARCHAR(20) NOT NULL, - valid_start_date DATE NOT NULL, - valid_end_date DATE NOT NULL, - invalid_reason VARCHAR(1) NULL - ) -; - - -CREATE TABLE relationship ( - relationship_id VARCHAR(20) NOT NULL, - relationship_name VARCHAR(255) NOT NULL, - is_hierarchical VARCHAR(1) NOT NULL, - defines_ancestry VARCHAR(1) NOT NULL, - reverse_relationship_id VARCHAR(20) NOT NULL, - relationship_concept_id INTEGER NOT NULL -) -; - - -CREATE TABLE concept_synonym ( - concept_id INTEGER NOT NULL, - concept_synonym_name VARCHAR(1000) NOT NULL, - language_concept_id INTEGER NOT NULL -) -; - - -CREATE TABLE concept_ancestor ( - ancestor_concept_id INTEGER NOT NULL, - descendant_concept_id INTEGER NOT NULL, - min_levels_of_separation INTEGER NOT NULL, - max_levels_of_separation INTEGER NOT NULL -) -; - - -CREATE TABLE source_to_concept_map ( - source_code VARCHAR(50) NOT NULL, - source_concept_id INTEGER NOT NULL, - source_vocabulary_id VARCHAR(20) NOT NULL, - source_code_description VARCHAR(255) NULL, - target_concept_id INTEGER NOT NULL, - target_vocabulary_id VARCHAR(20) NOT NULL, - valid_start_date DATE NOT NULL, - valid_end_date DATE NOT NULL, - invalid_reason VARCHAR(1) NULL -) -; - - - - -CREATE TABLE drug_strength ( - drug_concept_id INTEGER NOT NULL, - ingredient_concept_id INTEGER NOT NULL, - amount_value FLOAT NULL, - amount_unit_concept_id INTEGER NULL, - numerator_value FLOAT NULL, - numerator_unit_concept_id INTEGER NULL, - denominator_value FLOAT NULL, - denominator_unit_concept_id INTEGER NULL, - box_size INTEGER NULL, - valid_start_date DATE NOT NULL, - valid_end_date DATE NOT NULL, - invalid_reason VARCHAR(1) NULL -) -; - - - -CREATE TABLE cohort_definition ( - cohort_definition_id INTEGER NOT NULL, - cohort_definition_name VARCHAR(255) NOT NULL, - cohort_definition_description VARCHAR(MAX) NULL, - definition_type_concept_id INTEGER NOT NULL, - cohort_definition_syntax VARCHAR(MAX) NULL, - subject_concept_id INTEGER NOT NULL, - cohort_initiation_date DATE NULL -) -; - - -CREATE TABLE attribute_definition ( - attribute_definition_id INTEGER NOT NULL, - attribute_name VARCHAR(255) NOT NULL, - attribute_description VARCHAR(MAX) NULL, - attribute_type_concept_id INTEGER NOT NULL, - attribute_syntax VARCHAR(MAX) NULL -) -; - - -/************************** - -Standardized meta-data - -***************************/ - - -CREATE TABLE cdm_source -( - cdm_source_name VARCHAR(255) NOT NULL , - cdm_source_abbreviation VARCHAR(25) NULL , - cdm_holder VARCHAR(255) NULL , - source_description VARCHAR(MAX) NULL , - source_documentation_reference VARCHAR(255) NULL , - cdm_etl_reference VARCHAR(255) NULL , - source_release_date DATE NULL , - cdm_release_date DATE NULL , - cdm_version VARCHAR(10) NULL , - vocabulary_version VARCHAR(20) NULL -) -; - - -CREATE TABLE metadata -( - metadata_concept_id INTEGER NOT NULL , - metadata_type_concept_id INTEGER NOT NULL , - name VARCHAR(250) NOT NULL , - value_as_string VARCHAR(MAX) NULL , - value_as_concept_id INTEGER NULL , - metadata_date DATE NULL , - metadata_datetime DATETIME2 NULL -) -; - - -/************************ - -Standardized clinical data - -************************/ - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE person -( - person_id INTEGER NOT NULL , - gender_concept_id INTEGER NOT NULL , - year_of_birth INTEGER NOT NULL , - month_of_birth INTEGER NULL, - day_of_birth INTEGER NULL, - birth_datetime DATETIME2 NULL, - race_concept_id INTEGER NOT NULL, - ethnicity_concept_id INTEGER NOT NULL, - location_id INTEGER NULL, - provider_id INTEGER NULL, - care_site_id INTEGER NULL, - person_source_value VARCHAR(50) NULL, - gender_source_value VARCHAR(50) NULL, - gender_source_concept_id INTEGER NULL, - race_source_value VARCHAR(50) NULL, - race_source_concept_id INTEGER NULL, - ethnicity_source_value VARCHAR(50) NULL, - ethnicity_source_concept_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE observation_period -( - observation_period_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - observation_period_start_date DATE NOT NULL , - observation_period_end_date DATE NOT NULL , - period_type_concept_id INTEGER NOT NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE specimen -( - specimen_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - specimen_concept_id INTEGER NOT NULL , - specimen_type_concept_id INTEGER NOT NULL , - specimen_date DATE NOT NULL , - specimen_datetime DATETIME2 NULL , - quantity FLOAT NULL , - unit_concept_id INTEGER NULL , - anatomic_site_concept_id INTEGER NULL , - disease_status_concept_id INTEGER NULL , - specimen_source_id VARCHAR(50) NULL , - specimen_source_value VARCHAR(50) NULL , - unit_source_value VARCHAR(50) NULL , - anatomic_site_source_value VARCHAR(50) NULL , - disease_status_source_value VARCHAR(50) NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE death -( - person_id INTEGER NOT NULL , - death_date DATE NOT NULL , - death_datetime DATETIME2 NULL , - death_type_concept_id INTEGER NOT NULL , - cause_concept_id INTEGER NULL , - cause_source_value VARCHAR(50) NULL, - cause_source_concept_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE visit_occurrence -( - visit_occurrence_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - visit_concept_id INTEGER NOT NULL , - visit_start_date DATE NOT NULL , - visit_start_datetime DATETIME2 NULL , - visit_end_date DATE NOT NULL , - visit_end_datetime DATETIME2 NULL , - visit_type_concept_id INTEGER NOT NULL , - provider_id INTEGER NULL, - care_site_id INTEGER NULL, - visit_source_value VARCHAR(50) NULL, - visit_source_concept_id INTEGER NULL , - admitting_source_concept_id INTEGER NULL , - admitting_source_value VARCHAR(50) NULL , - discharge_to_concept_id INTEGER NULL , - discharge_to_source_value VARCHAR(50) NULL , - preceding_visit_occurrence_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE visit_detail -( - visit_detail_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - visit_detail_concept_id INTEGER NOT NULL , - visit_detail_start_date DATE NOT NULL , - visit_detail_start_datetime DATETIME2 NULL , - visit_detail_end_date DATE NOT NULL , - visit_detail_end_datetime DATETIME2 NULL , - visit_detail_type_concept_id INTEGER NOT NULL , - provider_id INTEGER NULL , - care_site_id INTEGER NULL , - admitting_source_concept_id INTEGER NULL , - discharge_to_concept_id INTEGER NULL , - preceding_visit_detail_id INTEGER NULL , - visit_detail_source_value VARCHAR(50) NULL , - visit_detail_source_concept_id INTEGER NULL , - admitting_source_value VARCHAR(50) NULL , - discharge_to_source_value VARCHAR(50) NULL , - visit_detail_parent_id INTEGER NULL , - visit_occurrence_id INTEGER NOT NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE procedure_occurrence -( - procedure_occurrence_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - procedure_concept_id INTEGER NOT NULL , - procedure_date DATE NOT NULL , - procedure_datetime DATETIME2 NULL , - procedure_type_concept_id INTEGER NOT NULL , - modifier_concept_id INTEGER NULL , - quantity INTEGER NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - procedure_source_value VARCHAR(50) NULL , - procedure_source_concept_id INTEGER NULL , - modifier_source_value VARCHAR(50) NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE drug_exposure -( - drug_exposure_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - drug_concept_id INTEGER NOT NULL , - drug_exposure_start_date DATE NOT NULL , - drug_exposure_start_datetime DATETIME2 NULL , - drug_exposure_end_date DATE NOT NULL , - drug_exposure_end_datetime DATETIME2 NULL , - verbatim_end_date DATE NULL , - drug_type_concept_id INTEGER NOT NULL , - stop_reason VARCHAR(20) NULL , - refills INTEGER NULL , - quantity FLOAT NULL , - days_supply INTEGER NULL , - sig VARCHAR(MAX) NULL , - route_concept_id INTEGER NULL , - lot_number VARCHAR(50) NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - drug_source_value VARCHAR(50) NULL , - drug_source_concept_id INTEGER NULL , - route_source_value VARCHAR(50) NULL , - dose_unit_source_value VARCHAR(50) NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE device_exposure -( - device_exposure_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - device_concept_id INTEGER NOT NULL , - device_exposure_start_date DATE NOT NULL , - device_exposure_start_datetime DATETIME2 NULL , - device_exposure_end_date DATE NULL , - device_exposure_end_datetime DATETIME2 NULL , - device_type_concept_id INTEGER NOT NULL , - unique_device_id VARCHAR(50) NULL , - quantity INTEGER NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - device_source_value VARCHAR(100) NULL , - device_source_concept_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE condition_occurrence -( - condition_occurrence_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - condition_concept_id INTEGER NOT NULL , - condition_start_date DATE NOT NULL , - condition_start_datetime DATETIME2 NULL , - condition_end_date DATE NULL , - condition_end_datetime DATETIME2 NULL , - condition_type_concept_id INTEGER NOT NULL , - stop_reason VARCHAR(20) NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - condition_source_value VARCHAR(50) NULL , - condition_source_concept_id INTEGER NULL , - condition_status_source_value VARCHAR(50) NULL , - condition_status_concept_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE measurement -( - measurement_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - measurement_concept_id INTEGER NOT NULL , - measurement_date DATE NOT NULL , - measurement_datetime DATETIME2 NULL , - measurement_time VARCHAR(10) NULL, - measurement_type_concept_id INTEGER NOT NULL , - operator_concept_id INTEGER NULL , - value_as_number FLOAT NULL , - value_as_concept_id INTEGER NULL , - unit_concept_id INTEGER NULL , - range_low FLOAT NULL , - range_high FLOAT NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - measurement_source_value VARCHAR(50) NULL , - measurement_source_concept_id INTEGER NULL , - unit_source_value VARCHAR(50) NULL , - value_source_value VARCHAR(50) NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE note -( - note_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - note_date DATE NOT NULL , - note_datetime DATETIME2 NULL , - note_type_concept_id INTEGER NOT NULL , - note_class_concept_id INTEGER NOT NULL , - note_title VARCHAR(250) NULL , - note_text VARCHAR(MAX) NULL , - encoding_concept_id INTEGER NOT NULL , - language_concept_id INTEGER NOT NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - note_source_value VARCHAR(50) NULL -) -; - - - -CREATE TABLE note_nlp -( - note_nlp_id INTEGER NOT NULL , - note_id INTEGER NOT NULL , - section_concept_id INTEGER NULL , - snippet VARCHAR(250) NULL , - "offset" VARCHAR(250) NULL , - lexical_variant VARCHAR(250) NOT NULL , - note_nlp_concept_id INTEGER NULL , - note_nlp_source_concept_id INTEGER NULL , - nlp_system VARCHAR(250) NULL , - nlp_date DATE NOT NULL , - nlp_datetime DATETIME2 NULL , - term_exists VARCHAR(1) NULL , - term_temporal VARCHAR(50) NULL , - term_modifiers VARCHAR(2000) NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE observation -( - observation_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - observation_concept_id INTEGER NOT NULL , - observation_date DATE NOT NULL , - observation_datetime DATETIME2 NULL , - observation_type_concept_id INTEGER NOT NULL , - value_as_number FLOAT NULL , - value_as_string VARCHAR(60) NULL , - value_as_concept_id INTEGER NULL , - qualifier_concept_id INTEGER NULL , - unit_concept_id INTEGER NULL , - provider_id INTEGER NULL , - visit_occurrence_id INTEGER NULL , - visit_detail_id INTEGER NULL , - observation_source_value VARCHAR(50) NULL , - observation_source_concept_id INTEGER NULL , - unit_source_value VARCHAR(50) NULL , - qualifier_source_value VARCHAR(50) NULL -) -; - - -CREATE TABLE fact_relationship -( - domain_concept_id_1 INTEGER NOT NULL , - fact_id_1 INTEGER NOT NULL , - domain_concept_id_2 INTEGER NOT NULL , - fact_id_2 INTEGER NOT NULL , - relationship_concept_id INTEGER NOT NULL -) -; - - - -/************************ - -Standardized health system data - -************************/ - - -CREATE TABLE location -( - location_id INTEGER NOT NULL , - address_1 VARCHAR(50) NULL , - address_2 VARCHAR(50) NULL , - city VARCHAR(50) NULL , - state VARCHAR(2) NULL , - zip VARCHAR(9) NULL , - county VARCHAR(20) NULL , - location_source_value VARCHAR(50) NULL -) -; - - -CREATE TABLE care_site -( - care_site_id INTEGER NOT NULL , - care_site_name VARCHAR(255) NULL , - place_of_service_concept_id INTEGER NULL , - location_id INTEGER NULL , - care_site_source_value VARCHAR(50) NULL , - place_of_service_source_value VARCHAR(50) NULL -) -; - - -CREATE TABLE provider -( - provider_id INTEGER NOT NULL , - provider_name VARCHAR(255) NULL , - NPI VARCHAR(20) NULL , - DEA VARCHAR(20) NULL , - specialty_concept_id INTEGER NULL , - care_site_id INTEGER NULL , - year_of_birth INTEGER NULL , - gender_concept_id INTEGER NULL , - provider_source_value VARCHAR(50) NULL , - specialty_source_value VARCHAR(50) NULL , - specialty_source_concept_id INTEGER NULL , - gender_source_value VARCHAR(50) NULL , - gender_source_concept_id INTEGER NULL -) -; - - -/************************ - -Standardized health economics - -************************/ - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE payer_plan_period -( - payer_plan_period_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - payer_plan_period_start_date DATE NOT NULL , - payer_plan_period_end_date DATE NOT NULL , - payer_concept_id INTEGER NULL , - payer_source_value VARCHAR(50) NULL , - payer_source_concept_id INTEGER NULL , - plan_concept_id INTEGER NULL , - plan_source_value VARCHAR(50) NULL , - plan_source_concept_id INTEGER NULL , - sponsor_concept_id INTEGER NULL , - sponsor_source_value VARCHAR(50) NULL , - sponsor_source_concept_id INTEGER NULL , - family_source_value VARCHAR(50) NULL , - stop_reason_concept_id INTEGER NULL , - stop_reason_source_value VARCHAR(50) NULL , - stop_reason_source_concept_id INTEGER NULL -) -; - - -CREATE TABLE cost -( - cost_id INTEGER NOT NULL , - cost_event_id INTEGER NOT NULL , - cost_domain_id VARCHAR(20) NOT NULL , - cost_type_concept_id INTEGER NOT NULL , - currency_concept_id INTEGER NULL , - total_charge FLOAT NULL , - total_cost FLOAT NULL , - total_paid FLOAT NULL , - paid_by_payer FLOAT NULL , - paid_by_patient FLOAT NULL , - paid_patient_copay FLOAT NULL , - paid_patient_coinsurance FLOAT NULL , - paid_patient_deductible FLOAT NULL , - paid_by_primary FLOAT NULL , - paid_ingredient_cost FLOAT NULL , - paid_dispensing_fee FLOAT NULL , - payer_plan_period_id INTEGER NULL , - amount_allowed FLOAT NULL , - revenue_code_concept_id INTEGER NULL , - reveue_code_source_value VARCHAR(50) NULL, - drg_concept_id INTEGER NULL, - drg_source_value VARCHAR(3) NULL -) -; - - -/************************ - -Standardized derived elements - -************************/ - - ---HINT DISTRIBUTE_ON_KEY(subject_id) -CREATE TABLE cohort -( - cohort_definition_id INTEGER NOT NULL , - subject_id INTEGER NOT NULL , - cohort_start_date DATE NOT NULL , - cohort_end_date DATE NOT NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(subject_id) -CREATE TABLE cohort_attribute -( - cohort_definition_id INTEGER NOT NULL , - subject_id INTEGER NOT NULL , - cohort_start_date DATE NOT NULL , - cohort_end_date DATE NOT NULL , - attribute_definition_id INTEGER NOT NULL , - value_as_number FLOAT NULL , - value_as_concept_id INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE drug_era -( - drug_era_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - drug_concept_id INTEGER NOT NULL , - drug_era_start_date DATE NOT NULL , - drug_era_end_date DATE NOT NULL , - drug_exposure_count INTEGER NULL , - gap_days INTEGER NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE dose_era -( - dose_era_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - drug_concept_id INTEGER NOT NULL , - unit_concept_id INTEGER NOT NULL , - dose_value FLOAT NOT NULL , - dose_era_start_date DATE NOT NULL , - dose_era_end_date DATE NOT NULL -) -; - - ---HINT DISTRIBUTE_ON_KEY(person_id) -CREATE TABLE condition_era -( - condition_era_id INTEGER NOT NULL , - person_id INTEGER NOT NULL , - condition_concept_id INTEGER NOT NULL , - condition_era_start_date DATE NOT NULL , - condition_era_end_date DATE NOT NULL , - condition_occurrence_count INTEGER NULL -) -; From 2317b6b19c74252ef9c541755dbbb2652a83afd0 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:18:41 -0400 Subject: [PATCH 07/12] Remove old generated file --- src/autogenerated.jl | 957 ------------------------------------------- 1 file changed, 957 deletions(-) delete mode 100644 src/autogenerated.jl diff --git a/src/autogenerated.jl b/src/autogenerated.jl deleted file mode 100644 index 20e55cc..0000000 --- a/src/autogenerated.jl +++ /dev/null @@ -1,957 +0,0 @@ -import Dates - - -import DocStringExtensions - - -export Concept - -""" -CDM table name: CONCEPT - -Julia struct name: Concept - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Concept <: CDMType - concept_id::Int # required - concept_name::String # required - domain_id::String # required - vocabulary_id::String # required - concept_class_id::String # required - standard_concept::Union{String, Missing} = missing # optional - concept_code::String # required - valid_start_date::Dates.DateTime # required - valid_end_date::Dates.DateTime # required - invalid_reason::Union{String, Missing} = missing # optional -end - - -export Vocabulary - -""" -CDM table name: VOCABULARY - -Julia struct name: Vocabulary - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Vocabulary <: CDMType - vocabulary_id::String # required - vocabulary_name::String # required - vocabulary_reference::String # required - vocabulary_version::String # required - vocabulary_concept_id::Int # required -end - - -export Domain - -""" -CDM table name: DOMAIN - -Julia struct name: Domain - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Domain <: CDMType - domain_id::String # required - domain_name::String # required - domain_concept_id::Int # required -end - - -export ConceptClass - -""" -CDM table name: CONCEPT_CLASS - -Julia struct name: ConceptClass - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConceptClass <: CDMType - concept_class_id::String # required - concept_class_name::String # required - concept_class_concept_id::Int # required -end - - -export ConceptRelationship - -""" -CDM table name: CONCEPT_RELATIONSHIP - -Julia struct name: ConceptRelationship - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConceptRelationship <: CDMType - concept_id_1::Int # required - concept_id_2::Int # required - relationship_id::String # required - valid_start_date::Dates.DateTime # required - valid_end_date::Dates.DateTime # required - invalid_reason::Union{String, Missing} = missing # optional -end - - -export Relationship - -""" -CDM table name: RELATIONSHIP - -Julia struct name: Relationship - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Relationship <: CDMType - relationship_id::String # required - relationship_name::String # required - is_hierarchical::String # required - defines_ancestry::String # required - reverse_relationship_id::String # required - relationship_concept_id::Int # required -end - - -export ConceptSynonym - -""" -CDM table name: CONCEPT_SYNONYM - -Julia struct name: ConceptSynonym - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConceptSynonym <: CDMType - concept_id::Int # required - concept_synonym_name::String # required - language_concept_id::Int # required -end - - -export ConceptAncestor - -""" -CDM table name: CONCEPT_ANCESTOR - -Julia struct name: ConceptAncestor - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConceptAncestor <: CDMType - ancestor_concept_id::Int # required - descendant_concept_id::Int # required - min_levels_of_separation::Int # required - max_levels_of_separation::Int # required -end - - -export SourceToConceptMap - -""" -CDM table name: SOURCE_TO_CONCEPT_MAP - -Julia struct name: SourceToConceptMap - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct SourceToConceptMap <: CDMType - source_code::String # required - source_concept_id::Int # required - source_vocabulary_id::String # required - source_code_description::Union{String, Missing} = missing # optional - target_concept_id::Int # required - target_vocabulary_id::String # required - valid_start_date::Dates.DateTime # required - valid_end_date::Dates.DateTime # required - invalid_reason::Union{String, Missing} = missing # optional -end - - -export DrugStrength - -""" -CDM table name: DRUG_STRENGTH - -Julia struct name: DrugStrength - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct DrugStrength <: CDMType - drug_concept_id::Int # required - ingredient_concept_id::Int # required - amount_value::Union{Float64, Missing} = missing # optional - amount_unit_concept_id::Union{Int, Missing} = missing # optional - numerator_value::Union{Float64, Missing} = missing # optional - numerator_unit_concept_id::Union{Int, Missing} = missing # optional - denominator_value::Union{Float64, Missing} = missing # optional - denominator_unit_concept_id::Union{Int, Missing} = missing # optional - box_size::Union{Int, Missing} = missing # optional - valid_start_date::Dates.DateTime # required - valid_end_date::Dates.DateTime # required - invalid_reason::Union{String, Missing} = missing # optional -end - - -export CohortDefinition - -""" -CDM table name: COHORT_DEFINITION - -Julia struct name: CohortDefinition - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct CohortDefinition <: CDMType - cohort_definition_id::Int # required - cohort_definition_name::String # required - cohort_definition_description::Union{String, Missing} = missing # optional - definition_type_concept_id::Int # required - cohort_definition_syntax::Union{String, Missing} = missing # optional - subject_concept_id::Int # required - cohort_initiation_date::Union{Dates.DateTime, Missing} = missing # optional -end - - -export AttributeDefinition - -""" -CDM table name: ATTRIBUTE_DEFINITION - -Julia struct name: AttributeDefinition - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct AttributeDefinition <: CDMType - attribute_definition_id::Int # required - attribute_name::String # required - attribute_description::Union{String, Missing} = missing # optional - attribute_type_concept_id::Int # required - attribute_syntax::Union{String, Missing} = missing # optional -end - - -export CdmSource - -""" -CDM table name: CDM_SOURCE - -Julia struct name: CdmSource - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct CdmSource <: CDMType - cdm_source_name::String # required - cdm_source_abbreviation::Union{String, Missing} = missing # optional - cdm_holder::Union{String, Missing} = missing # optional - source_description::Union{String, Missing} = missing # optional - source_documentation_reference::Union{String, Missing} = missing # optional - cdm_etl_reference::Union{String, Missing} = missing # optional - source_release_date::Union{Dates.DateTime, Missing} = missing # optional - cdm_release_date::Union{Dates.DateTime, Missing} = missing # optional - cdm_version::Union{String, Missing} = missing # optional - vocabulary_version::Union{String, Missing} = missing # optional -end - - -export Metadata - -""" -CDM table name: METADATA - -Julia struct name: Metadata - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Metadata <: CDMType - metadata_concept_id::Int # required - metadata_type_concept_id::Int # required - name::String # required - value_as_string::Union{String, Missing} = missing # optional - value_as_concept_id::Union{Int, Missing} = missing # optional - metadata_date::Union{Dates.DateTime, Missing} = missing # optional - metadata_datetime::Union{Dates.DateTime, Missing} = missing # optional -end - - -export Person - -""" -CDM table name: PERSON - -Julia struct name: Person - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Person <: CDMType - person_id::Int # required - gender_concept_id::Int # required - year_of_birth::Int # required - month_of_birth::Union{Int, Missing} = missing # optional - day_of_birth::Union{Int, Missing} = missing # optional - birth_datetime::Union{Dates.DateTime, Missing} = missing # optional - race_concept_id::Int # required - ethnicity_concept_id::Int # required - location_id::Union{Int, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - care_site_id::Union{Int, Missing} = missing # optional - person_source_value::Union{String, Missing} = missing # optional - gender_source_value::Union{String, Missing} = missing # optional - gender_source_concept_id::Union{Int, Missing} = missing # optional - race_source_value::Union{String, Missing} = missing # optional - race_source_concept_id::Union{Int, Missing} = missing # optional - ethnicity_source_value::Union{String, Missing} = missing # optional - ethnicity_source_concept_id::Union{Int, Missing} = missing # optional -end - - -export ObservationPeriod - -""" -CDM table name: OBSERVATION_PERIOD - -Julia struct name: ObservationPeriod - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ObservationPeriod <: CDMType - observation_period_id::Int # required - person_id::Int # required - observation_period_start_date::Dates.DateTime # required - observation_period_end_date::Dates.DateTime # required - period_type_concept_id::Int # required -end - - -export Specimen - -""" -CDM table name: SPECIMEN - -Julia struct name: Specimen - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Specimen <: CDMType - specimen_id::Int # required - person_id::Int # required - specimen_concept_id::Int # required - specimen_type_concept_id::Int # required - specimen_date::Dates.DateTime # required - specimen_datetime::Union{Dates.DateTime, Missing} = missing # optional - quantity::Union{Float64, Missing} = missing # optional - unit_concept_id::Union{Int, Missing} = missing # optional - anatomic_site_concept_id::Union{Int, Missing} = missing # optional - disease_status_concept_id::Union{Int, Missing} = missing # optional - specimen_source_id::Union{String, Missing} = missing # optional - specimen_source_value::Union{String, Missing} = missing # optional - unit_source_value::Union{String, Missing} = missing # optional - anatomic_site_source_value::Union{String, Missing} = missing # optional - disease_status_source_value::Union{String, Missing} = missing # optional -end - - -export Death - -""" -CDM table name: DEATH - -Julia struct name: Death - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Death <: CDMType - person_id::Int # required - death_date::Dates.DateTime # required - death_datetime::Union{Dates.DateTime, Missing} = missing # optional - death_type_concept_id::Int # required - cause_concept_id::Union{Int, Missing} = missing # optional - cause_source_value::Union{String, Missing} = missing # optional - cause_source_concept_id::Union{Int, Missing} = missing # optional -end - - -export VisitOccurrence - -""" -CDM table name: VISIT_OCCURRENCE - -Julia struct name: VisitOccurrence - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct VisitOccurrence <: CDMType - visit_occurrence_id::Int # required - person_id::Int # required - visit_concept_id::Int # required - visit_start_date::Dates.DateTime # required - visit_start_datetime::Union{Dates.DateTime, Missing} = missing # optional - visit_end_date::Dates.DateTime # required - visit_end_datetime::Union{Dates.DateTime, Missing} = missing # optional - visit_type_concept_id::Int # required - provider_id::Union{Int, Missing} = missing # optional - care_site_id::Union{Int, Missing} = missing # optional - visit_source_value::Union{String, Missing} = missing # optional - visit_source_concept_id::Union{Int, Missing} = missing # optional - admitting_source_concept_id::Union{Int, Missing} = missing # optional - admitting_source_value::Union{String, Missing} = missing # optional - discharge_to_concept_id::Union{Int, Missing} = missing # optional - discharge_to_source_value::Union{String, Missing} = missing # optional - preceding_visit_occurrence_id::Union{Int, Missing} = missing # optional -end - - -export VisitDetail - -""" -CDM table name: VISIT_DETAIL - -Julia struct name: VisitDetail - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct VisitDetail <: CDMType - visit_detail_id::Int # required - person_id::Int # required - visit_detail_concept_id::Int # required - visit_detail_start_date::Dates.DateTime # required - visit_detail_start_datetime::Union{Dates.DateTime, Missing} = missing # optional - visit_detail_end_date::Dates.DateTime # required - visit_detail_end_datetime::Union{Dates.DateTime, Missing} = missing # optional - visit_detail_type_concept_id::Int # required - provider_id::Union{Int, Missing} = missing # optional - care_site_id::Union{Int, Missing} = missing # optional - admitting_source_concept_id::Union{Int, Missing} = missing # optional - discharge_to_concept_id::Union{Int, Missing} = missing # optional - preceding_visit_detail_id::Union{Int, Missing} = missing # optional - visit_detail_source_value::Union{String, Missing} = missing # optional - visit_detail_source_concept_id::Union{Int, Missing} = missing # optional - admitting_source_value::Union{String, Missing} = missing # optional - discharge_to_source_value::Union{String, Missing} = missing # optional - visit_detail_parent_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Int # required -end - - -export ProcedureOccurrence - -""" -CDM table name: PROCEDURE_OCCURRENCE - -Julia struct name: ProcedureOccurrence - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ProcedureOccurrence <: CDMType - procedure_occurrence_id::Int # required - person_id::Int # required - procedure_concept_id::Int # required - procedure_date::Dates.DateTime # required - procedure_datetime::Union{Dates.DateTime, Missing} = missing # optional - procedure_type_concept_id::Int # required - modifier_concept_id::Union{Int, Missing} = missing # optional - quantity::Union{Int, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - procedure_source_value::Union{String, Missing} = missing # optional - procedure_source_concept_id::Union{Int, Missing} = missing # optional - modifier_source_value::Union{String, Missing} = missing # optional -end - - -export DrugExposure - -""" -CDM table name: DRUG_EXPOSURE - -Julia struct name: DrugExposure - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct DrugExposure <: CDMType - drug_exposure_id::Int # required - person_id::Int # required - drug_concept_id::Int # required - drug_exposure_start_date::Dates.DateTime # required - drug_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional - drug_exposure_end_date::Dates.DateTime # required - drug_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional - verbatim_end_date::Union{Dates.DateTime, Missing} = missing # optional - drug_type_concept_id::Int # required - stop_reason::Union{String, Missing} = missing # optional - refills::Union{Int, Missing} = missing # optional - quantity::Union{Float64, Missing} = missing # optional - days_supply::Union{Int, Missing} = missing # optional - sig::Union{String, Missing} = missing # optional - route_concept_id::Union{Int, Missing} = missing # optional - lot_number::Union{String, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - drug_source_value::Union{String, Missing} = missing # optional - drug_source_concept_id::Union{Int, Missing} = missing # optional - route_source_value::Union{String, Missing} = missing # optional - dose_unit_source_value::Union{String, Missing} = missing # optional -end - - -export DeviceExposure - -""" -CDM table name: DEVICE_EXPOSURE - -Julia struct name: DeviceExposure - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct DeviceExposure <: CDMType - device_exposure_id::Int # required - person_id::Int # required - device_concept_id::Int # required - device_exposure_start_date::Dates.DateTime # required - device_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional - device_exposure_end_date::Union{Dates.DateTime, Missing} = missing # optional - device_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional - device_type_concept_id::Int # required - unique_device_id::Union{String, Missing} = missing # optional - quantity::Union{Int, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - device_source_value::Union{String, Missing} = missing # optional - device_source_concept_id::Union{Int, Missing} = missing # optional -end - - -export ConditionOccurrence - -""" -CDM table name: CONDITION_OCCURRENCE - -Julia struct name: ConditionOccurrence - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConditionOccurrence <: CDMType - condition_occurrence_id::Int # required - person_id::Int # required - condition_concept_id::Int # required - condition_start_date::Dates.DateTime # required - condition_start_datetime::Union{Dates.DateTime, Missing} = missing # optional - condition_end_date::Union{Dates.DateTime, Missing} = missing # optional - condition_end_datetime::Union{Dates.DateTime, Missing} = missing # optional - condition_type_concept_id::Int # required - stop_reason::Union{String, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - condition_source_value::Union{String, Missing} = missing # optional - condition_source_concept_id::Union{Int, Missing} = missing # optional - condition_status_source_value::Union{String, Missing} = missing # optional - condition_status_concept_id::Union{Int, Missing} = missing # optional -end - - -export Measurement - -""" -CDM table name: MEASUREMENT - -Julia struct name: Measurement - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Measurement <: CDMType - measurement_id::Int # required - person_id::Int # required - measurement_concept_id::Int # required - measurement_date::Dates.DateTime # required - measurement_datetime::Union{Dates.DateTime, Missing} = missing # optional - measurement_time::Union{String, Missing} = missing # optional - measurement_type_concept_id::Int # required - operator_concept_id::Union{Int, Missing} = missing # optional - value_as_number::Union{Float64, Missing} = missing # optional - value_as_concept_id::Union{Int, Missing} = missing # optional - unit_concept_id::Union{Int, Missing} = missing # optional - range_low::Union{Float64, Missing} = missing # optional - range_high::Union{Float64, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - measurement_source_value::Union{String, Missing} = missing # optional - measurement_source_concept_id::Union{Int, Missing} = missing # optional - unit_source_value::Union{String, Missing} = missing # optional - value_source_value::Union{String, Missing} = missing # optional -end - - -export Note - -""" -CDM table name: NOTE - -Julia struct name: Note - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Note <: CDMType - note_id::Int # required - person_id::Int # required - note_date::Dates.DateTime # required - note_datetime::Union{Dates.DateTime, Missing} = missing # optional - note_type_concept_id::Int # required - note_class_concept_id::Int # required - note_title::Union{String, Missing} = missing # optional - note_text::Union{String, Missing} = missing # optional - encoding_concept_id::Int # required - language_concept_id::Int # required - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - note_source_value::Union{String, Missing} = missing # optional -end - - -export NoteNlp - -""" -CDM table name: NOTE_NLP - -Julia struct name: NoteNlp - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct NoteNlp <: CDMType - note_nlp_id::Int # required - note_id::Int # required - section_concept_id::Union{Int, Missing} = missing # optional - snippet::Union{String, Missing} = missing # optional - offset::Union{String, Missing} = missing # optional - lexical_variant::String # required - note_nlp_concept_id::Union{Int, Missing} = missing # optional - note_nlp_source_concept_id::Union{Int, Missing} = missing # optional - nlp_system::Union{String, Missing} = missing # optional - nlp_date::Dates.DateTime # required - nlp_datetime::Union{Dates.DateTime, Missing} = missing # optional - term_exists::Union{String, Missing} = missing # optional - term_temporal::Union{String, Missing} = missing # optional - term_modifiers::Union{String, Missing} = missing # optional -end - - -export Observation - -""" -CDM table name: OBSERVATION - -Julia struct name: Observation - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Observation <: CDMType - observation_id::Int # required - person_id::Int # required - observation_concept_id::Int # required - observation_date::Dates.DateTime # required - observation_datetime::Union{Dates.DateTime, Missing} = missing # optional - observation_type_concept_id::Int # required - value_as_number::Union{Float64, Missing} = missing # optional - value_as_string::Union{String, Missing} = missing # optional - value_as_concept_id::Union{Int, Missing} = missing # optional - qualifier_concept_id::Union{Int, Missing} = missing # optional - unit_concept_id::Union{Int, Missing} = missing # optional - provider_id::Union{Int, Missing} = missing # optional - visit_occurrence_id::Union{Int, Missing} = missing # optional - visit_detail_id::Union{Int, Missing} = missing # optional - observation_source_value::Union{String, Missing} = missing # optional - observation_source_concept_id::Union{Int, Missing} = missing # optional - unit_source_value::Union{String, Missing} = missing # optional - qualifier_source_value::Union{String, Missing} = missing # optional -end - - -export FactRelationship - -""" -CDM table name: FACT_RELATIONSHIP - -Julia struct name: FactRelationship - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct FactRelationship <: CDMType - domain_concept_id_1::Int # required - fact_id_1::Int # required - domain_concept_id_2::Int # required - fact_id_2::Int # required - relationship_concept_id::Int # required -end - - -export Location - -""" -CDM table name: LOCATION - -Julia struct name: Location - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Location <: CDMType - location_id::Int # required - address_1::Union{String, Missing} = missing # optional - address_2::Union{String, Missing} = missing # optional - city::Union{String, Missing} = missing # optional - state::Union{String, Missing} = missing # optional - zip::Union{String, Missing} = missing # optional - county::Union{String, Missing} = missing # optional - location_source_value::Union{String, Missing} = missing # optional -end - - -export CareSite - -""" -CDM table name: CARE_SITE - -Julia struct name: CareSite - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct CareSite <: CDMType - care_site_id::Int # required - care_site_name::Union{String, Missing} = missing # optional - place_of_service_concept_id::Union{Int, Missing} = missing # optional - location_id::Union{Int, Missing} = missing # optional - care_site_source_value::Union{String, Missing} = missing # optional - place_of_service_source_value::Union{String, Missing} = missing # optional -end - - -export Provider - -""" -CDM table name: PROVIDER - -Julia struct name: Provider - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Provider <: CDMType - provider_id::Int # required - provider_name::Union{String, Missing} = missing # optional - NPI::Union{String, Missing} = missing # optional - DEA::Union{String, Missing} = missing # optional - specialty_concept_id::Union{Int, Missing} = missing # optional - care_site_id::Union{Int, Missing} = missing # optional - year_of_birth::Union{Int, Missing} = missing # optional - gender_concept_id::Union{Int, Missing} = missing # optional - provider_source_value::Union{String, Missing} = missing # optional - specialty_source_value::Union{String, Missing} = missing # optional - specialty_source_concept_id::Union{Int, Missing} = missing # optional - gender_source_value::Union{String, Missing} = missing # optional - gender_source_concept_id::Union{Int, Missing} = missing # optional -end - - -export PayerPlanPeriod - -""" -CDM table name: PAYER_PLAN_PERIOD - -Julia struct name: PayerPlanPeriod - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct PayerPlanPeriod <: CDMType - payer_plan_period_id::Int # required - person_id::Int # required - payer_plan_period_start_date::Dates.DateTime # required - payer_plan_period_end_date::Dates.DateTime # required - payer_concept_id::Union{Int, Missing} = missing # optional - payer_source_value::Union{String, Missing} = missing # optional - payer_source_concept_id::Union{Int, Missing} = missing # optional - plan_concept_id::Union{Int, Missing} = missing # optional - plan_source_value::Union{String, Missing} = missing # optional - plan_source_concept_id::Union{Int, Missing} = missing # optional - sponsor_concept_id::Union{Int, Missing} = missing # optional - sponsor_source_value::Union{String, Missing} = missing # optional - sponsor_source_concept_id::Union{Int, Missing} = missing # optional - family_source_value::Union{String, Missing} = missing # optional - stop_reason_concept_id::Union{Int, Missing} = missing # optional - stop_reason_source_value::Union{String, Missing} = missing # optional - stop_reason_source_concept_id::Union{Int, Missing} = missing # optional -end - - -export Cost - -""" -CDM table name: COST - -Julia struct name: Cost - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Cost <: CDMType - cost_id::Int # required - cost_event_id::Int # required - cost_domain_id::String # required - cost_type_concept_id::Int # required - currency_concept_id::Union{Int, Missing} = missing # optional - total_charge::Union{Float64, Missing} = missing # optional - total_cost::Union{Float64, Missing} = missing # optional - total_paid::Union{Float64, Missing} = missing # optional - paid_by_payer::Union{Float64, Missing} = missing # optional - paid_by_patient::Union{Float64, Missing} = missing # optional - paid_patient_copay::Union{Float64, Missing} = missing # optional - paid_patient_coinsurance::Union{Float64, Missing} = missing # optional - paid_patient_deductible::Union{Float64, Missing} = missing # optional - paid_by_primary::Union{Float64, Missing} = missing # optional - paid_ingredient_cost::Union{Float64, Missing} = missing # optional - paid_dispensing_fee::Union{Float64, Missing} = missing # optional - payer_plan_period_id::Union{Int, Missing} = missing # optional - amount_allowed::Union{Float64, Missing} = missing # optional - revenue_code_concept_id::Union{Int, Missing} = missing # optional - reveue_code_source_value::Union{String, Missing} = missing # optional - drg_concept_id::Union{Int, Missing} = missing # optional - drg_source_value::Union{String, Missing} = missing # optional -end - - -export Cohort - -""" -CDM table name: COHORT - -Julia struct name: Cohort - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct Cohort <: CDMType - cohort_definition_id::Int # required - subject_id::Int # required - cohort_start_date::Dates.DateTime # required - cohort_end_date::Dates.DateTime # required -end - - -export CohortAttribute - -""" -CDM table name: COHORT_ATTRIBUTE - -Julia struct name: CohortAttribute - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct CohortAttribute <: CDMType - cohort_definition_id::Int # required - subject_id::Int # required - cohort_start_date::Dates.DateTime # required - cohort_end_date::Dates.DateTime # required - attribute_definition_id::Int # required - value_as_number::Union{Float64, Missing} = missing # optional - value_as_concept_id::Union{Int, Missing} = missing # optional -end - - -export DrugEra - -""" -CDM table name: DRUG_ERA - -Julia struct name: DrugEra - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct DrugEra <: CDMType - drug_era_id::Int # required - person_id::Int # required - drug_concept_id::Int # required - drug_era_start_date::Dates.DateTime # required - drug_era_end_date::Dates.DateTime # required - drug_exposure_count::Union{Int, Missing} = missing # optional - gap_days::Union{Int, Missing} = missing # optional -end - - -export DoseEra - -""" -CDM table name: DOSE_ERA - -Julia struct name: DoseEra - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct DoseEra <: CDMType - dose_era_id::Int # required - person_id::Int # required - drug_concept_id::Int # required - unit_concept_id::Int # required - dose_value::Float64 # required - dose_era_start_date::Dates.DateTime # required - dose_era_end_date::Dates.DateTime # required -end - - -export ConditionEra - -""" -CDM table name: CONDITION_ERA - -Julia struct name: ConditionEra - -$(DocStringExtensions.TYPEDEF) -$(DocStringExtensions.TYPEDFIELDS) -""" -Base.@kwdef struct ConditionEra <: CDMType - condition_era_id::Int # required - person_id::Int # required - condition_concept_id::Int # required - condition_era_start_date::Dates.DateTime # required - condition_era_end_date::Dates.DateTime # required - condition_occurrence_count::Union{Int, Missing} = missing # optional -end From 5198334a55c98a4d762a0272f508fc0b30b146a8 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:20:03 -0400 Subject: [PATCH 08/12] Add modern DDLs --- assets/OMOPCDM_duckdb_5.3_ddl.sql | 471 +++++++++++++++++++++++++++ assets/OMOPCDM_duckdb_5.4_ddl.sql | 511 ++++++++++++++++++++++++++++++ assets/README.md | 3 + 3 files changed, 985 insertions(+) create mode 100644 assets/OMOPCDM_duckdb_5.3_ddl.sql create mode 100644 assets/OMOPCDM_duckdb_5.4_ddl.sql create mode 100644 assets/README.md diff --git a/assets/OMOPCDM_duckdb_5.3_ddl.sql b/assets/OMOPCDM_duckdb_5.3_ddl.sql new file mode 100644 index 0000000..3736c7f --- /dev/null +++ b/assets/OMOPCDM_duckdb_5.3_ddl.sql @@ -0,0 +1,471 @@ +--duckdb CDM DDL Specification for OMOP Common Data Model 5.3 +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.person ( + person_id integer NOT NULL, + gender_concept_id integer NOT NULL, + year_of_birth integer NOT NULL, + month_of_birth integer NULL, + day_of_birth integer NULL, + birth_datetime TIMESTAMP NULL, + race_concept_id integer NOT NULL, + ethnicity_concept_id integer NOT NULL, + location_id integer NULL, + provider_id integer NULL, + care_site_id integer NULL, + person_source_value varchar(50) NULL, + gender_source_value varchar(50) NULL, + gender_source_concept_id integer NULL, + race_source_value varchar(50) NULL, + race_source_concept_id integer NULL, + ethnicity_source_value varchar(50) NULL, + ethnicity_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.observation_period ( + observation_period_id integer NOT NULL, + person_id integer NOT NULL, + observation_period_start_date date NOT NULL, + observation_period_end_date date NOT NULL, + period_type_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.visit_occurrence ( + visit_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + visit_concept_id integer NOT NULL, + visit_start_date date NOT NULL, + visit_start_datetime TIMESTAMP NULL, + visit_end_date date NOT NULL, + visit_end_datetime TIMESTAMP NULL, + visit_type_concept_id Integer NOT NULL, + provider_id integer NULL, + care_site_id integer NULL, + visit_source_value varchar(50) NULL, + visit_source_concept_id integer NULL, + admitting_source_concept_id integer NULL, + admitting_source_value varchar(50) NULL, + discharge_to_concept_id integer NULL, + discharge_to_source_value varchar(50) NULL, + preceding_visit_occurrence_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.visit_detail ( + visit_detail_id integer NOT NULL, + person_id integer NOT NULL, + visit_detail_concept_id integer NOT NULL, + visit_detail_start_date date NOT NULL, + visit_detail_start_datetime TIMESTAMP NULL, + visit_detail_end_date date NOT NULL, + visit_detail_end_datetime TIMESTAMP NULL, + visit_detail_type_concept_id integer NOT NULL, + provider_id integer NULL, + care_site_id integer NULL, + visit_detail_source_value varchar(50) NULL, + visit_detail_source_concept_id Integer NULL, + admitting_source_value Varchar(50) NULL, + admitting_source_concept_id Integer NULL, + discharge_to_source_value Varchar(50) NULL, + discharge_to_concept_id integer NULL, + preceding_visit_detail_id integer NULL, + visit_detail_parent_id integer NULL, + visit_occurrence_id integer NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.condition_occurrence ( + condition_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + condition_concept_id integer NOT NULL, + condition_start_date date NOT NULL, + condition_start_datetime TIMESTAMP NULL, + condition_end_date date NULL, + condition_end_datetime TIMESTAMP NULL, + condition_type_concept_id integer NOT NULL, + condition_status_concept_id integer NULL, + stop_reason varchar(20) NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + condition_source_value varchar(50) NULL, + condition_source_concept_id integer NULL, + condition_status_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.drug_exposure ( + drug_exposure_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + drug_exposure_start_date date NOT NULL, + drug_exposure_start_datetime TIMESTAMP NULL, + drug_exposure_end_date date NOT NULL, + drug_exposure_end_datetime TIMESTAMP NULL, + verbatim_end_date date NULL, + drug_type_concept_id integer NOT NULL, + stop_reason varchar(20) NULL, + refills integer NULL, + quantity NUMERIC NULL, + days_supply integer NULL, + sig TEXT NULL, + route_concept_id integer NULL, + lot_number varchar(50) NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + drug_source_value varchar(50) NULL, + drug_source_concept_id integer NULL, + route_source_value varchar(50) NULL, + dose_unit_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.procedure_occurrence ( + procedure_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + procedure_concept_id integer NOT NULL, + procedure_date date NOT NULL, + procedure_datetime TIMESTAMP NULL, + procedure_type_concept_id integer NOT NULL, + modifier_concept_id integer NULL, + quantity integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + procedure_source_value varchar(50) NULL, + procedure_source_concept_id integer NULL, + modifier_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.device_exposure ( + device_exposure_id integer NOT NULL, + person_id integer NOT NULL, + device_concept_id integer NOT NULL, + device_exposure_start_date date NOT NULL, + device_exposure_start_datetime TIMESTAMP NULL, + device_exposure_end_date date NULL, + device_exposure_end_datetime TIMESTAMP NULL, + device_type_concept_id integer NOT NULL, + unique_device_id varchar(50) NULL, + quantity integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + device_source_value varchar(50) NULL, + device_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.measurement ( + measurement_id integer NOT NULL, + person_id integer NOT NULL, + measurement_concept_id integer NOT NULL, + measurement_date date NOT NULL, + measurement_datetime TIMESTAMP NULL, + measurement_time varchar(10) NULL, + measurement_type_concept_id integer NOT NULL, + operator_concept_id integer NULL, + value_as_number NUMERIC NULL, + value_as_concept_id integer NULL, + unit_concept_id integer NULL, + range_low NUMERIC NULL, + range_high NUMERIC NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + measurement_source_value varchar(50) NULL, + measurement_source_concept_id integer NULL, + unit_source_value varchar(50) NULL, + value_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.observation ( + observation_id integer NOT NULL, + person_id integer NOT NULL, + observation_concept_id integer NOT NULL, + observation_date date NOT NULL, + observation_datetime TIMESTAMP NULL, + observation_type_concept_id integer NOT NULL, + value_as_number NUMERIC NULL, + value_as_string varchar(60) NULL, + value_as_concept_id Integer NULL, + qualifier_concept_id integer NULL, + unit_concept_id integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + observation_source_value varchar(50) NULL, + observation_source_concept_id integer NULL, + unit_source_value varchar(50) NULL, + qualifier_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.death ( + person_id integer NOT NULL, + death_date date NOT NULL, + death_datetime TIMESTAMP NULL, + death_type_concept_id integer NULL, + cause_concept_id integer NULL, + cause_source_value varchar(50) NULL, + cause_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.note ( + note_id integer NOT NULL, + person_id integer NOT NULL, + note_date date NOT NULL, + note_datetime TIMESTAMP NULL, + note_type_concept_id integer NOT NULL, + note_class_concept_id integer NOT NULL, + note_title varchar(250) NULL, + note_text TEXT NOT NULL, + encoding_concept_id integer NOT NULL, + language_concept_id integer NOT NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + note_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.note_nlp ( + note_nlp_id integer NOT NULL, + note_id integer NOT NULL, + section_concept_id integer NULL, + snippet varchar(250) NULL, + "offset" varchar(50) NULL, + lexical_variant varchar(250) NOT NULL, + note_nlp_concept_id integer NULL, + note_nlp_source_concept_id integer NULL, + nlp_system varchar(250) NULL, + nlp_date date NOT NULL, + nlp_datetime TIMESTAMP NULL, + term_exists varchar(1) NULL, + term_temporal varchar(50) NULL, + term_modifiers varchar(2000) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.specimen ( + specimen_id integer NOT NULL, + person_id integer NOT NULL, + specimen_concept_id integer NOT NULL, + specimen_type_concept_id integer NOT NULL, + specimen_date date NOT NULL, + specimen_datetime TIMESTAMP NULL, + quantity NUMERIC NULL, + unit_concept_id integer NULL, + anatomic_site_concept_id integer NULL, + disease_status_concept_id integer NULL, + specimen_source_id varchar(50) NULL, + specimen_source_value varchar(50) NULL, + unit_source_value varchar(50) NULL, + anatomic_site_source_value varchar(50) NULL, + disease_status_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.fact_relationship ( + domain_concept_id_1 integer NOT NULL, + fact_id_1 integer NOT NULL, + domain_concept_id_2 integer NOT NULL, + fact_id_2 integer NOT NULL, + relationship_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.location ( + location_id integer NOT NULL, + address_1 varchar(50) NULL, + address_2 varchar(50) NULL, + city varchar(50) NULL, + state varchar(2) NULL, + zip varchar(9) NULL, + county varchar(20) NULL, + location_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.care_site ( + care_site_id integer NOT NULL, + care_site_name varchar(255) NULL, + place_of_service_concept_id integer NULL, + location_id integer NULL, + care_site_source_value varchar(50) NULL, + place_of_service_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.provider ( + provider_id integer NOT NULL, + provider_name varchar(255) NULL, + npi varchar(20) NULL, + dea varchar(20) NULL, + specialty_concept_id integer NULL, + care_site_id integer NULL, + year_of_birth integer NULL, + gender_concept_id integer NULL, + provider_source_value varchar(50) NULL, + specialty_source_value varchar(50) NULL, + specialty_source_concept_id integer NULL, + gender_source_value varchar(50) NULL, + gender_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.payer_plan_period ( + payer_plan_period_id integer NOT NULL, + person_id integer NOT NULL, + payer_plan_period_start_date date NOT NULL, + payer_plan_period_end_date date NOT NULL, + payer_concept_id integer NULL, + payer_source_value varchar(50) NULL, + payer_source_concept_id integer NULL, + plan_concept_id integer NULL, + plan_source_value varchar(50) NULL, + plan_source_concept_id integer NULL, + sponsor_concept_id integer NULL, + sponsor_source_value varchar(50) NULL, + sponsor_source_concept_id integer NULL, + family_source_value varchar(50) NULL, + stop_reason_concept_id integer NULL, + stop_reason_source_value varchar(50) NULL, + stop_reason_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cost ( + cost_id integer NOT NULL, + cost_event_id integer NOT NULL, + cost_domain_id varchar(20) NOT NULL, + cost_type_concept_id integer NOT NULL, + currency_concept_id integer NULL, + total_charge NUMERIC NULL, + total_cost NUMERIC NULL, + total_paid NUMERIC NULL, + paid_by_payer NUMERIC NULL, + paid_by_patient NUMERIC NULL, + paid_patient_copay NUMERIC NULL, + paid_patient_coinsurance NUMERIC NULL, + paid_patient_deductible NUMERIC NULL, + paid_by_primary NUMERIC NULL, + paid_ingredient_cost NUMERIC NULL, + paid_dispensing_fee NUMERIC NULL, + payer_plan_period_id integer NULL, + amount_allowed NUMERIC NULL, + revenue_code_concept_id integer NULL, + revenue_code_source_value varchar(50) NULL, + drg_concept_id integer NULL, + drg_source_value varchar(3) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.drug_era ( + drug_era_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + drug_era_start_date date NOT NULL, + drug_era_end_date date NOT NULL, + drug_exposure_count integer NULL, + gap_days integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.dose_era ( + dose_era_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + unit_concept_id integer NOT NULL, + dose_value NUMERIC NOT NULL, + dose_era_start_date date NOT NULL, + dose_era_end_date date NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.condition_era ( + condition_era_id integer NOT NULL, + person_id integer NOT NULL, + condition_concept_id integer NOT NULL, + condition_era_start_date date NOT NULL, + condition_era_end_date date NOT NULL, + condition_occurrence_count integer NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.metadata ( + metadata_concept_id integer NOT NULL, + metadata_type_concept_id integer NOT NULL, + name varchar(250) NOT NULL, + value_as_string varchar(250) NULL, + value_as_concept_id integer NULL, + metadata_date date NULL, + metadata_datetime TIMESTAMP NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cdm_source ( + cdm_source_name varchar(255) NOT NULL, + cdm_source_abbreviation varchar(25) NULL, + cdm_holder varchar(255) NULL, + source_description TEXT NULL, + source_documentation_reference varchar(255) NULL, + cdm_etl_reference varchar(255) NULL, + source_release_date date NULL, + cdm_release_date date NULL, + cdm_version varchar(10) NULL, + vocabulary_version varchar(20) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept ( + concept_id integer NOT NULL, + concept_name varchar(255) NOT NULL, + domain_id varchar(20) NOT NULL, + vocabulary_id varchar(20) NOT NULL, + concept_class_id varchar(20) NOT NULL, + standard_concept varchar(1) NULL, + concept_code varchar(50) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.vocabulary ( + vocabulary_id varchar(20) NOT NULL, + vocabulary_name varchar(255) NOT NULL, + vocabulary_reference varchar(255) NOT NULL, + vocabulary_version varchar(255) NULL, + vocabulary_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.domain ( + domain_id varchar(20) NOT NULL, + domain_name varchar(255) NOT NULL, + domain_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_class ( + concept_class_id varchar(20) NOT NULL, + concept_class_name varchar(255) NOT NULL, + concept_class_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_relationship ( + concept_id_1 integer NOT NULL, + concept_id_2 integer NOT NULL, + relationship_id varchar(20) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.relationship ( + relationship_id varchar(20) NOT NULL, + relationship_name varchar(255) NOT NULL, + is_hierarchical varchar(1) NOT NULL, + defines_ancestry varchar(1) NOT NULL, + reverse_relationship_id varchar(20) NOT NULL, + relationship_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_synonym ( + concept_id integer NOT NULL, + concept_synonym_name varchar(1000) NOT NULL, + language_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_ancestor ( + ancestor_concept_id integer NOT NULL, + descendant_concept_id integer NOT NULL, + min_levels_of_separation integer NOT NULL, + max_levels_of_separation integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.source_to_concept_map ( + source_code varchar(50) NOT NULL, + source_concept_id integer NOT NULL, + source_vocabulary_id varchar(20) NOT NULL, + source_code_description varchar(255) NULL, + target_concept_id integer NOT NULL, + target_vocabulary_id varchar(20) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.drug_strength ( + drug_concept_id integer NOT NULL, + ingredient_concept_id integer NOT NULL, + amount_value NUMERIC NULL, + amount_unit_concept_id integer NULL, + numerator_value NUMERIC NULL, + numerator_unit_concept_id integer NULL, + denominator_value NUMERIC NULL, + denominator_unit_concept_id integer NULL, + box_size integer NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cohort_definition ( + cohort_definition_id integer NOT NULL, + cohort_definition_name varchar(255) NOT NULL, + cohort_definition_description TEXT NULL, + definition_type_concept_id integer NOT NULL, + cohort_definition_syntax TEXT NULL, + subject_concept_id integer NOT NULL, + cohort_initiation_date date NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.attribute_definition ( + attribute_definition_id integer NOT NULL, + attribute_name varchar(255) NOT NULL, + attribute_description TEXT NULL, + attribute_type_concept_id integer NOT NULL, + attribute_syntax TEXT NULL ); \ No newline at end of file diff --git a/assets/OMOPCDM_duckdb_5.4_ddl.sql b/assets/OMOPCDM_duckdb_5.4_ddl.sql new file mode 100644 index 0000000..ee3f764 --- /dev/null +++ b/assets/OMOPCDM_duckdb_5.4_ddl.sql @@ -0,0 +1,511 @@ +--duckdb CDM DDL Specification for OMOP Common Data Model 5.4 +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.person ( + person_id integer NOT NULL, + gender_concept_id integer NOT NULL, + year_of_birth integer NOT NULL, + month_of_birth integer NULL, + day_of_birth integer NULL, + birth_datetime TIMESTAMP NULL, + race_concept_id integer NOT NULL, + ethnicity_concept_id integer NOT NULL, + location_id integer NULL, + provider_id integer NULL, + care_site_id integer NULL, + person_source_value varchar(50) NULL, + gender_source_value varchar(50) NULL, + gender_source_concept_id integer NULL, + race_source_value varchar(50) NULL, + race_source_concept_id integer NULL, + ethnicity_source_value varchar(50) NULL, + ethnicity_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.observation_period ( + observation_period_id integer NOT NULL, + person_id integer NOT NULL, + observation_period_start_date date NOT NULL, + observation_period_end_date date NOT NULL, + period_type_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.visit_occurrence ( + visit_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + visit_concept_id integer NOT NULL, + visit_start_date date NOT NULL, + visit_start_datetime TIMESTAMP NULL, + visit_end_date date NOT NULL, + visit_end_datetime TIMESTAMP NULL, + visit_type_concept_id Integer NOT NULL, + provider_id integer NULL, + care_site_id integer NULL, + visit_source_value varchar(50) NULL, + visit_source_concept_id integer NULL, + admitted_from_concept_id integer NULL, + admitted_from_source_value varchar(50) NULL, + discharged_to_concept_id integer NULL, + discharged_to_source_value varchar(50) NULL, + preceding_visit_occurrence_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.visit_detail ( + visit_detail_id integer NOT NULL, + person_id integer NOT NULL, + visit_detail_concept_id integer NOT NULL, + visit_detail_start_date date NOT NULL, + visit_detail_start_datetime TIMESTAMP NULL, + visit_detail_end_date date NOT NULL, + visit_detail_end_datetime TIMESTAMP NULL, + visit_detail_type_concept_id integer NOT NULL, + provider_id integer NULL, + care_site_id integer NULL, + visit_detail_source_value varchar(50) NULL, + visit_detail_source_concept_id Integer NULL, + admitted_from_concept_id Integer NULL, + admitted_from_source_value varchar(50) NULL, + discharged_to_source_value varchar(50) NULL, + discharged_to_concept_id integer NULL, + preceding_visit_detail_id integer NULL, + parent_visit_detail_id integer NULL, + visit_occurrence_id integer NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.condition_occurrence ( + condition_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + condition_concept_id integer NOT NULL, + condition_start_date date NOT NULL, + condition_start_datetime TIMESTAMP NULL, + condition_end_date date NULL, + condition_end_datetime TIMESTAMP NULL, + condition_type_concept_id integer NOT NULL, + condition_status_concept_id integer NULL, + stop_reason varchar(20) NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + condition_source_value varchar(50) NULL, + condition_source_concept_id integer NULL, + condition_status_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.drug_exposure ( + drug_exposure_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + drug_exposure_start_date date NOT NULL, + drug_exposure_start_datetime TIMESTAMP NULL, + drug_exposure_end_date date NOT NULL, + drug_exposure_end_datetime TIMESTAMP NULL, + verbatim_end_date date NULL, + drug_type_concept_id integer NOT NULL, + stop_reason varchar(20) NULL, + refills integer NULL, + quantity NUMERIC NULL, + days_supply integer NULL, + sig TEXT NULL, + route_concept_id integer NULL, + lot_number varchar(50) NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + drug_source_value varchar(50) NULL, + drug_source_concept_id integer NULL, + route_source_value varchar(50) NULL, + dose_unit_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.procedure_occurrence ( + procedure_occurrence_id integer NOT NULL, + person_id integer NOT NULL, + procedure_concept_id integer NOT NULL, + procedure_date date NOT NULL, + procedure_datetime TIMESTAMP NULL, + procedure_end_date date NULL, + procedure_end_datetime TIMESTAMP NULL, + procedure_type_concept_id integer NOT NULL, + modifier_concept_id integer NULL, + quantity integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + procedure_source_value varchar(50) NULL, + procedure_source_concept_id integer NULL, + modifier_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.device_exposure ( + device_exposure_id integer NOT NULL, + person_id integer NOT NULL, + device_concept_id integer NOT NULL, + device_exposure_start_date date NOT NULL, + device_exposure_start_datetime TIMESTAMP NULL, + device_exposure_end_date date NULL, + device_exposure_end_datetime TIMESTAMP NULL, + device_type_concept_id integer NOT NULL, + unique_device_id varchar(255) NULL, + production_id varchar(255) NULL, + quantity integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + device_source_value varchar(50) NULL, + device_source_concept_id integer NULL, + unit_concept_id integer NULL, + unit_source_value varchar(50) NULL, + unit_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.measurement ( + measurement_id integer NOT NULL, + person_id integer NOT NULL, + measurement_concept_id integer NOT NULL, + measurement_date date NOT NULL, + measurement_datetime TIMESTAMP NULL, + measurement_time varchar(10) NULL, + measurement_type_concept_id integer NOT NULL, + operator_concept_id integer NULL, + value_as_number NUMERIC NULL, + value_as_concept_id integer NULL, + unit_concept_id integer NULL, + range_low NUMERIC NULL, + range_high NUMERIC NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + measurement_source_value varchar(50) NULL, + measurement_source_concept_id integer NULL, + unit_source_value varchar(50) NULL, + unit_source_concept_id integer NULL, + value_source_value varchar(50) NULL, + measurement_event_id integer NULL, + meas_event_field_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.observation ( + observation_id integer NOT NULL, + person_id integer NOT NULL, + observation_concept_id integer NOT NULL, + observation_date date NOT NULL, + observation_datetime TIMESTAMP NULL, + observation_type_concept_id integer NOT NULL, + value_as_number NUMERIC NULL, + value_as_string varchar(60) NULL, + value_as_concept_id Integer NULL, + qualifier_concept_id integer NULL, + unit_concept_id integer NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + observation_source_value varchar(50) NULL, + observation_source_concept_id integer NULL, + unit_source_value varchar(50) NULL, + qualifier_source_value varchar(50) NULL, + value_source_value varchar(50) NULL, + observation_event_id integer NULL, + obs_event_field_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.death ( + person_id integer NOT NULL, + death_date date NOT NULL, + death_datetime TIMESTAMP NULL, + death_type_concept_id integer NULL, + cause_concept_id integer NULL, + cause_source_value varchar(50) NULL, + cause_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.note ( + note_id integer NOT NULL, + person_id integer NOT NULL, + note_date date NOT NULL, + note_datetime TIMESTAMP NULL, + note_type_concept_id integer NOT NULL, + note_class_concept_id integer NOT NULL, + note_title varchar(250) NULL, + note_text TEXT NOT NULL, + encoding_concept_id integer NOT NULL, + language_concept_id integer NOT NULL, + provider_id integer NULL, + visit_occurrence_id integer NULL, + visit_detail_id integer NULL, + note_source_value varchar(50) NULL, + note_event_id integer NULL, + note_event_field_concept_id integer NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.note_nlp ( + note_nlp_id integer NOT NULL, + note_id integer NOT NULL, + section_concept_id integer NULL, + snippet varchar(250) NULL, + "offset" varchar(50) NULL, + lexical_variant varchar(250) NOT NULL, + note_nlp_concept_id integer NULL, + note_nlp_source_concept_id integer NULL, + nlp_system varchar(250) NULL, + nlp_date date NOT NULL, + nlp_datetime TIMESTAMP NULL, + term_exists varchar(1) NULL, + term_temporal varchar(50) NULL, + term_modifiers varchar(2000) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.specimen ( + specimen_id integer NOT NULL, + person_id integer NOT NULL, + specimen_concept_id integer NOT NULL, + specimen_type_concept_id integer NOT NULL, + specimen_date date NOT NULL, + specimen_datetime TIMESTAMP NULL, + quantity NUMERIC NULL, + unit_concept_id integer NULL, + anatomic_site_concept_id integer NULL, + disease_status_concept_id integer NULL, + specimen_source_id varchar(50) NULL, + specimen_source_value varchar(50) NULL, + unit_source_value varchar(50) NULL, + anatomic_site_source_value varchar(50) NULL, + disease_status_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.fact_relationship ( + domain_concept_id_1 integer NOT NULL, + fact_id_1 integer NOT NULL, + domain_concept_id_2 integer NOT NULL, + fact_id_2 integer NOT NULL, + relationship_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.location ( + location_id integer NOT NULL, + address_1 varchar(50) NULL, + address_2 varchar(50) NULL, + city varchar(50) NULL, + state varchar(2) NULL, + zip varchar(9) NULL, + county varchar(20) NULL, + location_source_value varchar(50) NULL, + country_concept_id integer NULL, + country_source_value varchar(80) NULL, + latitude NUMERIC NULL, + longitude NUMERIC NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.care_site ( + care_site_id integer NOT NULL, + care_site_name varchar(255) NULL, + place_of_service_concept_id integer NULL, + location_id integer NULL, + care_site_source_value varchar(50) NULL, + place_of_service_source_value varchar(50) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.provider ( + provider_id integer NOT NULL, + provider_name varchar(255) NULL, + npi varchar(20) NULL, + dea varchar(20) NULL, + specialty_concept_id integer NULL, + care_site_id integer NULL, + year_of_birth integer NULL, + gender_concept_id integer NULL, + provider_source_value varchar(50) NULL, + specialty_source_value varchar(50) NULL, + specialty_source_concept_id integer NULL, + gender_source_value varchar(50) NULL, + gender_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.payer_plan_period ( + payer_plan_period_id integer NOT NULL, + person_id integer NOT NULL, + payer_plan_period_start_date date NOT NULL, + payer_plan_period_end_date date NOT NULL, + payer_concept_id integer NULL, + payer_source_value varchar(50) NULL, + payer_source_concept_id integer NULL, + plan_concept_id integer NULL, + plan_source_value varchar(50) NULL, + plan_source_concept_id integer NULL, + sponsor_concept_id integer NULL, + sponsor_source_value varchar(50) NULL, + sponsor_source_concept_id integer NULL, + family_source_value varchar(50) NULL, + stop_reason_concept_id integer NULL, + stop_reason_source_value varchar(50) NULL, + stop_reason_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cost ( + cost_id integer NOT NULL, + cost_event_id integer NOT NULL, + cost_domain_id varchar(20) NOT NULL, + cost_type_concept_id integer NOT NULL, + currency_concept_id integer NULL, + total_charge NUMERIC NULL, + total_cost NUMERIC NULL, + total_paid NUMERIC NULL, + paid_by_payer NUMERIC NULL, + paid_by_patient NUMERIC NULL, + paid_patient_copay NUMERIC NULL, + paid_patient_coinsurance NUMERIC NULL, + paid_patient_deductible NUMERIC NULL, + paid_by_primary NUMERIC NULL, + paid_ingredient_cost NUMERIC NULL, + paid_dispensing_fee NUMERIC NULL, + payer_plan_period_id integer NULL, + amount_allowed NUMERIC NULL, + revenue_code_concept_id integer NULL, + revenue_code_source_value varchar(50) NULL, + drg_concept_id integer NULL, + drg_source_value varchar(3) NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.drug_era ( + drug_era_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + drug_era_start_date date NOT NULL, + drug_era_end_date date NOT NULL, + drug_exposure_count integer NULL, + gap_days integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.dose_era ( + dose_era_id integer NOT NULL, + person_id integer NOT NULL, + drug_concept_id integer NOT NULL, + unit_concept_id integer NOT NULL, + dose_value NUMERIC NOT NULL, + dose_era_start_date date NOT NULL, + dose_era_end_date date NOT NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.condition_era ( + condition_era_id integer NOT NULL, + person_id integer NOT NULL, + condition_concept_id integer NOT NULL, + condition_era_start_date date NOT NULL, + condition_era_end_date date NOT NULL, + condition_occurrence_count integer NULL ); +--HINT DISTRIBUTE ON KEY (person_id) +CREATE TABLE @cdmDatabaseSchema.episode ( + episode_id integer NOT NULL, + person_id integer NOT NULL, + episode_concept_id integer NOT NULL, + episode_start_date date NOT NULL, + episode_start_datetime TIMESTAMP NULL, + episode_end_date date NULL, + episode_end_datetime TIMESTAMP NULL, + episode_parent_id integer NULL, + episode_number integer NULL, + episode_object_concept_id integer NOT NULL, + episode_type_concept_id integer NOT NULL, + episode_source_value varchar(50) NULL, + episode_source_concept_id integer NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.episode_event ( + episode_id integer NOT NULL, + event_id integer NOT NULL, + episode_event_field_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.metadata ( + metadata_id integer NOT NULL, + metadata_concept_id integer NOT NULL, + metadata_type_concept_id integer NOT NULL, + name varchar(250) NOT NULL, + value_as_string varchar(250) NULL, + value_as_concept_id integer NULL, + value_as_number NUMERIC NULL, + metadata_date date NULL, + metadata_datetime TIMESTAMP NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cdm_source ( + cdm_source_name varchar(255) NOT NULL, + cdm_source_abbreviation varchar(25) NOT NULL, + cdm_holder varchar(255) NOT NULL, + source_description TEXT NULL, + source_documentation_reference varchar(255) NULL, + cdm_etl_reference varchar(255) NULL, + source_release_date date NOT NULL, + cdm_release_date date NOT NULL, + cdm_version varchar(10) NULL, + cdm_version_concept_id integer NOT NULL, + vocabulary_version varchar(20) NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept ( + concept_id integer NOT NULL, + concept_name varchar(255) NOT NULL, + domain_id varchar(20) NOT NULL, + vocabulary_id varchar(20) NOT NULL, + concept_class_id varchar(20) NOT NULL, + standard_concept varchar(1) NULL, + concept_code varchar(50) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.vocabulary ( + vocabulary_id varchar(20) NOT NULL, + vocabulary_name varchar(255) NOT NULL, + vocabulary_reference varchar(255) NULL, + vocabulary_version varchar(255) NULL, + vocabulary_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.domain ( + domain_id varchar(20) NOT NULL, + domain_name varchar(255) NOT NULL, + domain_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_class ( + concept_class_id varchar(20) NOT NULL, + concept_class_name varchar(255) NOT NULL, + concept_class_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_relationship ( + concept_id_1 integer NOT NULL, + concept_id_2 integer NOT NULL, + relationship_id varchar(20) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.relationship ( + relationship_id varchar(20) NOT NULL, + relationship_name varchar(255) NOT NULL, + is_hierarchical varchar(1) NOT NULL, + defines_ancestry varchar(1) NOT NULL, + reverse_relationship_id varchar(20) NOT NULL, + relationship_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_synonym ( + concept_id integer NOT NULL, + concept_synonym_name varchar(1000) NOT NULL, + language_concept_id integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.concept_ancestor ( + ancestor_concept_id integer NOT NULL, + descendant_concept_id integer NOT NULL, + min_levels_of_separation integer NOT NULL, + max_levels_of_separation integer NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.source_to_concept_map ( + source_code varchar(50) NOT NULL, + source_concept_id integer NOT NULL, + source_vocabulary_id varchar(20) NOT NULL, + source_code_description varchar(255) NULL, + target_concept_id integer NOT NULL, + target_vocabulary_id varchar(20) NOT NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.drug_strength ( + drug_concept_id integer NOT NULL, + ingredient_concept_id integer NOT NULL, + amount_value NUMERIC NULL, + amount_unit_concept_id integer NULL, + numerator_value NUMERIC NULL, + numerator_unit_concept_id integer NULL, + denominator_value NUMERIC NULL, + denominator_unit_concept_id integer NULL, + box_size integer NULL, + valid_start_date date NOT NULL, + valid_end_date date NOT NULL, + invalid_reason varchar(1) NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cohort ( + cohort_definition_id integer NOT NULL, + subject_id integer NOT NULL, + cohort_start_date date NOT NULL, + cohort_end_date date NOT NULL ); +--HINT DISTRIBUTE ON RANDOM +CREATE TABLE @cdmDatabaseSchema.cohort_definition ( + cohort_definition_id integer NOT NULL, + cohort_definition_name varchar(255) NOT NULL, + cohort_definition_description TEXT NULL, + definition_type_concept_id integer NOT NULL, + cohort_definition_syntax TEXT NULL, + subject_concept_id integer NOT NULL, + cohort_initiation_date date NULL ); \ No newline at end of file diff --git a/assets/README.md b/assets/README.md new file mode 100644 index 0000000..81f51be --- /dev/null +++ b/assets/README.md @@ -0,0 +1,3 @@ +Files in this directory are taken from https://github.com/OHDSI/CommonDataModel/tree/main/ddl. + +If not otherwise specified, all OHDSI content is subject to [the Creative Commons CC BY-SA 4.0 license]i(https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1). From 79ea6fbc2055026c684a09a5d44dfa67027ae965 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:20:54 -0400 Subject: [PATCH 09/12] Add lateset generated files --- src/Generate/Outfiles/5.3.jl | 918 +++++++++++++++++++++++++++++ src/Generate/Outfiles/5.4.jl | 982 ++++++++++++++++++++++++++++++++ src/Generate/Outfiles/README.md | 2 + 3 files changed, 1902 insertions(+) create mode 100644 src/Generate/Outfiles/5.3.jl create mode 100644 src/Generate/Outfiles/5.4.jl create mode 100644 src/Generate/Outfiles/README.md diff --git a/src/Generate/Outfiles/5.3.jl b/src/Generate/Outfiles/5.3.jl new file mode 100644 index 0000000..cb77f80 --- /dev/null +++ b/src/Generate/Outfiles/5.3.jl @@ -0,0 +1,918 @@ +import Dates + + +import DocStringExtensions + + +export Person + +""" +CDM table name: PERSON + +Julia struct name: Person + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Person <: CDMType + person_id::Int # required + gender_concept_id::Int # required + year_of_birth::Int # required + month_of_birth::Union{Int, Missing} = missing # optional + day_of_birth::Union{Int, Missing} = missing # optional + birth_datetime::Union{Dates.DateTime, Missing} = missing # optional + race_concept_id::Int # required + ethnicity_concept_id::Int # required + location_id::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + person_source_value::Union{String, Missing} = missing # optional + gender_source_value::Union{String, Missing} = missing # optional + gender_source_concept_id::Union{Int, Missing} = missing # optional + race_source_value::Union{String, Missing} = missing # optional + race_source_concept_id::Union{Int, Missing} = missing # optional + ethnicity_source_value::Union{String, Missing} = missing # optional + ethnicity_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export ObservationPeriod + +""" +CDM table name: OBSERVATION_PERIOD + +Julia struct name: ObservationPeriod + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ObservationPeriod <: CDMType + observation_period_id::Int # required + person_id::Int # required + observation_period_start_date::Dates.DateTime # required + observation_period_end_date::Dates.DateTime # required + period_type_concept_id::Int # required +end + + +export VisitOccurrence + +""" +CDM table name: VISIT_OCCURRENCE + +Julia struct name: VisitOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct VisitOccurrence <: CDMType + visit_occurrence_id::Int # required + person_id::Int # required + visit_concept_id::Int # required + visit_start_date::Dates.DateTime # required + visit_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_end_date::Dates.DateTime # required + visit_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_type_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + visit_source_value::Union{String, Missing} = missing # optional + visit_source_concept_id::Union{Int, Missing} = missing # optional + admitting_source_concept_id::Union{Int, Missing} = missing # optional + admitting_source_value::Union{String, Missing} = missing # optional + discharge_to_concept_id::Union{Int, Missing} = missing # optional + discharge_to_source_value::Union{String, Missing} = missing # optional + preceding_visit_occurrence_id::Union{Int, Missing} = missing # optional +end + + +export VisitDetail + +""" +CDM table name: VISIT_DETAIL + +Julia struct name: VisitDetail + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct VisitDetail <: CDMType + visit_detail_id::Int # required + person_id::Int # required + visit_detail_concept_id::Int # required + visit_detail_start_date::Dates.DateTime # required + visit_detail_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_detail_end_date::Dates.DateTime # required + visit_detail_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_detail_type_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + visit_detail_source_value::Union{String, Missing} = missing # optional + visit_detail_source_concept_id::Union{Int, Missing} = missing # optional + admitting_source_value::Union{String, Missing} = missing # optional + admitting_source_concept_id::Union{Int, Missing} = missing # optional + discharge_to_source_value::Union{String, Missing} = missing # optional + discharge_to_concept_id::Union{Int, Missing} = missing # optional + preceding_visit_detail_id::Union{Int, Missing} = missing # optional + visit_detail_parent_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Int # required +end + + +export ConditionOccurrence + +""" +CDM table name: CONDITION_OCCURRENCE + +Julia struct name: ConditionOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConditionOccurrence <: CDMType + condition_occurrence_id::Int # required + person_id::Int # required + condition_concept_id::Int # required + condition_start_date::Dates.DateTime # required + condition_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + condition_end_date::Union{Dates.DateTime, Missing} = missing # optional + condition_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + condition_type_concept_id::Int # required + condition_status_concept_id::Union{Int, Missing} = missing # optional + stop_reason::Union{String, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + condition_source_value::Union{String, Missing} = missing # optional + condition_source_concept_id::Union{Int, Missing} = missing # optional + condition_status_source_value::Union{String, Missing} = missing # optional +end + + +export DrugExposure + +""" +CDM table name: DRUG_EXPOSURE + +Julia struct name: DrugExposure + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugExposure <: CDMType + drug_exposure_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + drug_exposure_start_date::Dates.DateTime # required + drug_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + drug_exposure_end_date::Dates.DateTime # required + drug_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + verbatim_end_date::Union{Dates.DateTime, Missing} = missing # optional + drug_type_concept_id::Int # required + stop_reason::Union{String, Missing} = missing # optional + refills::Union{Int, Missing} = missing # optional + quantity::Union{Float64, Missing} = missing # optional + days_supply::Union{Int, Missing} = missing # optional + sig::Union{String, Missing} = missing # optional + route_concept_id::Union{Int, Missing} = missing # optional + lot_number::Union{String, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + drug_source_value::Union{String, Missing} = missing # optional + drug_source_concept_id::Union{Int, Missing} = missing # optional + route_source_value::Union{String, Missing} = missing # optional + dose_unit_source_value::Union{String, Missing} = missing # optional +end + + +export ProcedureOccurrence + +""" +CDM table name: PROCEDURE_OCCURRENCE + +Julia struct name: ProcedureOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ProcedureOccurrence <: CDMType + procedure_occurrence_id::Int # required + person_id::Int # required + procedure_concept_id::Int # required + procedure_date::Dates.DateTime # required + procedure_datetime::Union{Dates.DateTime, Missing} = missing # optional + procedure_type_concept_id::Int # required + modifier_concept_id::Union{Int, Missing} = missing # optional + quantity::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + procedure_source_value::Union{String, Missing} = missing # optional + procedure_source_concept_id::Union{Int, Missing} = missing # optional + modifier_source_value::Union{String, Missing} = missing # optional +end + + +export DeviceExposure + +""" +CDM table name: DEVICE_EXPOSURE + +Julia struct name: DeviceExposure + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DeviceExposure <: CDMType + device_exposure_id::Int # required + person_id::Int # required + device_concept_id::Int # required + device_exposure_start_date::Dates.DateTime # required + device_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + device_exposure_end_date::Union{Dates.DateTime, Missing} = missing # optional + device_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + device_type_concept_id::Int # required + unique_device_id::Union{String, Missing} = missing # optional + quantity::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + device_source_value::Union{String, Missing} = missing # optional + device_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Measurement + +""" +CDM table name: MEASUREMENT + +Julia struct name: Measurement + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Measurement <: CDMType + measurement_id::Int # required + person_id::Int # required + measurement_concept_id::Int # required + measurement_date::Dates.DateTime # required + measurement_datetime::Union{Dates.DateTime, Missing} = missing # optional + measurement_time::Union{String, Missing} = missing # optional + measurement_type_concept_id::Int # required + operator_concept_id::Union{Int, Missing} = missing # optional + value_as_number::Union{Float64, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + range_low::Union{Float64, Missing} = missing # optional + range_high::Union{Float64, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + measurement_source_value::Union{String, Missing} = missing # optional + measurement_source_concept_id::Union{Int, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + value_source_value::Union{String, Missing} = missing # optional +end + + +export Observation + +""" +CDM table name: OBSERVATION + +Julia struct name: Observation + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Observation <: CDMType + observation_id::Int # required + person_id::Int # required + observation_concept_id::Int # required + observation_date::Dates.DateTime # required + observation_datetime::Union{Dates.DateTime, Missing} = missing # optional + observation_type_concept_id::Int # required + value_as_number::Union{Float64, Missing} = missing # optional + value_as_string::Union{String, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + qualifier_concept_id::Union{Int, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + observation_source_value::Union{String, Missing} = missing # optional + observation_source_concept_id::Union{Int, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + qualifier_source_value::Union{String, Missing} = missing # optional +end + + +export Death + +""" +CDM table name: DEATH + +Julia struct name: Death + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Death <: CDMType + person_id::Int # required + death_date::Dates.DateTime # required + death_datetime::Union{Dates.DateTime, Missing} = missing # optional + death_type_concept_id::Union{Int, Missing} = missing # optional + cause_concept_id::Union{Int, Missing} = missing # optional + cause_source_value::Union{String, Missing} = missing # optional + cause_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Note + +""" +CDM table name: NOTE + +Julia struct name: Note + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Note <: CDMType + note_id::Int # required + person_id::Int # required + note_date::Dates.DateTime # required + note_datetime::Union{Dates.DateTime, Missing} = missing # optional + note_type_concept_id::Int # required + note_class_concept_id::Int # required + note_title::Union{String, Missing} = missing # optional + note_text::String # required + encoding_concept_id::Int # required + language_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + note_source_value::Union{String, Missing} = missing # optional +end + + +export NoteNlp + +""" +CDM table name: NOTE_NLP + +Julia struct name: NoteNlp + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct NoteNlp <: CDMType + note_nlp_id::Int # required + note_id::Int # required + section_concept_id::Union{Int, Missing} = missing # optional + snippet::Union{String, Missing} = missing # optional + offset::Union{String, Missing} = missing # optional + lexical_variant::String # required + note_nlp_concept_id::Union{Int, Missing} = missing # optional + note_nlp_source_concept_id::Union{Int, Missing} = missing # optional + nlp_system::Union{String, Missing} = missing # optional + nlp_date::Dates.DateTime # required + nlp_datetime::Union{Dates.DateTime, Missing} = missing # optional + term_exists::Union{String, Missing} = missing # optional + term_temporal::Union{String, Missing} = missing # optional + term_modifiers::Union{String, Missing} = missing # optional +end + + +export Specimen + +""" +CDM table name: SPECIMEN + +Julia struct name: Specimen + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Specimen <: CDMType + specimen_id::Int # required + person_id::Int # required + specimen_concept_id::Int # required + specimen_type_concept_id::Int # required + specimen_date::Dates.DateTime # required + specimen_datetime::Union{Dates.DateTime, Missing} = missing # optional + quantity::Union{Float64, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + anatomic_site_concept_id::Union{Int, Missing} = missing # optional + disease_status_concept_id::Union{Int, Missing} = missing # optional + specimen_source_id::Union{String, Missing} = missing # optional + specimen_source_value::Union{String, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + anatomic_site_source_value::Union{String, Missing} = missing # optional + disease_status_source_value::Union{String, Missing} = missing # optional +end + + +export FactRelationship + +""" +CDM table name: FACT_RELATIONSHIP + +Julia struct name: FactRelationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct FactRelationship <: CDMType + domain_concept_id_1::Int # required + fact_id_1::Int # required + domain_concept_id_2::Int # required + fact_id_2::Int # required + relationship_concept_id::Int # required +end + + +export Location + +""" +CDM table name: LOCATION + +Julia struct name: Location + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Location <: CDMType + location_id::Int # required + address_1::Union{String, Missing} = missing # optional + address_2::Union{String, Missing} = missing # optional + city::Union{String, Missing} = missing # optional + state::Union{String, Missing} = missing # optional + zip::Union{String, Missing} = missing # optional + county::Union{String, Missing} = missing # optional + location_source_value::Union{String, Missing} = missing # optional +end + + +export CareSite + +""" +CDM table name: CARE_SITE + +Julia struct name: CareSite + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CareSite <: CDMType + care_site_id::Int # required + care_site_name::Union{String, Missing} = missing # optional + place_of_service_concept_id::Union{Int, Missing} = missing # optional + location_id::Union{Int, Missing} = missing # optional + care_site_source_value::Union{String, Missing} = missing # optional + place_of_service_source_value::Union{String, Missing} = missing # optional +end + + +export Provider + +""" +CDM table name: PROVIDER + +Julia struct name: Provider + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Provider <: CDMType + provider_id::Int # required + provider_name::Union{String, Missing} = missing # optional + npi::Union{String, Missing} = missing # optional + dea::Union{String, Missing} = missing # optional + specialty_concept_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + year_of_birth::Union{Int, Missing} = missing # optional + gender_concept_id::Union{Int, Missing} = missing # optional + provider_source_value::Union{String, Missing} = missing # optional + specialty_source_value::Union{String, Missing} = missing # optional + specialty_source_concept_id::Union{Int, Missing} = missing # optional + gender_source_value::Union{String, Missing} = missing # optional + gender_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export PayerPlanPeriod + +""" +CDM table name: PAYER_PLAN_PERIOD + +Julia struct name: PayerPlanPeriod + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct PayerPlanPeriod <: CDMType + payer_plan_period_id::Int # required + person_id::Int # required + payer_plan_period_start_date::Dates.DateTime # required + payer_plan_period_end_date::Dates.DateTime # required + payer_concept_id::Union{Int, Missing} = missing # optional + payer_source_value::Union{String, Missing} = missing # optional + payer_source_concept_id::Union{Int, Missing} = missing # optional + plan_concept_id::Union{Int, Missing} = missing # optional + plan_source_value::Union{String, Missing} = missing # optional + plan_source_concept_id::Union{Int, Missing} = missing # optional + sponsor_concept_id::Union{Int, Missing} = missing # optional + sponsor_source_value::Union{String, Missing} = missing # optional + sponsor_source_concept_id::Union{Int, Missing} = missing # optional + family_source_value::Union{String, Missing} = missing # optional + stop_reason_concept_id::Union{Int, Missing} = missing # optional + stop_reason_source_value::Union{String, Missing} = missing # optional + stop_reason_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Cost + +""" +CDM table name: COST + +Julia struct name: Cost + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Cost <: CDMType + cost_id::Int # required + cost_event_id::Int # required + cost_domain_id::String # required + cost_type_concept_id::Int # required + currency_concept_id::Union{Int, Missing} = missing # optional + total_charge::Union{Float64, Missing} = missing # optional + total_cost::Union{Float64, Missing} = missing # optional + total_paid::Union{Float64, Missing} = missing # optional + paid_by_payer::Union{Float64, Missing} = missing # optional + paid_by_patient::Union{Float64, Missing} = missing # optional + paid_patient_copay::Union{Float64, Missing} = missing # optional + paid_patient_coinsurance::Union{Float64, Missing} = missing # optional + paid_patient_deductible::Union{Float64, Missing} = missing # optional + paid_by_primary::Union{Float64, Missing} = missing # optional + paid_ingredient_cost::Union{Float64, Missing} = missing # optional + paid_dispensing_fee::Union{Float64, Missing} = missing # optional + payer_plan_period_id::Union{Int, Missing} = missing # optional + amount_allowed::Union{Float64, Missing} = missing # optional + revenue_code_concept_id::Union{Int, Missing} = missing # optional + revenue_code_source_value::Union{String, Missing} = missing # optional + drg_concept_id::Union{Int, Missing} = missing # optional + drg_source_value::Union{String, Missing} = missing # optional +end + + +export DrugEra + +""" +CDM table name: DRUG_ERA + +Julia struct name: DrugEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugEra <: CDMType + drug_era_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + drug_era_start_date::Dates.DateTime # required + drug_era_end_date::Dates.DateTime # required + drug_exposure_count::Union{Int, Missing} = missing # optional + gap_days::Union{Int, Missing} = missing # optional +end + + +export DoseEra + +""" +CDM table name: DOSE_ERA + +Julia struct name: DoseEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DoseEra <: CDMType + dose_era_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + unit_concept_id::Int # required + dose_value::Float64 # required + dose_era_start_date::Dates.DateTime # required + dose_era_end_date::Dates.DateTime # required +end + + +export ConditionEra + +""" +CDM table name: CONDITION_ERA + +Julia struct name: ConditionEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConditionEra <: CDMType + condition_era_id::Int # required + person_id::Int # required + condition_concept_id::Int # required + condition_era_start_date::Dates.DateTime # required + condition_era_end_date::Dates.DateTime # required + condition_occurrence_count::Union{Int, Missing} = missing # optional +end + + +export Metadata + +""" +CDM table name: METADATA + +Julia struct name: Metadata + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Metadata <: CDMType + metadata_concept_id::Int # required + metadata_type_concept_id::Int # required + name::String # required + value_as_string::Union{String, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + metadata_date::Union{Dates.DateTime, Missing} = missing # optional + metadata_datetime::Union{Dates.DateTime, Missing} = missing # optional +end + + +export CdmSource + +""" +CDM table name: CDM_SOURCE + +Julia struct name: CdmSource + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CdmSource <: CDMType + cdm_source_name::String # required + cdm_source_abbreviation::Union{String, Missing} = missing # optional + cdm_holder::Union{String, Missing} = missing # optional + source_description::Union{String, Missing} = missing # optional + source_documentation_reference::Union{String, Missing} = missing # optional + cdm_etl_reference::Union{String, Missing} = missing # optional + source_release_date::Union{Dates.DateTime, Missing} = missing # optional + cdm_release_date::Union{Dates.DateTime, Missing} = missing # optional + cdm_version::Union{String, Missing} = missing # optional + vocabulary_version::Union{String, Missing} = missing # optional +end + + +export Concept + +""" +CDM table name: CONCEPT + +Julia struct name: Concept + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Concept <: CDMType + concept_id::Int # required + concept_name::String # required + domain_id::String # required + vocabulary_id::String # required + concept_class_id::String # required + standard_concept::Union{String, Missing} = missing # optional + concept_code::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export Vocabulary + +""" +CDM table name: VOCABULARY + +Julia struct name: Vocabulary + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Vocabulary <: CDMType + vocabulary_id::String # required + vocabulary_name::String # required + vocabulary_reference::String # required + vocabulary_version::Union{String, Missing} = missing # optional + vocabulary_concept_id::Int # required +end + + +export Domain + +""" +CDM table name: DOMAIN + +Julia struct name: Domain + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Domain <: CDMType + domain_id::String # required + domain_name::String # required + domain_concept_id::Int # required +end + + +export ConceptClass + +""" +CDM table name: CONCEPT_CLASS + +Julia struct name: ConceptClass + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptClass <: CDMType + concept_class_id::String # required + concept_class_name::String # required + concept_class_concept_id::Int # required +end + + +export ConceptRelationship + +""" +CDM table name: CONCEPT_RELATIONSHIP + +Julia struct name: ConceptRelationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptRelationship <: CDMType + concept_id_1::Int # required + concept_id_2::Int # required + relationship_id::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export Relationship + +""" +CDM table name: RELATIONSHIP + +Julia struct name: Relationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Relationship <: CDMType + relationship_id::String # required + relationship_name::String # required + is_hierarchical::String # required + defines_ancestry::String # required + reverse_relationship_id::String # required + relationship_concept_id::Int # required +end + + +export ConceptSynonym + +""" +CDM table name: CONCEPT_SYNONYM + +Julia struct name: ConceptSynonym + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptSynonym <: CDMType + concept_id::Int # required + concept_synonym_name::String # required + language_concept_id::Int # required +end + + +export ConceptAncestor + +""" +CDM table name: CONCEPT_ANCESTOR + +Julia struct name: ConceptAncestor + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptAncestor <: CDMType + ancestor_concept_id::Int # required + descendant_concept_id::Int # required + min_levels_of_separation::Int # required + max_levels_of_separation::Int # required +end + + +export SourceToConceptMap + +""" +CDM table name: SOURCE_TO_CONCEPT_MAP + +Julia struct name: SourceToConceptMap + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct SourceToConceptMap <: CDMType + source_code::String # required + source_concept_id::Int # required + source_vocabulary_id::String # required + source_code_description::Union{String, Missing} = missing # optional + target_concept_id::Int # required + target_vocabulary_id::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export DrugStrength + +""" +CDM table name: DRUG_STRENGTH + +Julia struct name: DrugStrength + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugStrength <: CDMType + drug_concept_id::Int # required + ingredient_concept_id::Int # required + amount_value::Union{Float64, Missing} = missing # optional + amount_unit_concept_id::Union{Int, Missing} = missing # optional + numerator_value::Union{Float64, Missing} = missing # optional + numerator_unit_concept_id::Union{Int, Missing} = missing # optional + denominator_value::Union{Float64, Missing} = missing # optional + denominator_unit_concept_id::Union{Int, Missing} = missing # optional + box_size::Union{Int, Missing} = missing # optional + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export CohortDefinition + +""" +CDM table name: COHORT_DEFINITION + +Julia struct name: CohortDefinition + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CohortDefinition <: CDMType + cohort_definition_id::Int # required + cohort_definition_name::String # required + cohort_definition_description::Union{String, Missing} = missing # optional + definition_type_concept_id::Int # required + cohort_definition_syntax::Union{String, Missing} = missing # optional + subject_concept_id::Int # required + cohort_initiation_date::Union{Dates.DateTime, Missing} = missing # optional +end + + +export AttributeDefinition + +""" +CDM table name: ATTRIBUTE_DEFINITION + +Julia struct name: AttributeDefinition + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct AttributeDefinition <: CDMType + attribute_definition_id::Int # required + attribute_name::String # required + attribute_description::Union{String, Missing} = missing # optional + attribute_type_concept_id::Int # required + attribute_syntax::Union{String, Missing} = missing # optional +end diff --git a/src/Generate/Outfiles/5.4.jl b/src/Generate/Outfiles/5.4.jl new file mode 100644 index 0000000..f73ea74 --- /dev/null +++ b/src/Generate/Outfiles/5.4.jl @@ -0,0 +1,982 @@ +import Dates + + +import DocStringExtensions + + +export Person + +""" +CDM table name: PERSON + +Julia struct name: Person + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Person <: CDMType + person_id::Int # required + gender_concept_id::Int # required + year_of_birth::Int # required + month_of_birth::Union{Int, Missing} = missing # optional + day_of_birth::Union{Int, Missing} = missing # optional + birth_datetime::Union{Dates.DateTime, Missing} = missing # optional + race_concept_id::Int # required + ethnicity_concept_id::Int # required + location_id::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + person_source_value::Union{String, Missing} = missing # optional + gender_source_value::Union{String, Missing} = missing # optional + gender_source_concept_id::Union{Int, Missing} = missing # optional + race_source_value::Union{String, Missing} = missing # optional + race_source_concept_id::Union{Int, Missing} = missing # optional + ethnicity_source_value::Union{String, Missing} = missing # optional + ethnicity_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export ObservationPeriod + +""" +CDM table name: OBSERVATION_PERIOD + +Julia struct name: ObservationPeriod + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ObservationPeriod <: CDMType + observation_period_id::Int # required + person_id::Int # required + observation_period_start_date::Dates.DateTime # required + observation_period_end_date::Dates.DateTime # required + period_type_concept_id::Int # required +end + + +export VisitOccurrence + +""" +CDM table name: VISIT_OCCURRENCE + +Julia struct name: VisitOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct VisitOccurrence <: CDMType + visit_occurrence_id::Int # required + person_id::Int # required + visit_concept_id::Int # required + visit_start_date::Dates.DateTime # required + visit_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_end_date::Dates.DateTime # required + visit_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_type_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + visit_source_value::Union{String, Missing} = missing # optional + visit_source_concept_id::Union{Int, Missing} = missing # optional + admitted_from_concept_id::Union{Int, Missing} = missing # optional + admitted_from_source_value::Union{String, Missing} = missing # optional + discharged_to_concept_id::Union{Int, Missing} = missing # optional + discharged_to_source_value::Union{String, Missing} = missing # optional + preceding_visit_occurrence_id::Union{Int, Missing} = missing # optional +end + + +export VisitDetail + +""" +CDM table name: VISIT_DETAIL + +Julia struct name: VisitDetail + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct VisitDetail <: CDMType + visit_detail_id::Int # required + person_id::Int # required + visit_detail_concept_id::Int # required + visit_detail_start_date::Dates.DateTime # required + visit_detail_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_detail_end_date::Dates.DateTime # required + visit_detail_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + visit_detail_type_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + visit_detail_source_value::Union{String, Missing} = missing # optional + visit_detail_source_concept_id::Union{Int, Missing} = missing # optional + admitted_from_concept_id::Union{Int, Missing} = missing # optional + admitted_from_source_value::Union{String, Missing} = missing # optional + discharged_to_source_value::Union{String, Missing} = missing # optional + discharged_to_concept_id::Union{Int, Missing} = missing # optional + preceding_visit_detail_id::Union{Int, Missing} = missing # optional + parent_visit_detail_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Int # required +end + + +export ConditionOccurrence + +""" +CDM table name: CONDITION_OCCURRENCE + +Julia struct name: ConditionOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConditionOccurrence <: CDMType + condition_occurrence_id::Int # required + person_id::Int # required + condition_concept_id::Int # required + condition_start_date::Dates.DateTime # required + condition_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + condition_end_date::Union{Dates.DateTime, Missing} = missing # optional + condition_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + condition_type_concept_id::Int # required + condition_status_concept_id::Union{Int, Missing} = missing # optional + stop_reason::Union{String, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + condition_source_value::Union{String, Missing} = missing # optional + condition_source_concept_id::Union{Int, Missing} = missing # optional + condition_status_source_value::Union{String, Missing} = missing # optional +end + + +export DrugExposure + +""" +CDM table name: DRUG_EXPOSURE + +Julia struct name: DrugExposure + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugExposure <: CDMType + drug_exposure_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + drug_exposure_start_date::Dates.DateTime # required + drug_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + drug_exposure_end_date::Dates.DateTime # required + drug_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + verbatim_end_date::Union{Dates.DateTime, Missing} = missing # optional + drug_type_concept_id::Int # required + stop_reason::Union{String, Missing} = missing # optional + refills::Union{Int, Missing} = missing # optional + quantity::Union{Float64, Missing} = missing # optional + days_supply::Union{Int, Missing} = missing # optional + sig::Union{String, Missing} = missing # optional + route_concept_id::Union{Int, Missing} = missing # optional + lot_number::Union{String, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + drug_source_value::Union{String, Missing} = missing # optional + drug_source_concept_id::Union{Int, Missing} = missing # optional + route_source_value::Union{String, Missing} = missing # optional + dose_unit_source_value::Union{String, Missing} = missing # optional +end + + +export ProcedureOccurrence + +""" +CDM table name: PROCEDURE_OCCURRENCE + +Julia struct name: ProcedureOccurrence + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ProcedureOccurrence <: CDMType + procedure_occurrence_id::Int # required + person_id::Int # required + procedure_concept_id::Int # required + procedure_date::Dates.DateTime # required + procedure_datetime::Union{Dates.DateTime, Missing} = missing # optional + procedure_end_date::Union{Dates.DateTime, Missing} = missing # optional + procedure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + procedure_type_concept_id::Int # required + modifier_concept_id::Union{Int, Missing} = missing # optional + quantity::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + procedure_source_value::Union{String, Missing} = missing # optional + procedure_source_concept_id::Union{Int, Missing} = missing # optional + modifier_source_value::Union{String, Missing} = missing # optional +end + + +export DeviceExposure + +""" +CDM table name: DEVICE_EXPOSURE + +Julia struct name: DeviceExposure + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DeviceExposure <: CDMType + device_exposure_id::Int # required + person_id::Int # required + device_concept_id::Int # required + device_exposure_start_date::Dates.DateTime # required + device_exposure_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + device_exposure_end_date::Union{Dates.DateTime, Missing} = missing # optional + device_exposure_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + device_type_concept_id::Int # required + unique_device_id::Union{String, Missing} = missing # optional + production_id::Union{String, Missing} = missing # optional + quantity::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + device_source_value::Union{String, Missing} = missing # optional + device_source_concept_id::Union{Int, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + unit_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Measurement + +""" +CDM table name: MEASUREMENT + +Julia struct name: Measurement + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Measurement <: CDMType + measurement_id::Int # required + person_id::Int # required + measurement_concept_id::Int # required + measurement_date::Dates.DateTime # required + measurement_datetime::Union{Dates.DateTime, Missing} = missing # optional + measurement_time::Union{String, Missing} = missing # optional + measurement_type_concept_id::Int # required + operator_concept_id::Union{Int, Missing} = missing # optional + value_as_number::Union{Float64, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + range_low::Union{Float64, Missing} = missing # optional + range_high::Union{Float64, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + measurement_source_value::Union{String, Missing} = missing # optional + measurement_source_concept_id::Union{Int, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + unit_source_concept_id::Union{Int, Missing} = missing # optional + value_source_value::Union{String, Missing} = missing # optional + measurement_event_id::Union{Int, Missing} = missing # optional + meas_event_field_concept_id::Union{Int, Missing} = missing # optional +end + + +export Observation + +""" +CDM table name: OBSERVATION + +Julia struct name: Observation + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Observation <: CDMType + observation_id::Int # required + person_id::Int # required + observation_concept_id::Int # required + observation_date::Dates.DateTime # required + observation_datetime::Union{Dates.DateTime, Missing} = missing # optional + observation_type_concept_id::Int # required + value_as_number::Union{Float64, Missing} = missing # optional + value_as_string::Union{String, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + qualifier_concept_id::Union{Int, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + observation_source_value::Union{String, Missing} = missing # optional + observation_source_concept_id::Union{Int, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + qualifier_source_value::Union{String, Missing} = missing # optional + value_source_value::Union{String, Missing} = missing # optional + observation_event_id::Union{Int, Missing} = missing # optional + obs_event_field_concept_id::Union{Int, Missing} = missing # optional +end + + +export Death + +""" +CDM table name: DEATH + +Julia struct name: Death + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Death <: CDMType + person_id::Int # required + death_date::Dates.DateTime # required + death_datetime::Union{Dates.DateTime, Missing} = missing # optional + death_type_concept_id::Union{Int, Missing} = missing # optional + cause_concept_id::Union{Int, Missing} = missing # optional + cause_source_value::Union{String, Missing} = missing # optional + cause_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Note + +""" +CDM table name: NOTE + +Julia struct name: Note + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Note <: CDMType + note_id::Int # required + person_id::Int # required + note_date::Dates.DateTime # required + note_datetime::Union{Dates.DateTime, Missing} = missing # optional + note_type_concept_id::Int # required + note_class_concept_id::Int # required + note_title::Union{String, Missing} = missing # optional + note_text::String # required + encoding_concept_id::Int # required + language_concept_id::Int # required + provider_id::Union{Int, Missing} = missing # optional + visit_occurrence_id::Union{Int, Missing} = missing # optional + visit_detail_id::Union{Int, Missing} = missing # optional + note_source_value::Union{String, Missing} = missing # optional + note_event_id::Union{Int, Missing} = missing # optional + note_event_field_concept_id::Union{Int, Missing} = missing # optional +end + + +export NoteNlp + +""" +CDM table name: NOTE_NLP + +Julia struct name: NoteNlp + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct NoteNlp <: CDMType + note_nlp_id::Int # required + note_id::Int # required + section_concept_id::Union{Int, Missing} = missing # optional + snippet::Union{String, Missing} = missing # optional + offset::Union{String, Missing} = missing # optional + lexical_variant::String # required + note_nlp_concept_id::Union{Int, Missing} = missing # optional + note_nlp_source_concept_id::Union{Int, Missing} = missing # optional + nlp_system::Union{String, Missing} = missing # optional + nlp_date::Dates.DateTime # required + nlp_datetime::Union{Dates.DateTime, Missing} = missing # optional + term_exists::Union{String, Missing} = missing # optional + term_temporal::Union{String, Missing} = missing # optional + term_modifiers::Union{String, Missing} = missing # optional +end + + +export Specimen + +""" +CDM table name: SPECIMEN + +Julia struct name: Specimen + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Specimen <: CDMType + specimen_id::Int # required + person_id::Int # required + specimen_concept_id::Int # required + specimen_type_concept_id::Int # required + specimen_date::Dates.DateTime # required + specimen_datetime::Union{Dates.DateTime, Missing} = missing # optional + quantity::Union{Float64, Missing} = missing # optional + unit_concept_id::Union{Int, Missing} = missing # optional + anatomic_site_concept_id::Union{Int, Missing} = missing # optional + disease_status_concept_id::Union{Int, Missing} = missing # optional + specimen_source_id::Union{String, Missing} = missing # optional + specimen_source_value::Union{String, Missing} = missing # optional + unit_source_value::Union{String, Missing} = missing # optional + anatomic_site_source_value::Union{String, Missing} = missing # optional + disease_status_source_value::Union{String, Missing} = missing # optional +end + + +export FactRelationship + +""" +CDM table name: FACT_RELATIONSHIP + +Julia struct name: FactRelationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct FactRelationship <: CDMType + domain_concept_id_1::Int # required + fact_id_1::Int # required + domain_concept_id_2::Int # required + fact_id_2::Int # required + relationship_concept_id::Int # required +end + + +export Location + +""" +CDM table name: LOCATION + +Julia struct name: Location + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Location <: CDMType + location_id::Int # required + address_1::Union{String, Missing} = missing # optional + address_2::Union{String, Missing} = missing # optional + city::Union{String, Missing} = missing # optional + state::Union{String, Missing} = missing # optional + zip::Union{String, Missing} = missing # optional + county::Union{String, Missing} = missing # optional + location_source_value::Union{String, Missing} = missing # optional + country_concept_id::Union{Int, Missing} = missing # optional + country_source_value::Union{String, Missing} = missing # optional + latitude::Union{Float64, Missing} = missing # optional + longitude::Union{Float64, Missing} = missing # optional +end + + +export CareSite + +""" +CDM table name: CARE_SITE + +Julia struct name: CareSite + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CareSite <: CDMType + care_site_id::Int # required + care_site_name::Union{String, Missing} = missing # optional + place_of_service_concept_id::Union{Int, Missing} = missing # optional + location_id::Union{Int, Missing} = missing # optional + care_site_source_value::Union{String, Missing} = missing # optional + place_of_service_source_value::Union{String, Missing} = missing # optional +end + + +export Provider + +""" +CDM table name: PROVIDER + +Julia struct name: Provider + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Provider <: CDMType + provider_id::Int # required + provider_name::Union{String, Missing} = missing # optional + npi::Union{String, Missing} = missing # optional + dea::Union{String, Missing} = missing # optional + specialty_concept_id::Union{Int, Missing} = missing # optional + care_site_id::Union{Int, Missing} = missing # optional + year_of_birth::Union{Int, Missing} = missing # optional + gender_concept_id::Union{Int, Missing} = missing # optional + provider_source_value::Union{String, Missing} = missing # optional + specialty_source_value::Union{String, Missing} = missing # optional + specialty_source_concept_id::Union{Int, Missing} = missing # optional + gender_source_value::Union{String, Missing} = missing # optional + gender_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export PayerPlanPeriod + +""" +CDM table name: PAYER_PLAN_PERIOD + +Julia struct name: PayerPlanPeriod + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct PayerPlanPeriod <: CDMType + payer_plan_period_id::Int # required + person_id::Int # required + payer_plan_period_start_date::Dates.DateTime # required + payer_plan_period_end_date::Dates.DateTime # required + payer_concept_id::Union{Int, Missing} = missing # optional + payer_source_value::Union{String, Missing} = missing # optional + payer_source_concept_id::Union{Int, Missing} = missing # optional + plan_concept_id::Union{Int, Missing} = missing # optional + plan_source_value::Union{String, Missing} = missing # optional + plan_source_concept_id::Union{Int, Missing} = missing # optional + sponsor_concept_id::Union{Int, Missing} = missing # optional + sponsor_source_value::Union{String, Missing} = missing # optional + sponsor_source_concept_id::Union{Int, Missing} = missing # optional + family_source_value::Union{String, Missing} = missing # optional + stop_reason_concept_id::Union{Int, Missing} = missing # optional + stop_reason_source_value::Union{String, Missing} = missing # optional + stop_reason_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export Cost + +""" +CDM table name: COST + +Julia struct name: Cost + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Cost <: CDMType + cost_id::Int # required + cost_event_id::Int # required + cost_domain_id::String # required + cost_type_concept_id::Int # required + currency_concept_id::Union{Int, Missing} = missing # optional + total_charge::Union{Float64, Missing} = missing # optional + total_cost::Union{Float64, Missing} = missing # optional + total_paid::Union{Float64, Missing} = missing # optional + paid_by_payer::Union{Float64, Missing} = missing # optional + paid_by_patient::Union{Float64, Missing} = missing # optional + paid_patient_copay::Union{Float64, Missing} = missing # optional + paid_patient_coinsurance::Union{Float64, Missing} = missing # optional + paid_patient_deductible::Union{Float64, Missing} = missing # optional + paid_by_primary::Union{Float64, Missing} = missing # optional + paid_ingredient_cost::Union{Float64, Missing} = missing # optional + paid_dispensing_fee::Union{Float64, Missing} = missing # optional + payer_plan_period_id::Union{Int, Missing} = missing # optional + amount_allowed::Union{Float64, Missing} = missing # optional + revenue_code_concept_id::Union{Int, Missing} = missing # optional + revenue_code_source_value::Union{String, Missing} = missing # optional + drg_concept_id::Union{Int, Missing} = missing # optional + drg_source_value::Union{String, Missing} = missing # optional +end + + +export DrugEra + +""" +CDM table name: DRUG_ERA + +Julia struct name: DrugEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugEra <: CDMType + drug_era_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + drug_era_start_date::Dates.DateTime # required + drug_era_end_date::Dates.DateTime # required + drug_exposure_count::Union{Int, Missing} = missing # optional + gap_days::Union{Int, Missing} = missing # optional +end + + +export DoseEra + +""" +CDM table name: DOSE_ERA + +Julia struct name: DoseEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DoseEra <: CDMType + dose_era_id::Int # required + person_id::Int # required + drug_concept_id::Int # required + unit_concept_id::Int # required + dose_value::Float64 # required + dose_era_start_date::Dates.DateTime # required + dose_era_end_date::Dates.DateTime # required +end + + +export ConditionEra + +""" +CDM table name: CONDITION_ERA + +Julia struct name: ConditionEra + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConditionEra <: CDMType + condition_era_id::Int # required + person_id::Int # required + condition_concept_id::Int # required + condition_era_start_date::Dates.DateTime # required + condition_era_end_date::Dates.DateTime # required + condition_occurrence_count::Union{Int, Missing} = missing # optional +end + + +export Episode + +""" +CDM table name: EPISODE + +Julia struct name: Episode + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Episode <: CDMType + episode_id::Int # required + person_id::Int # required + episode_concept_id::Int # required + episode_start_date::Dates.DateTime # required + episode_start_datetime::Union{Dates.DateTime, Missing} = missing # optional + episode_end_date::Union{Dates.DateTime, Missing} = missing # optional + episode_end_datetime::Union{Dates.DateTime, Missing} = missing # optional + episode_parent_id::Union{Int, Missing} = missing # optional + episode_number::Union{Int, Missing} = missing # optional + episode_object_concept_id::Int # required + episode_type_concept_id::Int # required + episode_source_value::Union{String, Missing} = missing # optional + episode_source_concept_id::Union{Int, Missing} = missing # optional +end + + +export EpisodeEvent + +""" +CDM table name: EPISODE_EVENT + +Julia struct name: EpisodeEvent + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct EpisodeEvent <: CDMType + episode_id::Int # required + event_id::Int # required + episode_event_field_concept_id::Int # required +end + + +export Metadata + +""" +CDM table name: METADATA + +Julia struct name: Metadata + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Metadata <: CDMType + metadata_id::Int # required + metadata_concept_id::Int # required + metadata_type_concept_id::Int # required + name::String # required + value_as_string::Union{String, Missing} = missing # optional + value_as_concept_id::Union{Int, Missing} = missing # optional + value_as_number::Union{Float64, Missing} = missing # optional + metadata_date::Union{Dates.DateTime, Missing} = missing # optional + metadata_datetime::Union{Dates.DateTime, Missing} = missing # optional +end + + +export CdmSource + +""" +CDM table name: CDM_SOURCE + +Julia struct name: CdmSource + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CdmSource <: CDMType + cdm_source_name::String # required + cdm_source_abbreviation::String # required + cdm_holder::String # required + source_description::Union{String, Missing} = missing # optional + source_documentation_reference::Union{String, Missing} = missing # optional + cdm_etl_reference::Union{String, Missing} = missing # optional + source_release_date::Dates.DateTime # required + cdm_release_date::Dates.DateTime # required + cdm_version::Union{String, Missing} = missing # optional + cdm_version_concept_id::Int # required + vocabulary_version::String # required +end + + +export Concept + +""" +CDM table name: CONCEPT + +Julia struct name: Concept + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Concept <: CDMType + concept_id::Int # required + concept_name::String # required + domain_id::String # required + vocabulary_id::String # required + concept_class_id::String # required + standard_concept::Union{String, Missing} = missing # optional + concept_code::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export Vocabulary + +""" +CDM table name: VOCABULARY + +Julia struct name: Vocabulary + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Vocabulary <: CDMType + vocabulary_id::String # required + vocabulary_name::String # required + vocabulary_reference::Union{String, Missing} = missing # optional + vocabulary_version::Union{String, Missing} = missing # optional + vocabulary_concept_id::Int # required +end + + +export Domain + +""" +CDM table name: DOMAIN + +Julia struct name: Domain + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Domain <: CDMType + domain_id::String # required + domain_name::String # required + domain_concept_id::Int # required +end + + +export ConceptClass + +""" +CDM table name: CONCEPT_CLASS + +Julia struct name: ConceptClass + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptClass <: CDMType + concept_class_id::String # required + concept_class_name::String # required + concept_class_concept_id::Int # required +end + + +export ConceptRelationship + +""" +CDM table name: CONCEPT_RELATIONSHIP + +Julia struct name: ConceptRelationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptRelationship <: CDMType + concept_id_1::Int # required + concept_id_2::Int # required + relationship_id::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export Relationship + +""" +CDM table name: RELATIONSHIP + +Julia struct name: Relationship + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Relationship <: CDMType + relationship_id::String # required + relationship_name::String # required + is_hierarchical::String # required + defines_ancestry::String # required + reverse_relationship_id::String # required + relationship_concept_id::Int # required +end + + +export ConceptSynonym + +""" +CDM table name: CONCEPT_SYNONYM + +Julia struct name: ConceptSynonym + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptSynonym <: CDMType + concept_id::Int # required + concept_synonym_name::String # required + language_concept_id::Int # required +end + + +export ConceptAncestor + +""" +CDM table name: CONCEPT_ANCESTOR + +Julia struct name: ConceptAncestor + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct ConceptAncestor <: CDMType + ancestor_concept_id::Int # required + descendant_concept_id::Int # required + min_levels_of_separation::Int # required + max_levels_of_separation::Int # required +end + + +export SourceToConceptMap + +""" +CDM table name: SOURCE_TO_CONCEPT_MAP + +Julia struct name: SourceToConceptMap + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct SourceToConceptMap <: CDMType + source_code::String # required + source_concept_id::Int # required + source_vocabulary_id::String # required + source_code_description::Union{String, Missing} = missing # optional + target_concept_id::Int # required + target_vocabulary_id::String # required + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export DrugStrength + +""" +CDM table name: DRUG_STRENGTH + +Julia struct name: DrugStrength + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct DrugStrength <: CDMType + drug_concept_id::Int # required + ingredient_concept_id::Int # required + amount_value::Union{Float64, Missing} = missing # optional + amount_unit_concept_id::Union{Int, Missing} = missing # optional + numerator_value::Union{Float64, Missing} = missing # optional + numerator_unit_concept_id::Union{Int, Missing} = missing # optional + denominator_value::Union{Float64, Missing} = missing # optional + denominator_unit_concept_id::Union{Int, Missing} = missing # optional + box_size::Union{Int, Missing} = missing # optional + valid_start_date::Dates.DateTime # required + valid_end_date::Dates.DateTime # required + invalid_reason::Union{String, Missing} = missing # optional +end + + +export Cohort + +""" +CDM table name: COHORT + +Julia struct name: Cohort + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct Cohort <: CDMType + cohort_definition_id::Int # required + subject_id::Int # required + cohort_start_date::Dates.DateTime # required + cohort_end_date::Dates.DateTime # required +end + + +export CohortDefinition + +""" +CDM table name: COHORT_DEFINITION + +Julia struct name: CohortDefinition + +$(DocStringExtensions.TYPEDEF) +$(DocStringExtensions.TYPEDFIELDS) +""" +Base.@kwdef struct CohortDefinition <: CDMType + cohort_definition_id::Int # required + cohort_definition_name::String # required + cohort_definition_description::Union{String, Missing} = missing # optional + definition_type_concept_id::Int # required + cohort_definition_syntax::Union{String, Missing} = missing # optional + subject_concept_id::Int # required + cohort_initiation_date::Union{Dates.DateTime, Missing} = missing # optional +end diff --git a/src/Generate/Outfiles/README.md b/src/Generate/Outfiles/README.md new file mode 100644 index 0000000..8de10d0 --- /dev/null +++ b/src/Generate/Outfiles/README.md @@ -0,0 +1,2 @@ +The files in this directory are generated by the Generate scripts. +There is probably no need to edit them directly. From 537cfca61fbbb4d8cd453ebae7770209d0661223 Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:22:25 -0400 Subject: [PATCH 10/12] Add README --- src/Generate/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/Generate/README.md diff --git a/src/Generate/README.md b/src/Generate/README.md new file mode 100644 index 0000000..5ff5d87 --- /dev/null +++ b/src/Generate/README.md @@ -0,0 +1 @@ +Generate.jl takes as input a DDL file from the `assets/` and produces a Julia file in `src/Generate/Outfiles`. From 6b9a57369be33c84229c800ed53d7c0b8812070e Mon Sep 17 00:00:00 2001 From: AshlinHarris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:25:38 -0400 Subject: [PATCH 11/12] READ OMOP_CDM_VERSION from ENV --- README.md | 3 +++ test/runtests.jl | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4983069..3dcb49c 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,9 @@ Pure Julia implementation of the [OMOP Common Data Model (CDM)](https://github.c Please see the [documentation](https://JuliaHealth.github.io/OMOPCommonDataModel.jl/stable). +OMOP CDM versions 5.4.1 and 5.3.1 are supported. +The value for `OMOP_CDM_VERSION` is read from the Julia environment, with `v5.4.1` being the default value. + ## Example ```julia using CSV, DataFrames, OMOPCommonDataModel diff --git a/test/runtests.jl b/test/runtests.jl index 1ede6ab..054bdac 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -14,7 +14,7 @@ using Test @test OMOPCommonDataModel.version() > v"0" @test OMOPCommonDataModel.cdm_version() isa VersionNumber @test OMOPCommonDataModel.cdm_version() > v"0" - @test OMOPCommonDataModel.cdm_version() == OMOPCommonDataModel.CDM_VERSION + @test OMOPCommonDataModel.cdm_version() == OMOPCommonDataModel.OMOP_CDM_VERSION end @testset "String casing" begin @testset "pascalcase" begin From 3a4c2b0f60263083cabbc38759075703f279af54 Mon Sep 17 00:00:00 2001 From: Ashlin Harris <90787010+AshlinHarris@users.noreply.github.com> Date: Sat, 7 Sep 2024 12:44:05 -0400 Subject: [PATCH 12/12] Update README.md --- assets/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/README.md b/assets/README.md index 81f51be..c8bbef8 100644 --- a/assets/README.md +++ b/assets/README.md @@ -1,3 +1,3 @@ Files in this directory are taken from https://github.com/OHDSI/CommonDataModel/tree/main/ddl. -If not otherwise specified, all OHDSI content is subject to [the Creative Commons CC BY-SA 4.0 license]i(https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1). +If not otherwise specified, all OHDSI content is subject to [the Creative Commons CC BY-SA 4.0 license](https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1).