1
1
-- postgresql CDM DDL Specification for OMOP Common Data Model 5.4
2
2
3
- CREATE SCHEMA IF NOT EXISTS omopSchema ;
3
+ CREATE SCHEMA IF NOT EXISTS omopcdm ;
4
4
5
5
-- HINT DISTRIBUTE ON KEY (person_id)
6
- CREATE TABLE omopSchema .person (
6
+ CREATE TABLE omopcdm .person (
7
7
person_id integer NOT NULL ,
8
8
gender_concept_id integer NOT NULL ,
9
9
year_of_birth integer NOT NULL ,
@@ -23,14 +23,14 @@ CREATE TABLE omopSchema.person (
23
23
ethnicity_source_value varchar (50 ) NULL ,
24
24
ethnicity_source_concept_id integer NULL );
25
25
-- HINT DISTRIBUTE ON KEY (person_id)
26
- CREATE TABLE omopSchema .observation_period (
26
+ CREATE TABLE omopcdm .observation_period (
27
27
observation_period_id integer NOT NULL ,
28
28
person_id integer NOT NULL ,
29
29
observation_period_start_date date NOT NULL ,
30
30
observation_period_end_date date NOT NULL ,
31
31
period_type_concept_id integer NOT NULL );
32
32
-- HINT DISTRIBUTE ON KEY (person_id)
33
- CREATE TABLE omopSchema .visit_occurrence (
33
+ CREATE TABLE omopcdm .visit_occurrence (
34
34
visit_occurrence_id integer NOT NULL ,
35
35
person_id integer NOT NULL ,
36
36
visit_concept_id integer NOT NULL ,
@@ -49,7 +49,7 @@ CREATE TABLE omopSchema.visit_occurrence (
49
49
discharged_to_source_value varchar (50 ) NULL ,
50
50
preceding_visit_occurrence_id integer NULL );
51
51
-- HINT DISTRIBUTE ON KEY (person_id)
52
- CREATE TABLE omopSchema .visit_detail (
52
+ CREATE TABLE omopcdm .visit_detail (
53
53
visit_detail_id integer NOT NULL ,
54
54
person_id integer NOT NULL ,
55
55
visit_detail_concept_id integer NOT NULL ,
@@ -70,7 +70,7 @@ CREATE TABLE omopSchema.visit_detail (
70
70
parent_visit_detail_id integer NULL ,
71
71
visit_occurrence_id integer NOT NULL );
72
72
-- HINT DISTRIBUTE ON KEY (person_id)
73
- CREATE TABLE omopSchema .condition_occurrence (
73
+ CREATE TABLE omopcdm .condition_occurrence (
74
74
condition_occurrence_id integer NOT NULL ,
75
75
person_id integer NOT NULL ,
76
76
condition_concept_id integer NOT NULL ,
@@ -88,7 +88,7 @@ CREATE TABLE omopSchema.condition_occurrence (
88
88
condition_source_concept_id integer NULL ,
89
89
condition_status_source_value varchar (50 ) NULL );
90
90
-- HINT DISTRIBUTE ON KEY (person_id)
91
- CREATE TABLE omopSchema .drug_exposure (
91
+ CREATE TABLE omopcdm .drug_exposure (
92
92
drug_exposure_id integer NOT NULL ,
93
93
person_id integer NOT NULL ,
94
94
drug_concept_id integer NOT NULL ,
@@ -113,7 +113,7 @@ CREATE TABLE omopSchema.drug_exposure (
113
113
route_source_value varchar (50 ) NULL ,
114
114
dose_unit_source_value varchar (50 ) NULL );
115
115
-- HINT DISTRIBUTE ON KEY (person_id)
116
- CREATE TABLE omopSchema .procedure_occurrence (
116
+ CREATE TABLE omopcdm .procedure_occurrence (
117
117
procedure_occurrence_id integer NOT NULL ,
118
118
person_id integer NOT NULL ,
119
119
procedure_concept_id integer NOT NULL ,
@@ -131,7 +131,7 @@ CREATE TABLE omopSchema.procedure_occurrence (
131
131
procedure_source_concept_id integer NULL ,
132
132
modifier_source_value varchar (50 ) NULL );
133
133
-- HINT DISTRIBUTE ON KEY (person_id)
134
- CREATE TABLE omopSchema .device_exposure (
134
+ CREATE TABLE omopcdm .device_exposure (
135
135
device_exposure_id integer NOT NULL ,
136
136
person_id integer NOT NULL ,
137
137
device_concept_id integer NOT NULL ,
@@ -152,7 +152,7 @@ CREATE TABLE omopSchema.device_exposure (
152
152
unit_source_value varchar (50 ) NULL ,
153
153
unit_source_concept_id integer NULL );
154
154
-- HINT DISTRIBUTE ON KEY (person_id)
155
- CREATE TABLE omopSchema .measurement (
155
+ CREATE TABLE omopcdm .measurement (
156
156
measurement_id integer NOT NULL ,
157
157
person_id integer NOT NULL ,
158
158
measurement_concept_id integer NOT NULL ,
@@ -177,7 +177,7 @@ CREATE TABLE omopSchema.measurement (
177
177
measurement_event_id integer NULL ,
178
178
meas_event_field_concept_id integer NULL );
179
179
-- HINT DISTRIBUTE ON KEY (person_id)
180
- CREATE TABLE omopSchema .observation (
180
+ CREATE TABLE omopcdm .observation (
181
181
observation_id integer NOT NULL ,
182
182
person_id integer NOT NULL ,
183
183
observation_concept_id integer NOT NULL ,
@@ -200,7 +200,7 @@ CREATE TABLE omopSchema.observation (
200
200
observation_event_id integer NULL ,
201
201
obs_event_field_concept_id integer NULL );
202
202
-- HINT DISTRIBUTE ON KEY (person_id)
203
- CREATE TABLE omopSchema .death (
203
+ CREATE TABLE omopcdm .death (
204
204
person_id integer NOT NULL ,
205
205
death_date date NOT NULL ,
206
206
death_datetime TIMESTAMP NULL ,
@@ -209,7 +209,7 @@ CREATE TABLE omopSchema.death (
209
209
cause_source_value varchar (50 ) NULL ,
210
210
cause_source_concept_id integer NULL );
211
211
-- HINT DISTRIBUTE ON KEY (person_id)
212
- CREATE TABLE omopSchema .note (
212
+ CREATE TABLE omopcdm .note (
213
213
note_id integer NOT NULL ,
214
214
person_id integer NOT NULL ,
215
215
note_date date NOT NULL ,
@@ -227,7 +227,7 @@ CREATE TABLE omopSchema.note (
227
227
note_event_id integer NULL ,
228
228
note_event_field_concept_id integer NULL );
229
229
-- HINT DISTRIBUTE ON RANDOM
230
- CREATE TABLE omopSchema .note_nlp (
230
+ CREATE TABLE omopcdm .note_nlp (
231
231
note_nlp_id integer NOT NULL ,
232
232
note_id integer NOT NULL ,
233
233
section_concept_id integer NULL ,
@@ -243,7 +243,7 @@ CREATE TABLE omopSchema.note_nlp (
243
243
term_temporal varchar (50 ) NULL ,
244
244
term_modifiers varchar (2000 ) NULL );
245
245
-- HINT DISTRIBUTE ON KEY (person_id)
246
- CREATE TABLE omopSchema .specimen (
246
+ CREATE TABLE omopcdm .specimen (
247
247
specimen_id integer NOT NULL ,
248
248
person_id integer NOT NULL ,
249
249
specimen_concept_id integer NOT NULL ,
@@ -260,14 +260,14 @@ CREATE TABLE omopSchema.specimen (
260
260
anatomic_site_source_value varchar (50 ) NULL ,
261
261
disease_status_source_value varchar (50 ) NULL );
262
262
-- HINT DISTRIBUTE ON RANDOM
263
- CREATE TABLE omopSchema .fact_relationship (
263
+ CREATE TABLE omopcdm .fact_relationship (
264
264
domain_concept_id_1 integer NOT NULL ,
265
265
fact_id_1 integer NOT NULL ,
266
266
domain_concept_id_2 integer NOT NULL ,
267
267
fact_id_2 integer NOT NULL ,
268
268
relationship_concept_id integer NOT NULL );
269
269
-- HINT DISTRIBUTE ON RANDOM
270
- CREATE TABLE omopSchema .location (
270
+ CREATE TABLE omopcdm .location (
271
271
location_id integer NOT NULL ,
272
272
address_1 varchar (50 ) NULL ,
273
273
address_2 varchar (50 ) NULL ,
@@ -281,15 +281,15 @@ CREATE TABLE omopSchema.location (
281
281
latitude NUMERIC NULL ,
282
282
longitude NUMERIC NULL );
283
283
-- HINT DISTRIBUTE ON RANDOM
284
- CREATE TABLE omopSchema .care_site (
284
+ CREATE TABLE omopcdm .care_site (
285
285
care_site_id integer NOT NULL ,
286
286
care_site_name varchar (255 ) NULL ,
287
287
place_of_service_concept_id integer NULL ,
288
288
location_id integer NULL ,
289
289
care_site_source_value varchar (50 ) NULL ,
290
290
place_of_service_source_value varchar (50 ) NULL );
291
291
-- HINT DISTRIBUTE ON RANDOM
292
- CREATE TABLE omopSchema .provider (
292
+ CREATE TABLE omopcdm .provider (
293
293
provider_id integer NOT NULL ,
294
294
provider_name varchar (255 ) NULL ,
295
295
npi varchar (20 ) NULL ,
@@ -304,7 +304,7 @@ CREATE TABLE omopSchema.provider (
304
304
gender_source_value varchar (50 ) NULL ,
305
305
gender_source_concept_id integer NULL );
306
306
-- HINT DISTRIBUTE ON KEY (person_id)
307
- CREATE TABLE omopSchema .payer_plan_period (
307
+ CREATE TABLE omopcdm .payer_plan_period (
308
308
payer_plan_period_id integer NOT NULL ,
309
309
person_id integer NOT NULL ,
310
310
payer_plan_period_start_date date NOT NULL ,
@@ -323,7 +323,7 @@ CREATE TABLE omopSchema.payer_plan_period (
323
323
stop_reason_source_value varchar (50 ) NULL ,
324
324
stop_reason_source_concept_id integer NULL );
325
325
-- HINT DISTRIBUTE ON RANDOM
326
- CREATE TABLE omopSchema .cost (
326
+ CREATE TABLE omopcdm .cost (
327
327
cost_id integer NOT NULL ,
328
328
cost_event_id integer NOT NULL ,
329
329
cost_domain_id varchar (20 ) NOT NULL ,
@@ -347,7 +347,7 @@ CREATE TABLE omopSchema.cost (
347
347
drg_concept_id integer NULL ,
348
348
drg_source_value varchar (3 ) NULL );
349
349
-- HINT DISTRIBUTE ON KEY (person_id)
350
- CREATE TABLE omopSchema .drug_era (
350
+ CREATE TABLE omopcdm .drug_era (
351
351
drug_era_id integer NOT NULL ,
352
352
person_id integer NOT NULL ,
353
353
drug_concept_id integer NOT NULL ,
@@ -356,7 +356,7 @@ CREATE TABLE omopSchema.drug_era (
356
356
drug_exposure_count integer NULL ,
357
357
gap_days integer NULL );
358
358
-- HINT DISTRIBUTE ON KEY (person_id)
359
- CREATE TABLE omopSchema .dose_era (
359
+ CREATE TABLE omopcdm .dose_era (
360
360
dose_era_id integer NOT NULL ,
361
361
person_id integer NOT NULL ,
362
362
drug_concept_id integer NOT NULL ,
@@ -365,15 +365,15 @@ CREATE TABLE omopSchema.dose_era (
365
365
dose_era_start_date date NOT NULL ,
366
366
dose_era_end_date date NOT NULL );
367
367
-- HINT DISTRIBUTE ON KEY (person_id)
368
- CREATE TABLE omopSchema .condition_era (
368
+ CREATE TABLE omopcdm .condition_era (
369
369
condition_era_id integer NOT NULL ,
370
370
person_id integer NOT NULL ,
371
371
condition_concept_id integer NOT NULL ,
372
372
condition_era_start_date date NOT NULL ,
373
373
condition_era_end_date date NOT NULL ,
374
374
condition_occurrence_count integer NULL );
375
375
-- HINT DISTRIBUTE ON KEY (person_id)
376
- CREATE TABLE omopSchema .episode (
376
+ CREATE TABLE omopcdm .episode (
377
377
episode_id integer NOT NULL ,
378
378
person_id integer NOT NULL ,
379
379
episode_concept_id integer NOT NULL ,
@@ -388,12 +388,12 @@ CREATE TABLE omopSchema.episode (
388
388
episode_source_value varchar (50 ) NULL ,
389
389
episode_source_concept_id integer NULL );
390
390
-- HINT DISTRIBUTE ON RANDOM
391
- CREATE TABLE omopSchema .episode_event (
391
+ CREATE TABLE omopcdm .episode_event (
392
392
episode_id integer NOT NULL ,
393
393
event_id integer NOT NULL ,
394
394
episode_event_field_concept_id integer NOT NULL );
395
395
-- HINT DISTRIBUTE ON RANDOM
396
- CREATE TABLE omopSchema .metadata (
396
+ CREATE TABLE omopcdm .metadata (
397
397
metadata_id integer NOT NULL ,
398
398
metadata_concept_id integer NOT NULL ,
399
399
metadata_type_concept_id integer NOT NULL ,
@@ -404,7 +404,7 @@ CREATE TABLE omopSchema.metadata (
404
404
metadata_date date NULL ,
405
405
metadata_datetime TIMESTAMP NULL );
406
406
-- HINT DISTRIBUTE ON RANDOM
407
- CREATE TABLE omopSchema .cdm_source (
407
+ CREATE TABLE omopcdm .cdm_source (
408
408
cdm_source_name varchar (255 ) NOT NULL ,
409
409
cdm_source_abbreviation varchar (25 ) NOT NULL ,
410
410
cdm_holder varchar (255 ) NOT NULL ,
@@ -417,7 +417,7 @@ CREATE TABLE omopSchema.cdm_source (
417
417
cdm_version_concept_id integer NOT NULL ,
418
418
vocabulary_version varchar (20 ) NOT NULL );
419
419
-- HINT DISTRIBUTE ON RANDOM
420
- CREATE TABLE omopSchema .concept (
420
+ CREATE TABLE omopcdm .concept (
421
421
concept_id integer NOT NULL ,
422
422
concept_name varchar (255 ) NOT NULL ,
423
423
domain_id varchar (20 ) NOT NULL ,
@@ -429,51 +429,51 @@ CREATE TABLE omopSchema.concept (
429
429
valid_end_date date NOT NULL ,
430
430
invalid_reason varchar (1 ) NULL );
431
431
-- HINT DISTRIBUTE ON RANDOM
432
- CREATE TABLE omopSchema .vocabulary (
432
+ CREATE TABLE omopcdm .vocabulary (
433
433
vocabulary_id varchar (20 ) NOT NULL ,
434
434
vocabulary_name varchar (255 ) NOT NULL ,
435
435
vocabulary_reference varchar (255 ) NULL ,
436
436
vocabulary_version varchar (255 ) NULL ,
437
437
vocabulary_concept_id integer NOT NULL );
438
438
-- HINT DISTRIBUTE ON RANDOM
439
- CREATE TABLE omopSchema .domain (
439
+ CREATE TABLE omopcdm .domain (
440
440
domain_id varchar (20 ) NOT NULL ,
441
441
domain_name varchar (255 ) NOT NULL ,
442
442
domain_concept_id integer NOT NULL );
443
443
-- HINT DISTRIBUTE ON RANDOM
444
- CREATE TABLE omopSchema .concept_class (
444
+ CREATE TABLE omopcdm .concept_class (
445
445
concept_class_id varchar (20 ) NOT NULL ,
446
446
concept_class_name varchar (255 ) NOT NULL ,
447
447
concept_class_concept_id integer NOT NULL );
448
448
-- HINT DISTRIBUTE ON RANDOM
449
- CREATE TABLE omopSchema .concept_relationship (
449
+ CREATE TABLE omopcdm .concept_relationship (
450
450
concept_id_1 integer NOT NULL ,
451
451
concept_id_2 integer NOT NULL ,
452
452
relationship_id varchar (20 ) NOT NULL ,
453
453
valid_start_date date NOT NULL ,
454
454
valid_end_date date NOT NULL ,
455
455
invalid_reason varchar (1 ) NULL );
456
456
-- HINT DISTRIBUTE ON RANDOM
457
- CREATE TABLE omopSchema .relationship (
457
+ CREATE TABLE omopcdm .relationship (
458
458
relationship_id varchar (20 ) NOT NULL ,
459
459
relationship_name varchar (255 ) NOT NULL ,
460
460
is_hierarchical varchar (1 ) NOT NULL ,
461
461
defines_ancestry varchar (1 ) NOT NULL ,
462
462
reverse_relationship_id varchar (20 ) NOT NULL ,
463
463
relationship_concept_id integer NOT NULL );
464
464
-- HINT DISTRIBUTE ON RANDOM
465
- CREATE TABLE omopSchema .concept_synonym (
465
+ CREATE TABLE omopcdm .concept_synonym (
466
466
concept_id integer NOT NULL ,
467
467
concept_synonym_name varchar (1000 ) NOT NULL ,
468
468
language_concept_id integer NOT NULL );
469
469
-- HINT DISTRIBUTE ON RANDOM
470
- CREATE TABLE omopSchema .concept_ancestor (
470
+ CREATE TABLE omopcdm .concept_ancestor (
471
471
ancestor_concept_id integer NOT NULL ,
472
472
descendant_concept_id integer NOT NULL ,
473
473
min_levels_of_separation integer NOT NULL ,
474
474
max_levels_of_separation integer NOT NULL );
475
475
-- HINT DISTRIBUTE ON RANDOM
476
- CREATE TABLE omopSchema .source_to_concept_map (
476
+ CREATE TABLE omopcdm .source_to_concept_map (
477
477
source_code varchar (50 ) NOT NULL ,
478
478
source_concept_id integer NOT NULL ,
479
479
source_vocabulary_id varchar (20 ) NOT NULL ,
@@ -484,7 +484,7 @@ CREATE TABLE omopSchema.source_to_concept_map (
484
484
valid_end_date date NOT NULL ,
485
485
invalid_reason varchar (1 ) NULL );
486
486
-- HINT DISTRIBUTE ON RANDOM
487
- CREATE TABLE omopSchema .drug_strength (
487
+ CREATE TABLE omopcdm .drug_strength (
488
488
drug_concept_id integer NOT NULL ,
489
489
ingredient_concept_id integer NOT NULL ,
490
490
amount_value NUMERIC NULL ,
@@ -498,13 +498,13 @@ CREATE TABLE omopSchema.drug_strength (
498
498
valid_end_date date NOT NULL ,
499
499
invalid_reason varchar (1 ) NULL );
500
500
-- HINT DISTRIBUTE ON RANDOM
501
- CREATE TABLE omopSchema .cohort (
501
+ CREATE TABLE omopcdm .cohort (
502
502
cohort_definition_id integer NOT NULL ,
503
503
subject_id integer NOT NULL ,
504
504
cohort_start_date date NOT NULL ,
505
505
cohort_end_date date NOT NULL );
506
506
-- HINT DISTRIBUTE ON RANDOM
507
- CREATE TABLE omopSchema .cohort_definition (
507
+ CREATE TABLE omopcdm .cohort_definition (
508
508
cohort_definition_id integer NOT NULL ,
509
509
cohort_definition_name varchar (255 ) NOT NULL ,
510
510
cohort_definition_description TEXT NULL ,
0 commit comments