conceptql 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +226 -117
  3. data/LICENSE +21 -0
  4. data/README.md +35 -83
  5. data/bin/conceptql +2 -1
  6. data/bin/conceptql_utils +6 -0
  7. data/config/multiple_vocabularies.csv +4 -0
  8. data/config/provenance.yml +489 -0
  9. data/config/race.yml +50 -0
  10. data/config/vocabularies.csv +87 -0
  11. data/lib/conceptql/behaviors/code_lister.rb +23 -0
  12. data/lib/conceptql/behaviors/drugish.rb +17 -0
  13. data/lib/conceptql/behaviors/labish.rb +19 -0
  14. data/lib/conceptql/behaviors/metadatable.rb +226 -73
  15. data/lib/conceptql/behaviors/provenanceable.rb +26 -0
  16. data/lib/conceptql/behaviors/single_event.rb +11 -0
  17. data/lib/conceptql/behaviors/timeless.rb +11 -0
  18. data/lib/conceptql/behaviors/utilizable.rb +206 -0
  19. data/lib/conceptql/behaviors/windowable.rb +27 -0
  20. data/lib/conceptql/cli.rb +117 -108
  21. data/lib/conceptql/columnizer.rb +75 -0
  22. data/lib/conceptql/data_model/base.rb +462 -0
  23. data/lib/conceptql/data_model/gdm.rb +155 -0
  24. data/lib/conceptql/data_model/gdm_wide.rb +42 -0
  25. data/lib/conceptql/data_model/omopv4_plus.rb +12 -0
  26. data/lib/conceptql/data_model.rb +30 -0
  27. data/lib/conceptql/database.rb +214 -0
  28. data/lib/conceptql/date_adjuster.rb +66 -18
  29. data/lib/conceptql/diagram.rb +243 -0
  30. data/lib/conceptql/lexicon/lexicon_gdm.rb +47 -0
  31. data/lib/conceptql/lexicon/lexicon_no_db.rb +49 -0
  32. data/lib/conceptql/lexicon/lexicon_ohdsi.rb +63 -0
  33. data/lib/conceptql/lexicon/lexicon_strategy.rb +116 -0
  34. data/lib/conceptql/lexicon.rb +111 -0
  35. data/lib/conceptql/nodifier.rb +65 -24
  36. data/lib/conceptql/operators/after.rb +34 -14
  37. data/lib/conceptql/operators/any_overlap.rb +8 -6
  38. data/lib/conceptql/operators/before.rb +34 -10
  39. data/lib/conceptql/operators/binary_operator_operator.rb +66 -23
  40. data/lib/conceptql/operators/casting_operator.rb +51 -36
  41. data/lib/conceptql/operators/co_reported.rb +111 -0
  42. data/lib/conceptql/operators/concurrent_within.rb +69 -0
  43. data/lib/conceptql/operators/contains.rb +12 -8
  44. data/lib/conceptql/operators/count.rb +17 -9
  45. data/lib/conceptql/operators/date_range.rb +48 -14
  46. data/lib/conceptql/operators/death.rb +14 -4
  47. data/lib/conceptql/operators/dedup.rb +31 -0
  48. data/lib/conceptql/operators/during.rb +7 -12
  49. data/lib/conceptql/operators/episode.rb +146 -0
  50. data/lib/conceptql/operators/equal.rb +9 -3
  51. data/lib/conceptql/operators/ethnicity.rb +49 -0
  52. data/lib/conceptql/operators/except.rb +19 -12
  53. data/lib/conceptql/operators/filter.rb +23 -8
  54. data/lib/conceptql/operators/first.rb +16 -3
  55. data/lib/conceptql/operators/from.rb +52 -4
  56. data/lib/conceptql/operators/gender.rb +34 -11
  57. data/lib/conceptql/operators/hospice.rb +19 -0
  58. data/lib/conceptql/operators/hospitalization.rb +19 -0
  59. data/lib/conceptql/operators/information_periods.rb +36 -0
  60. data/lib/conceptql/operators/invalid.rb +35 -0
  61. data/lib/conceptql/operators/last.rb +16 -3
  62. data/lib/conceptql/operators/match.rb +91 -0
  63. data/lib/conceptql/operators/multiple_vocabularies.rb +172 -0
  64. data/lib/conceptql/operators/numeric.rb +65 -23
  65. data/lib/conceptql/operators/numeric_filter.rb +68 -0
  66. data/lib/conceptql/operators/occurrence.rb +153 -32
  67. data/lib/conceptql/operators/one_in_two_out.rb +237 -38
  68. data/lib/conceptql/operators/operator.rb +624 -178
  69. data/lib/conceptql/operators/pass_thru.rb +17 -3
  70. data/lib/conceptql/operators/person.rb +18 -6
  71. data/lib/conceptql/operators/person_filter.rb +9 -3
  72. data/lib/conceptql/operators/place_of_service_filter.rb +43 -0
  73. data/lib/conceptql/operators/provenance.rb +55 -0
  74. data/lib/conceptql/operators/provider_filter.rb +62 -0
  75. data/lib/conceptql/operators/race.rb +55 -7
  76. data/lib/conceptql/operators/read.rb +168 -0
  77. data/lib/conceptql/operators/recall.rb +49 -14
  78. data/lib/conceptql/operators/snf.rb +19 -0
  79. data/lib/conceptql/operators/sum.rb +29 -12
  80. data/lib/conceptql/operators/temporal_operator.rb +108 -16
  81. data/lib/conceptql/operators/time_window.rb +20 -32
  82. data/lib/conceptql/operators/trim_date.rb +71 -0
  83. data/lib/conceptql/operators/trim_date_end.rb +28 -40
  84. data/lib/conceptql/operators/trim_date_start.rb +28 -41
  85. data/lib/conceptql/operators/union.rb +67 -6
  86. data/lib/conceptql/operators/vocabulary.rb +151 -0
  87. data/lib/conceptql/paths.rb +41 -0
  88. data/lib/conceptql/query.rb +191 -26
  89. data/lib/conceptql/query_modifiers/gdm/admission_date_query_modifier.rb +46 -0
  90. data/lib/conceptql/query_modifiers/gdm/drug_query_modifier.rb +54 -0
  91. data/lib/conceptql/query_modifiers/gdm/lab_query_modifier.rb +57 -0
  92. data/lib/conceptql/query_modifiers/gdm/pos_query_modifier.rb +46 -0
  93. data/lib/conceptql/query_modifiers/gdm/provenance_query_modifier.rb +45 -0
  94. data/lib/conceptql/query_modifiers/gdm/provider_query_modifier.rb +53 -0
  95. data/lib/conceptql/query_modifiers/gdm_wide/admission_date_query_modifier.rb +42 -0
  96. data/lib/conceptql/query_modifiers/gdm_wide/drug_query_modifier.rb +52 -0
  97. data/lib/conceptql/query_modifiers/gdm_wide/lab_query_modifier.rb +55 -0
  98. data/lib/conceptql/query_modifiers/gdm_wide/pos_query_modifier.rb +37 -0
  99. data/lib/conceptql/query_modifiers/gdm_wide/provenance_query_modifier.rb +38 -0
  100. data/lib/conceptql/query_modifiers/omopv4_plus/admission_date_query_modifier.rb +45 -0
  101. data/lib/conceptql/query_modifiers/omopv4_plus/drug_query_modifier.rb +80 -0
  102. data/lib/conceptql/query_modifiers/omopv4_plus/pos_query_modifier.rb +47 -0
  103. data/lib/conceptql/query_modifiers/omopv4_plus/provenance_query_modifier.rb +45 -0
  104. data/lib/conceptql/query_modifiers/omopv4_plus/provider_query_modifier.rb +26 -0
  105. data/lib/conceptql/query_modifiers/query_modifier.rb +20 -0
  106. data/lib/conceptql/rdbms/duckdb.rb +25 -0
  107. data/lib/conceptql/rdbms/generic.rb +120 -0
  108. data/lib/conceptql/rdbms/postgres.rb +51 -0
  109. data/lib/conceptql/rdbms/spark.rb +22 -0
  110. data/lib/conceptql/rdbms.rb +22 -0
  111. data/lib/conceptql/scope.rb +481 -31
  112. data/lib/conceptql/sql_formatters/formatter.rb +25 -0
  113. data/lib/conceptql/sql_formatters.rb +22 -0
  114. data/lib/conceptql/utils.rb +113 -0
  115. data/lib/conceptql/utils_cli.rb +17 -0
  116. data/lib/conceptql/version.rb +3 -1
  117. data/lib/conceptql/visitors/metadata_extractor.rb +54 -0
  118. data/lib/conceptql/vocabularies/behaviors/costish.rb +24 -0
  119. data/lib/conceptql/vocabularies/behaviors/gdmish.rb +19 -0
  120. data/lib/conceptql/vocabularies/behaviors/omopish.rb +32 -0
  121. data/lib/conceptql/vocabularies/dynamic_vocabularies.rb +63 -0
  122. data/lib/conceptql/vocabularies/entry.rb +138 -0
  123. data/lib/conceptql/vocabularies/vocabulary_class_factory.rb +85 -0
  124. data/lib/conceptql/window/base.rb +26 -0
  125. data/lib/conceptql/window/date_range.rb +25 -0
  126. data/lib/conceptql/window/table.rb +116 -0
  127. data/lib/conceptql/window.rb +72 -0
  128. data/lib/conceptql.rb +65 -2
  129. data/lib/sequel/extensions/pg_ctas_explain.rb +22 -0
  130. data/lib/sequel/extensions/pg_vacuum_table.rb +23 -0
  131. data/schemas/gdm.yml +882 -0
  132. data/schemas/gdm_wide.yml +757 -0
  133. data/schemas/ohdsi_vocabs.yml +143 -0
  134. data/schemas/omopv4_plus.yml +729 -0
  135. data/schemas/omopv4_plus_more_ignorables.tsv +13 -0
  136. metadata +267 -207
  137. data/.gitignore +0 -23
  138. data/Gemfile +0 -4
  139. data/Guardfile +0 -56
  140. data/LICENSE.txt +0 -22
  141. data/Rakefile +0 -1
  142. data/conceptql.gemspec +0 -32
  143. data/doc/ConceptQL Specification (alpha).pdf +0 -0
  144. data/doc/diagram_0.png +0 -0
  145. data/doc/implementation_notes.md +0 -39
  146. data/doc/spec.md +0 -1344
  147. data/lib/conceptql/behaviors/debuggable.rb +0 -70
  148. data/lib/conceptql/behaviors/dottable.rb +0 -103
  149. data/lib/conceptql/behaviors/preppable.rb +0 -20
  150. data/lib/conceptql/converter.rb +0 -65
  151. data/lib/conceptql/debugger.rb +0 -48
  152. data/lib/conceptql/fake_grapher.rb +0 -20
  153. data/lib/conceptql/graph.rb +0 -52
  154. data/lib/conceptql/graph_nodifier.rb +0 -203
  155. data/lib/conceptql/logger.rb +0 -10
  156. data/lib/conceptql/operators/complement.rb +0 -38
  157. data/lib/conceptql/operators/concept.rb +0 -70
  158. data/lib/conceptql/operators/condition_type.rb +0 -71
  159. data/lib/conceptql/operators/cpt.rb +0 -25
  160. data/lib/conceptql/operators/drug_type_concept.rb +0 -21
  161. data/lib/conceptql/operators/from_seer_visits.rb +0 -23
  162. data/lib/conceptql/operators/hcpcs.rb +0 -25
  163. data/lib/conceptql/operators/icd10.rb +0 -28
  164. data/lib/conceptql/operators/icd9.rb +0 -28
  165. data/lib/conceptql/operators/icd9_procedure.rb +0 -25
  166. data/lib/conceptql/operators/intersect.rb +0 -34
  167. data/lib/conceptql/operators/loinc.rb +0 -25
  168. data/lib/conceptql/operators/medcode.rb +0 -28
  169. data/lib/conceptql/operators/medcode_procedure.rb +0 -27
  170. data/lib/conceptql/operators/ndc.rb +0 -29
  171. data/lib/conceptql/operators/observation_by_enttype.rb +0 -29
  172. data/lib/conceptql/operators/observation_period.rb +0 -30
  173. data/lib/conceptql/operators/overlapped_by.rb +0 -23
  174. data/lib/conceptql/operators/overlaps.rb +0 -19
  175. data/lib/conceptql/operators/place_of_service_code.rb +0 -24
  176. data/lib/conceptql/operators/procedure_occurrence.rb +0 -25
  177. data/lib/conceptql/operators/prodcode.rb +0 -29
  178. data/lib/conceptql/operators/rxnorm.rb +0 -24
  179. data/lib/conceptql/operators/snomed.rb +0 -24
  180. data/lib/conceptql/operators/snomed_condition.rb +0 -26
  181. data/lib/conceptql/operators/source_vocabulary_operator.rb +0 -58
  182. data/lib/conceptql/operators/standard_vocabulary_operator.rb +0 -45
  183. data/lib/conceptql/operators/started_by.rb +0 -22
  184. data/lib/conceptql/operators/to_seer_visits.rb +0 -24
  185. data/lib/conceptql/operators/visit.rb +0 -15
  186. data/lib/conceptql/operators/visit_occurrence.rb +0 -30
  187. data/lib/conceptql/tree.rb +0 -53
  188. data/lib/conceptql/utils/temp_table.rb +0 -72
  189. data/spec/conceptql/behaviors/dottable_spec.rb +0 -99
  190. data/spec/conceptql/converter_spec.rb +0 -51
  191. data/spec/conceptql/date_adjuster_spec.rb +0 -68
  192. data/spec/conceptql/operators/after_spec.rb +0 -16
  193. data/spec/conceptql/operators/before_spec.rb +0 -16
  194. data/spec/conceptql/operators/casting_operator_spec.rb +0 -68
  195. data/spec/conceptql/operators/complement_spec.rb +0 -15
  196. data/spec/conceptql/operators/concept_spec.rb +0 -40
  197. data/spec/conceptql/operators/condition_type_spec.rb +0 -128
  198. data/spec/conceptql/operators/contains_spec.rb +0 -19
  199. data/spec/conceptql/operators/cpt_spec.rb +0 -29
  200. data/spec/conceptql/operators/date_range_spec.rb +0 -33
  201. data/spec/conceptql/operators/death_spec.rb +0 -10
  202. data/spec/conceptql/operators/during_spec.rb +0 -30
  203. data/spec/conceptql/operators/except_spec.rb +0 -15
  204. data/spec/conceptql/operators/first_spec.rb +0 -35
  205. data/spec/conceptql/operators/from_spec.rb +0 -13
  206. data/spec/conceptql/operators/gender_spec.rb +0 -27
  207. data/spec/conceptql/operators/hcpcs_spec.rb +0 -29
  208. data/spec/conceptql/operators/icd10_spec.rb +0 -34
  209. data/spec/conceptql/operators/icd9_procedure_spec.rb +0 -29
  210. data/spec/conceptql/operators/icd9_spec.rb +0 -34
  211. data/spec/conceptql/operators/intersect_spec.rb +0 -28
  212. data/spec/conceptql/operators/last_spec.rb +0 -36
  213. data/spec/conceptql/operators/loinc_spec.rb +0 -29
  214. data/spec/conceptql/operators/medcode_procedure_spec.rb +0 -34
  215. data/spec/conceptql/operators/medcode_spec.rb +0 -34
  216. data/spec/conceptql/operators/observation_period_spec.rb +0 -10
  217. data/spec/conceptql/operators/occurrence_spec.rb +0 -87
  218. data/spec/conceptql/operators/overlapped_by_spec.rb +0 -32
  219. data/spec/conceptql/operators/overlaps_spec.rb +0 -21
  220. data/spec/conceptql/operators/person_filter_spec.rb +0 -15
  221. data/spec/conceptql/operators/person_spec.rb +0 -10
  222. data/spec/conceptql/operators/place_of_service_code_spec.rb +0 -24
  223. data/spec/conceptql/operators/procedure_occurrence_spec.rb +0 -10
  224. data/spec/conceptql/operators/prodcode_spec.rb +0 -35
  225. data/spec/conceptql/operators/query_double.rb +0 -20
  226. data/spec/conceptql/operators/query_double_spec.rb +0 -7
  227. data/spec/conceptql/operators/race_spec.rb +0 -21
  228. data/spec/conceptql/operators/rxnorm_spec.rb +0 -29
  229. data/spec/conceptql/operators/snomed_spec.rb +0 -29
  230. data/spec/conceptql/operators/source_vocabulary_operator_spec.rb +0 -35
  231. data/spec/conceptql/operators/standard_vocabulary_operator_spec.rb +0 -35
  232. data/spec/conceptql/operators/started_by_spec.rb +0 -22
  233. data/spec/conceptql/operators/temporal_operator_spec.rb +0 -51
  234. data/spec/conceptql/operators/time_window_spec.rb +0 -77
  235. data/spec/conceptql/operators/union_spec.rb +0 -21
  236. data/spec/conceptql/operators/visit_occurrence_spec.rb +0 -10
  237. data/spec/conceptql/query_spec.rb +0 -22
  238. data/spec/conceptql/tree_spec.rb +0 -50
  239. data/spec/doubles/stream_for_casting_double.rb +0 -9
  240. data/spec/doubles/stream_for_occurrence_double.rb +0 -25
  241. data/spec/doubles/stream_for_temporal_double.rb +0 -6
  242. data/spec/spec_helper.rb +0 -102
metadata CHANGED
@@ -1,332 +1,449 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: conceptql
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Duryea
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2015-12-11 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
- name: facets
13
+ name: activesupport
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '6'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '6'
26
+ - !ruby/object:Gem::Dependency
27
+ name: csv
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: json
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: logger
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: sequel
15
70
  requirement: !ruby/object:Gem::Requirement
16
71
  requirements:
17
72
  - - "~>"
18
73
  - !ruby/object:Gem::Version
19
- version: '3.0'
74
+ version: '5.66'
20
75
  type: :runtime
21
76
  prerelease: false
22
77
  version_requirements: !ruby/object:Gem::Requirement
23
78
  requirements:
24
79
  - - "~>"
25
80
  - !ruby/object:Gem::Version
26
- version: '3.0'
81
+ version: '5.66'
27
82
  - !ruby/object:Gem::Dependency
28
83
  name: sequelizer
29
84
  requirement: !ruby/object:Gem::Requirement
30
85
  requirements:
31
- - - "~>"
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: 0.3.0
89
+ - - "<"
32
90
  - !ruby/object:Gem::Version
33
- version: '0.0'
91
+ version: '0.5'
34
92
  type: :runtime
35
93
  prerelease: false
36
94
  version_requirements: !ruby/object:Gem::Requirement
37
95
  requirements:
38
- - - "~>"
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: 0.3.0
99
+ - - "<"
39
100
  - !ruby/object:Gem::Version
40
- version: '0.0'
101
+ version: '0.5'
41
102
  - !ruby/object:Gem::Dependency
42
103
  name: thor
43
104
  requirement: !ruby/object:Gem::Requirement
44
105
  requirements:
45
106
  - - "~>"
46
107
  - !ruby/object:Gem::Version
47
- version: '0.19'
108
+ version: '1.0'
48
109
  type: :runtime
49
110
  prerelease: false
50
111
  version_requirements: !ruby/object:Gem::Requirement
51
112
  requirements:
52
113
  - - "~>"
53
114
  - !ruby/object:Gem::Version
54
- version: '0.19'
115
+ version: '1.0'
116
+ - !ruby/object:Gem::Dependency
117
+ name: bundler
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: '2.0'
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ">="
128
+ - !ruby/object:Gem::Version
129
+ version: '2.0'
130
+ - !ruby/object:Gem::Dependency
131
+ name: climate_control
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ type: :development
138
+ prerelease: false
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
144
+ - !ruby/object:Gem::Dependency
145
+ name: minitest
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '6.0'
151
+ type: :development
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '6.0'
55
158
  - !ruby/object:Gem::Dependency
56
- name: pg
159
+ name: minitest-mock
57
160
  requirement: !ruby/object:Gem::Requirement
58
161
  requirements:
59
162
  - - "~>"
60
163
  - !ruby/object:Gem::Version
61
- version: '0.17'
62
- type: :runtime
164
+ version: '5.0'
165
+ type: :development
63
166
  prerelease: false
64
167
  version_requirements: !ruby/object:Gem::Requirement
65
168
  requirements:
66
169
  - - "~>"
67
170
  - !ruby/object:Gem::Version
68
- version: '0.17'
171
+ version: '5.0'
69
172
  - !ruby/object:Gem::Dependency
70
- name: ruby-graphviz
173
+ name: pry-byebug
71
174
  requirement: !ruby/object:Gem::Requirement
72
175
  requirements:
73
176
  - - "~>"
74
177
  - !ruby/object:Gem::Version
75
- version: '1.2'
76
- type: :runtime
178
+ version: '3'
179
+ type: :development
77
180
  prerelease: false
78
181
  version_requirements: !ruby/object:Gem::Requirement
79
182
  requirements:
80
183
  - - "~>"
81
184
  - !ruby/object:Gem::Version
82
- version: '1.2'
185
+ version: '3'
83
186
  - !ruby/object:Gem::Dependency
84
- name: csv2xlsx
187
+ name: rake
85
188
  requirement: !ruby/object:Gem::Requirement
86
189
  requirements:
87
190
  - - "~>"
88
191
  - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :runtime
192
+ version: '13.0'
193
+ type: :development
91
194
  prerelease: false
92
195
  version_requirements: !ruby/object:Gem::Requirement
93
196
  requirements:
94
197
  - - "~>"
95
198
  - !ruby/object:Gem::Version
96
- version: '0'
199
+ version: '13.0'
97
200
  - !ruby/object:Gem::Dependency
98
- name: bundler
201
+ name: rubocop
99
202
  requirement: !ruby/object:Gem::Requirement
100
203
  requirements:
101
204
  - - "~>"
102
205
  - !ruby/object:Gem::Version
103
- version: '1.5'
206
+ version: '1.0'
104
207
  type: :development
105
208
  prerelease: false
106
209
  version_requirements: !ruby/object:Gem::Requirement
107
210
  requirements:
108
211
  - - "~>"
109
212
  - !ruby/object:Gem::Version
110
- version: '1.5'
213
+ version: '1.0'
111
214
  - !ruby/object:Gem::Dependency
112
- name: rake
215
+ name: rubocop-minitest
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - "~>"
219
+ - !ruby/object:Gem::Version
220
+ version: '0.25'
221
+ type: :development
222
+ prerelease: false
223
+ version_requirements: !ruby/object:Gem::Requirement
224
+ requirements:
225
+ - - "~>"
226
+ - !ruby/object:Gem::Version
227
+ version: '0.25'
228
+ - !ruby/object:Gem::Dependency
229
+ name: rubocop-rails-omakase
230
+ requirement: !ruby/object:Gem::Requirement
231
+ requirements:
232
+ - - "~>"
233
+ - !ruby/object:Gem::Version
234
+ version: '1.1'
235
+ type: :development
236
+ prerelease: false
237
+ version_requirements: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - "~>"
240
+ - !ruby/object:Gem::Version
241
+ version: '1.1'
242
+ - !ruby/object:Gem::Dependency
243
+ name: rubocop-rake
113
244
  requirement: !ruby/object:Gem::Requirement
114
245
  requirements:
115
246
  - - "~>"
116
247
  - !ruby/object:Gem::Version
117
- version: '10.3'
248
+ version: '0.7'
118
249
  type: :development
119
250
  prerelease: false
120
251
  version_requirements: !ruby/object:Gem::Requirement
121
252
  requirements:
122
253
  - - "~>"
123
254
  - !ruby/object:Gem::Version
124
- version: '10.3'
255
+ version: '0.7'
125
256
  - !ruby/object:Gem::Dependency
126
- name: rspec
257
+ name: rubocop-sequel
127
258
  requirement: !ruby/object:Gem::Requirement
128
259
  requirements:
129
260
  - - "~>"
130
261
  - !ruby/object:Gem::Version
131
- version: '3.2'
262
+ version: '0.4'
132
263
  type: :development
133
264
  prerelease: false
134
265
  version_requirements: !ruby/object:Gem::Requirement
135
266
  requirements:
136
267
  - - "~>"
137
268
  - !ruby/object:Gem::Version
138
- version: '3.2'
269
+ version: '0.4'
139
270
  - !ruby/object:Gem::Dependency
140
- name: guard-rspec
271
+ name: simplecov
141
272
  requirement: !ruby/object:Gem::Requirement
142
273
  requirements:
143
274
  - - "~>"
144
275
  - !ruby/object:Gem::Version
145
- version: '4.5'
276
+ version: '1.0'
146
277
  type: :development
147
278
  prerelease: false
148
279
  version_requirements: !ruby/object:Gem::Requirement
149
280
  requirements:
150
281
  - - "~>"
151
282
  - !ruby/object:Gem::Version
152
- version: '4.5'
283
+ version: '1.0'
153
284
  - !ruby/object:Gem::Dependency
154
- name: byebug
285
+ name: sqlite3
155
286
  requirement: !ruby/object:Gem::Requirement
156
287
  requirements:
157
288
  - - "~>"
158
289
  - !ruby/object:Gem::Version
159
- version: '4.0'
290
+ version: '2.9'
160
291
  type: :development
161
292
  prerelease: false
162
293
  version_requirements: !ruby/object:Gem::Requirement
163
294
  requirements:
164
295
  - - "~>"
165
296
  - !ruby/object:Gem::Version
166
- version: '4.0'
297
+ version: '2.9'
167
298
  description: ConceptQL is a query language for specifying queries to be run OMOP CDMv4
168
299
  structured data
169
300
  email:
170
301
  - aguynamedryan@gmail.com
171
302
  executables:
172
303
  - conceptql
304
+ - conceptql_utils
173
305
  extensions: []
174
306
  extra_rdoc_files: []
175
307
  files:
176
- - ".gitignore"
177
308
  - CHANGELOG.md
178
- - Gemfile
179
- - Guardfile
180
- - LICENSE.txt
309
+ - LICENSE
181
310
  - README.md
182
- - Rakefile
183
311
  - bin/conceptql
184
- - conceptql.gemspec
185
- - doc/ConceptQL Specification (alpha).pdf
186
- - doc/diagram_0.png
187
- - doc/implementation_notes.md
188
- - doc/spec.md
312
+ - bin/conceptql_utils
313
+ - config/multiple_vocabularies.csv
314
+ - config/provenance.yml
315
+ - config/race.yml
316
+ - config/vocabularies.csv
189
317
  - lib/conceptql.rb
190
- - lib/conceptql/behaviors/debuggable.rb
191
- - lib/conceptql/behaviors/dottable.rb
318
+ - lib/conceptql/behaviors/code_lister.rb
319
+ - lib/conceptql/behaviors/drugish.rb
320
+ - lib/conceptql/behaviors/labish.rb
192
321
  - lib/conceptql/behaviors/metadatable.rb
193
- - lib/conceptql/behaviors/preppable.rb
322
+ - lib/conceptql/behaviors/provenanceable.rb
323
+ - lib/conceptql/behaviors/single_event.rb
324
+ - lib/conceptql/behaviors/timeless.rb
325
+ - lib/conceptql/behaviors/utilizable.rb
326
+ - lib/conceptql/behaviors/windowable.rb
194
327
  - lib/conceptql/cli.rb
195
- - lib/conceptql/converter.rb
328
+ - lib/conceptql/columnizer.rb
329
+ - lib/conceptql/data_model.rb
330
+ - lib/conceptql/data_model/base.rb
331
+ - lib/conceptql/data_model/gdm.rb
332
+ - lib/conceptql/data_model/gdm_wide.rb
333
+ - lib/conceptql/data_model/omopv4_plus.rb
334
+ - lib/conceptql/database.rb
196
335
  - lib/conceptql/date_adjuster.rb
197
- - lib/conceptql/debugger.rb
198
- - lib/conceptql/fake_grapher.rb
199
- - lib/conceptql/graph.rb
200
- - lib/conceptql/graph_nodifier.rb
201
- - lib/conceptql/logger.rb
336
+ - lib/conceptql/diagram.rb
337
+ - lib/conceptql/lexicon.rb
338
+ - lib/conceptql/lexicon/lexicon_gdm.rb
339
+ - lib/conceptql/lexicon/lexicon_no_db.rb
340
+ - lib/conceptql/lexicon/lexicon_ohdsi.rb
341
+ - lib/conceptql/lexicon/lexicon_strategy.rb
202
342
  - lib/conceptql/nodifier.rb
203
343
  - lib/conceptql/operators/after.rb
204
344
  - lib/conceptql/operators/any_overlap.rb
205
345
  - lib/conceptql/operators/before.rb
206
346
  - lib/conceptql/operators/binary_operator_operator.rb
207
347
  - lib/conceptql/operators/casting_operator.rb
208
- - lib/conceptql/operators/complement.rb
209
- - lib/conceptql/operators/concept.rb
210
- - lib/conceptql/operators/condition_type.rb
348
+ - lib/conceptql/operators/co_reported.rb
349
+ - lib/conceptql/operators/concurrent_within.rb
211
350
  - lib/conceptql/operators/contains.rb
212
351
  - lib/conceptql/operators/count.rb
213
- - lib/conceptql/operators/cpt.rb
214
352
  - lib/conceptql/operators/date_range.rb
215
353
  - lib/conceptql/operators/death.rb
216
- - lib/conceptql/operators/drug_type_concept.rb
354
+ - lib/conceptql/operators/dedup.rb
217
355
  - lib/conceptql/operators/during.rb
356
+ - lib/conceptql/operators/episode.rb
218
357
  - lib/conceptql/operators/equal.rb
358
+ - lib/conceptql/operators/ethnicity.rb
219
359
  - lib/conceptql/operators/except.rb
220
360
  - lib/conceptql/operators/filter.rb
221
361
  - lib/conceptql/operators/first.rb
222
362
  - lib/conceptql/operators/from.rb
223
- - lib/conceptql/operators/from_seer_visits.rb
224
363
  - lib/conceptql/operators/gender.rb
225
- - lib/conceptql/operators/hcpcs.rb
226
- - lib/conceptql/operators/icd10.rb
227
- - lib/conceptql/operators/icd9.rb
228
- - lib/conceptql/operators/icd9_procedure.rb
229
- - lib/conceptql/operators/intersect.rb
364
+ - lib/conceptql/operators/hospice.rb
365
+ - lib/conceptql/operators/hospitalization.rb
366
+ - lib/conceptql/operators/information_periods.rb
367
+ - lib/conceptql/operators/invalid.rb
230
368
  - lib/conceptql/operators/last.rb
231
- - lib/conceptql/operators/loinc.rb
232
- - lib/conceptql/operators/medcode.rb
233
- - lib/conceptql/operators/medcode_procedure.rb
234
- - lib/conceptql/operators/ndc.rb
369
+ - lib/conceptql/operators/match.rb
370
+ - lib/conceptql/operators/multiple_vocabularies.rb
235
371
  - lib/conceptql/operators/numeric.rb
236
- - lib/conceptql/operators/observation_by_enttype.rb
237
- - lib/conceptql/operators/observation_period.rb
372
+ - lib/conceptql/operators/numeric_filter.rb
238
373
  - lib/conceptql/operators/occurrence.rb
239
374
  - lib/conceptql/operators/one_in_two_out.rb
240
375
  - lib/conceptql/operators/operator.rb
241
- - lib/conceptql/operators/overlapped_by.rb
242
- - lib/conceptql/operators/overlaps.rb
243
376
  - lib/conceptql/operators/pass_thru.rb
244
377
  - lib/conceptql/operators/person.rb
245
378
  - lib/conceptql/operators/person_filter.rb
246
- - lib/conceptql/operators/place_of_service_code.rb
247
- - lib/conceptql/operators/procedure_occurrence.rb
248
- - lib/conceptql/operators/prodcode.rb
379
+ - lib/conceptql/operators/place_of_service_filter.rb
380
+ - lib/conceptql/operators/provenance.rb
381
+ - lib/conceptql/operators/provider_filter.rb
249
382
  - lib/conceptql/operators/race.rb
383
+ - lib/conceptql/operators/read.rb
250
384
  - lib/conceptql/operators/recall.rb
251
- - lib/conceptql/operators/rxnorm.rb
252
- - lib/conceptql/operators/snomed.rb
253
- - lib/conceptql/operators/snomed_condition.rb
254
- - lib/conceptql/operators/source_vocabulary_operator.rb
255
- - lib/conceptql/operators/standard_vocabulary_operator.rb
256
- - lib/conceptql/operators/started_by.rb
385
+ - lib/conceptql/operators/snf.rb
257
386
  - lib/conceptql/operators/sum.rb
258
387
  - lib/conceptql/operators/temporal_operator.rb
259
388
  - lib/conceptql/operators/time_window.rb
260
- - lib/conceptql/operators/to_seer_visits.rb
389
+ - lib/conceptql/operators/trim_date.rb
261
390
  - lib/conceptql/operators/trim_date_end.rb
262
391
  - lib/conceptql/operators/trim_date_start.rb
263
392
  - lib/conceptql/operators/union.rb
264
- - lib/conceptql/operators/visit.rb
265
- - lib/conceptql/operators/visit_occurrence.rb
393
+ - lib/conceptql/operators/vocabulary.rb
394
+ - lib/conceptql/paths.rb
266
395
  - lib/conceptql/query.rb
396
+ - lib/conceptql/query_modifiers/gdm/admission_date_query_modifier.rb
397
+ - lib/conceptql/query_modifiers/gdm/drug_query_modifier.rb
398
+ - lib/conceptql/query_modifiers/gdm/lab_query_modifier.rb
399
+ - lib/conceptql/query_modifiers/gdm/pos_query_modifier.rb
400
+ - lib/conceptql/query_modifiers/gdm/provenance_query_modifier.rb
401
+ - lib/conceptql/query_modifiers/gdm/provider_query_modifier.rb
402
+ - lib/conceptql/query_modifiers/gdm_wide/admission_date_query_modifier.rb
403
+ - lib/conceptql/query_modifiers/gdm_wide/drug_query_modifier.rb
404
+ - lib/conceptql/query_modifiers/gdm_wide/lab_query_modifier.rb
405
+ - lib/conceptql/query_modifiers/gdm_wide/pos_query_modifier.rb
406
+ - lib/conceptql/query_modifiers/gdm_wide/provenance_query_modifier.rb
407
+ - lib/conceptql/query_modifiers/omopv4_plus/admission_date_query_modifier.rb
408
+ - lib/conceptql/query_modifiers/omopv4_plus/drug_query_modifier.rb
409
+ - lib/conceptql/query_modifiers/omopv4_plus/pos_query_modifier.rb
410
+ - lib/conceptql/query_modifiers/omopv4_plus/provenance_query_modifier.rb
411
+ - lib/conceptql/query_modifiers/omopv4_plus/provider_query_modifier.rb
412
+ - lib/conceptql/query_modifiers/query_modifier.rb
413
+ - lib/conceptql/rdbms.rb
414
+ - lib/conceptql/rdbms/duckdb.rb
415
+ - lib/conceptql/rdbms/generic.rb
416
+ - lib/conceptql/rdbms/postgres.rb
417
+ - lib/conceptql/rdbms/spark.rb
267
418
  - lib/conceptql/scope.rb
268
- - lib/conceptql/tree.rb
269
- - lib/conceptql/utils/temp_table.rb
419
+ - lib/conceptql/sql_formatters.rb
420
+ - lib/conceptql/sql_formatters/formatter.rb
421
+ - lib/conceptql/utils.rb
422
+ - lib/conceptql/utils_cli.rb
270
423
  - lib/conceptql/version.rb
271
- - spec/conceptql/behaviors/dottable_spec.rb
272
- - spec/conceptql/converter_spec.rb
273
- - spec/conceptql/date_adjuster_spec.rb
274
- - spec/conceptql/operators/after_spec.rb
275
- - spec/conceptql/operators/before_spec.rb
276
- - spec/conceptql/operators/casting_operator_spec.rb
277
- - spec/conceptql/operators/complement_spec.rb
278
- - spec/conceptql/operators/concept_spec.rb
279
- - spec/conceptql/operators/condition_type_spec.rb
280
- - spec/conceptql/operators/contains_spec.rb
281
- - spec/conceptql/operators/cpt_spec.rb
282
- - spec/conceptql/operators/date_range_spec.rb
283
- - spec/conceptql/operators/death_spec.rb
284
- - spec/conceptql/operators/during_spec.rb
285
- - spec/conceptql/operators/except_spec.rb
286
- - spec/conceptql/operators/first_spec.rb
287
- - spec/conceptql/operators/from_spec.rb
288
- - spec/conceptql/operators/gender_spec.rb
289
- - spec/conceptql/operators/hcpcs_spec.rb
290
- - spec/conceptql/operators/icd10_spec.rb
291
- - spec/conceptql/operators/icd9_procedure_spec.rb
292
- - spec/conceptql/operators/icd9_spec.rb
293
- - spec/conceptql/operators/intersect_spec.rb
294
- - spec/conceptql/operators/last_spec.rb
295
- - spec/conceptql/operators/loinc_spec.rb
296
- - spec/conceptql/operators/medcode_procedure_spec.rb
297
- - spec/conceptql/operators/medcode_spec.rb
298
- - spec/conceptql/operators/observation_period_spec.rb
299
- - spec/conceptql/operators/occurrence_spec.rb
300
- - spec/conceptql/operators/overlapped_by_spec.rb
301
- - spec/conceptql/operators/overlaps_spec.rb
302
- - spec/conceptql/operators/person_filter_spec.rb
303
- - spec/conceptql/operators/person_spec.rb
304
- - spec/conceptql/operators/place_of_service_code_spec.rb
305
- - spec/conceptql/operators/procedure_occurrence_spec.rb
306
- - spec/conceptql/operators/prodcode_spec.rb
307
- - spec/conceptql/operators/query_double.rb
308
- - spec/conceptql/operators/query_double_spec.rb
309
- - spec/conceptql/operators/race_spec.rb
310
- - spec/conceptql/operators/rxnorm_spec.rb
311
- - spec/conceptql/operators/snomed_spec.rb
312
- - spec/conceptql/operators/source_vocabulary_operator_spec.rb
313
- - spec/conceptql/operators/standard_vocabulary_operator_spec.rb
314
- - spec/conceptql/operators/started_by_spec.rb
315
- - spec/conceptql/operators/temporal_operator_spec.rb
316
- - spec/conceptql/operators/time_window_spec.rb
317
- - spec/conceptql/operators/union_spec.rb
318
- - spec/conceptql/operators/visit_occurrence_spec.rb
319
- - spec/conceptql/query_spec.rb
320
- - spec/conceptql/tree_spec.rb
321
- - spec/doubles/stream_for_casting_double.rb
322
- - spec/doubles/stream_for_occurrence_double.rb
323
- - spec/doubles/stream_for_temporal_double.rb
324
- - spec/spec_helper.rb
424
+ - lib/conceptql/visitors/metadata_extractor.rb
425
+ - lib/conceptql/vocabularies/behaviors/costish.rb
426
+ - lib/conceptql/vocabularies/behaviors/gdmish.rb
427
+ - lib/conceptql/vocabularies/behaviors/omopish.rb
428
+ - lib/conceptql/vocabularies/dynamic_vocabularies.rb
429
+ - lib/conceptql/vocabularies/entry.rb
430
+ - lib/conceptql/vocabularies/vocabulary_class_factory.rb
431
+ - lib/conceptql/window.rb
432
+ - lib/conceptql/window/base.rb
433
+ - lib/conceptql/window/date_range.rb
434
+ - lib/conceptql/window/table.rb
435
+ - lib/sequel/extensions/pg_ctas_explain.rb
436
+ - lib/sequel/extensions/pg_vacuum_table.rb
437
+ - schemas/gdm.yml
438
+ - schemas/gdm_wide.yml
439
+ - schemas/ohdsi_vocabs.yml
440
+ - schemas/omopv4_plus.yml
441
+ - schemas/omopv4_plus_more_ignorables.tsv
325
442
  homepage: https://github.com/outcomesinsights/conceptql
326
443
  licenses:
327
444
  - MIT
328
- metadata: {}
329
- post_install_message:
445
+ metadata:
446
+ rubygems_mfa_required: 'true'
330
447
  rdoc_options: []
331
448
  require_paths:
332
449
  - lib
@@ -334,71 +451,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
334
451
  requirements:
335
452
  - - ">="
336
453
  - !ruby/object:Gem::Version
337
- version: '0'
454
+ version: '3.3'
338
455
  required_rubygems_version: !ruby/object:Gem::Requirement
339
456
  requirements:
340
457
  - - ">="
341
458
  - !ruby/object:Gem::Version
342
459
  version: '0'
343
460
  requirements: []
344
- rubyforge_project:
345
- rubygems_version: 2.4.5.1
346
- signing_key:
461
+ rubygems_version: 4.0.20
347
462
  specification_version: 4
348
463
  summary: Generate OMOP CDMv4-compatible queries from a ConceptQL file
349
- test_files:
350
- - spec/conceptql/behaviors/dottable_spec.rb
351
- - spec/conceptql/converter_spec.rb
352
- - spec/conceptql/date_adjuster_spec.rb
353
- - spec/conceptql/operators/after_spec.rb
354
- - spec/conceptql/operators/before_spec.rb
355
- - spec/conceptql/operators/casting_operator_spec.rb
356
- - spec/conceptql/operators/complement_spec.rb
357
- - spec/conceptql/operators/concept_spec.rb
358
- - spec/conceptql/operators/condition_type_spec.rb
359
- - spec/conceptql/operators/contains_spec.rb
360
- - spec/conceptql/operators/cpt_spec.rb
361
- - spec/conceptql/operators/date_range_spec.rb
362
- - spec/conceptql/operators/death_spec.rb
363
- - spec/conceptql/operators/during_spec.rb
364
- - spec/conceptql/operators/except_spec.rb
365
- - spec/conceptql/operators/first_spec.rb
366
- - spec/conceptql/operators/from_spec.rb
367
- - spec/conceptql/operators/gender_spec.rb
368
- - spec/conceptql/operators/hcpcs_spec.rb
369
- - spec/conceptql/operators/icd10_spec.rb
370
- - spec/conceptql/operators/icd9_procedure_spec.rb
371
- - spec/conceptql/operators/icd9_spec.rb
372
- - spec/conceptql/operators/intersect_spec.rb
373
- - spec/conceptql/operators/last_spec.rb
374
- - spec/conceptql/operators/loinc_spec.rb
375
- - spec/conceptql/operators/medcode_procedure_spec.rb
376
- - spec/conceptql/operators/medcode_spec.rb
377
- - spec/conceptql/operators/observation_period_spec.rb
378
- - spec/conceptql/operators/occurrence_spec.rb
379
- - spec/conceptql/operators/overlapped_by_spec.rb
380
- - spec/conceptql/operators/overlaps_spec.rb
381
- - spec/conceptql/operators/person_filter_spec.rb
382
- - spec/conceptql/operators/person_spec.rb
383
- - spec/conceptql/operators/place_of_service_code_spec.rb
384
- - spec/conceptql/operators/procedure_occurrence_spec.rb
385
- - spec/conceptql/operators/prodcode_spec.rb
386
- - spec/conceptql/operators/query_double.rb
387
- - spec/conceptql/operators/query_double_spec.rb
388
- - spec/conceptql/operators/race_spec.rb
389
- - spec/conceptql/operators/rxnorm_spec.rb
390
- - spec/conceptql/operators/snomed_spec.rb
391
- - spec/conceptql/operators/source_vocabulary_operator_spec.rb
392
- - spec/conceptql/operators/standard_vocabulary_operator_spec.rb
393
- - spec/conceptql/operators/started_by_spec.rb
394
- - spec/conceptql/operators/temporal_operator_spec.rb
395
- - spec/conceptql/operators/time_window_spec.rb
396
- - spec/conceptql/operators/union_spec.rb
397
- - spec/conceptql/operators/visit_occurrence_spec.rb
398
- - spec/conceptql/query_spec.rb
399
- - spec/conceptql/tree_spec.rb
400
- - spec/doubles/stream_for_casting_double.rb
401
- - spec/doubles/stream_for_occurrence_double.rb
402
- - spec/doubles/stream_for_temporal_double.rb
403
- - spec/spec_helper.rb
404
- has_rdoc:
464
+ test_files: []