bonnie_bundler 2.0.3 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +6 -6
  4. data/bonnie-bundler.gemspec +1 -1
  5. data/lib/bonnie_bundler.rb +1 -0
  6. data/lib/measures/loading/cql_loader.rb +25 -12
  7. data/lib/measures/loading/exceptions.rb +0 -2
  8. data/lib/measures/loading/value_set_loader.rb +77 -97
  9. data/lib/util/vsac_api.rb +274 -0
  10. data/test/fixtures/PVC2_v5_4_Unused_Support_Libraries.zip +0 -0
  11. data/test/fixtures/vcr_cassettes/valid_vsac_response_pvc_unused_libraries.yml +4286 -0
  12. data/test/fixtures/vcr_cassettes/vs_loading_500_response.yml +633 -0
  13. data/test/fixtures/vcr_cassettes/vs_loading_empty_concept_list.yml +174 -0
  14. data/test/fixtures/vcr_cassettes/vs_loading_meausre_defined_no_backup_profile.yml +1237 -0
  15. data/test/fixtures/vcr_cassettes/vs_loading_release.yml +17035 -0
  16. data/test/fixtures/vcr_cassettes/vsac_auth_bad_credentials.yml +57 -0
  17. data/test/fixtures/vcr_cassettes/vsac_auth_bad_ticket.yml +57 -0
  18. data/test/fixtures/vcr_cassettes/vsac_auth_good_credentials.yml +57 -0
  19. data/test/fixtures/vcr_cassettes/vsac_auth_good_credentials_and_simple_call.yml +177 -0
  20. data/test/fixtures/vcr_cassettes/vsac_util_get_profiles.yml +74 -0
  21. data/test/fixtures/vcr_cassettes/vsac_util_get_program_details_CMS_Hybrid.yml +57 -0
  22. data/test/fixtures/vcr_cassettes/vsac_util_get_program_details_CMS_eCQM.yml +64 -0
  23. data/test/fixtures/vcr_cassettes/vsac_util_get_program_details_HL7_C-CDA.yml +58 -0
  24. data/test/fixtures/vcr_cassettes/vsac_util_get_program_details_invalid.yml +53 -0
  25. data/test/fixtures/vcr_cassettes/vsac_util_get_programs.yml +64 -0
  26. data/test/fixtures/vcr_cassettes/vsac_vs_include_draft_no_profile.yml +57 -0
  27. data/test/fixtures/vcr_cassettes/vsac_vs_include_draft_with_profile.yml +177 -0
  28. data/test/fixtures/vcr_cassettes/vsac_vs_no_options.yml +177 -0
  29. data/test/fixtures/vcr_cassettes/vsac_vs_not_found.yml +164 -0
  30. data/test/fixtures/vcr_cassettes/vsac_vs_release.yml +4802 -0
  31. data/test/fixtures/vcr_cassettes/vsac_vs_version.yml +370 -0
  32. data/test/test_helper.rb +9 -4
  33. data/test/unit/cql_loader_test.rb +42 -15
  34. data/test/unit/load_mat_export_test.rb +10 -13
  35. data/test/unit/measure_complexity_test.rb +1 -1
  36. data/test/unit/measure_diff_test.rb +4 -4
  37. data/test/unit/storing_mat_export_package_test.rb +1 -1
  38. data/test/unit/value_set_loading_test.rb +58 -16
  39. data/test/unit/vsac_api_auth_test.rb +129 -0
  40. data/test/unit/vsac_api_test.rb +77 -0
  41. data/test/unit/vsac_api_util_test.rb +139 -0
  42. metadata +29 -3
@@ -0,0 +1,370 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://vsac.nlm.nih.gov/vsac/ws/Ticket
6
+ body:
7
+ encoding: UTF-8
8
+ string: username=<VSAC_USERNAME>&password=<VSAC_PASSWORD>
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ Content-Length:
15
+ - '38'
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ User-Agent:
19
+ - Ruby
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: ''
24
+ headers:
25
+ Cache-Control:
26
+ - no-cache, no-store, max-age=0, must-revalidate
27
+ Pragma:
28
+ - no-cache
29
+ Expires:
30
+ - '0'
31
+ X-Xss-Protection:
32
+ - 1; mode=block
33
+ X-Frame-Options:
34
+ - SAMEORIGIN
35
+ X-Content-Type-Options:
36
+ - nosniff
37
+ Content-Type:
38
+ - text/plain;charset=utf-8
39
+ Content-Length:
40
+ - '63'
41
+ Date:
42
+ - Wed, 28 Mar 2018 21:40:44 GMT
43
+ Set-Cookie:
44
+ - BIGipServervsacweb_p=!O5i4zjxTf4et8x7NtNHn4GsLooFbU1luzslBh0YoXdyXF/2NHPHd1IpXgBNc/tnwQwXRyiNyF1UTi/o=;
45
+ expires=Wed, 28-Mar-2018 23:40:44 GMT; path=/; Httponly; Secure
46
+ X-Vip-Info:
47
+ - 130.14.16.40:443
48
+ X-Pool-Info:
49
+ - "/Common/vsacweb_p 10.1.5.111 8080"
50
+ Strict-Transport-Security:
51
+ - max-age=31536000; includeSubDomains; preload
52
+ body:
53
+ encoding: UTF-8
54
+ string: TGT-2801-fcp14YQmbDergBoBGXvI7aOotLnco5bec4xAukzeZ4derfy7JI-cas
55
+ http_version:
56
+ recorded_at: Wed, 28 Mar 2018 21:40:44 GMT
57
+ - request:
58
+ method: post
59
+ uri: https://vsac.nlm.nih.gov/vsac/ws/Ticket/TGT-2801-fcp14YQmbDergBoBGXvI7aOotLnco5bec4xAukzeZ4derfy7JI-cas
60
+ body:
61
+ encoding: UTF-8
62
+ string: service=http%3A%2F%2Fumlsks.nlm.nih.gov
63
+ headers:
64
+ Accept:
65
+ - "*/*; q=0.5, application/xml"
66
+ Accept-Encoding:
67
+ - gzip, deflate
68
+ Content-Length:
69
+ - '39'
70
+ Content-Type:
71
+ - application/x-www-form-urlencoded
72
+ User-Agent:
73
+ - Ruby
74
+ response:
75
+ status:
76
+ code: 200
77
+ message: ''
78
+ headers:
79
+ Cache-Control:
80
+ - no-cache, no-store, max-age=0, must-revalidate
81
+ Pragma:
82
+ - no-cache
83
+ Expires:
84
+ - '0'
85
+ X-Xss-Protection:
86
+ - 1; mode=block
87
+ X-Frame-Options:
88
+ - SAMEORIGIN
89
+ X-Content-Type-Options:
90
+ - nosniff
91
+ Content-Type:
92
+ - text/plain;charset=utf-8
93
+ Content-Length:
94
+ - '33'
95
+ Date:
96
+ - Wed, 28 Mar 2018 21:40:45 GMT
97
+ Set-Cookie:
98
+ - BIGipServervsacweb_p=!tgJfqNiT6O9nZ2Tm9OGvBt4MxRMcjl0/NtjP8nuG+5WSdC/RR73suKkiehuoXsddCZd3827dIJ2DWPs=;
99
+ expires=Wed, 28-Mar-2018 23:40:45 GMT; path=/; Httponly; Secure
100
+ X-Vip-Info:
101
+ - 130.14.16.40:443
102
+ X-Pool-Info:
103
+ - "/Common/vsacweb_p 10.1.5.114 8080"
104
+ Strict-Transport-Security:
105
+ - max-age=31536000; includeSubDomains; preload
106
+ body:
107
+ encoding: UTF-8
108
+ string: ST-49274-kYZUppapciXRYIJjDk9U-cas
109
+ http_version:
110
+ recorded_at: Wed, 28 Mar 2018 21:40:45 GMT
111
+ - request:
112
+ method: get
113
+ uri: https://vsac.nlm.nih.gov/vsac/svs/RetrieveMultipleValueSets?id=2.16.840.1.113883.3.600.1.1834&ticket=ST-49274-kYZUppapciXRYIJjDk9U-cas&version=MU2%20EP%20Update%202014-07-01
114
+ body:
115
+ encoding: US-ASCII
116
+ string: ''
117
+ headers:
118
+ Accept:
119
+ - "*/*; q=0.5, application/xml"
120
+ Accept-Encoding:
121
+ - gzip, deflate
122
+ User-Agent:
123
+ - Ruby
124
+ response:
125
+ status:
126
+ code: 200
127
+ message: ''
128
+ headers:
129
+ Cache-Control:
130
+ - no-cache, no-store, max-age=0, must-revalidate
131
+ Pragma:
132
+ - no-cache
133
+ Expires:
134
+ - '0'
135
+ X-Xss-Protection:
136
+ - 1; mode=block
137
+ X-Frame-Options:
138
+ - SAMEORIGIN
139
+ X-Content-Type-Options:
140
+ - nosniff
141
+ Set-Cookie:
142
+ - BIGipServervsacweb_p=!r/ICgV6qlYifa9rNtNHn4GsLooFbU/vCJI79aINIa4OssWU2rp98WWEy5OVjYuIR0Cc6NfRaxSAVFT4=;
143
+ expires=Wed, 28-Mar-2018 23:40:46 GMT; path=/; Httponly; Secure
144
+ - JSESSIONID=CCECB572E656B17BFD573BF47DE4CB44;path=/vsac;HttpOnly;Secure
145
+ Content-Type:
146
+ - text/xml;charset=utf-8
147
+ Content-Length:
148
+ - '52900'
149
+ Date:
150
+ - Wed, 28 Mar 2018 21:40:46 GMT
151
+ X-Vip-Info:
152
+ - 130.14.16.40:443
153
+ X-Pool-Info:
154
+ - "/Common/vsacweb_p 10.1.5.111 8080"
155
+ Strict-Transport-Security:
156
+ - max-age=31536000; includeSubDomains; preload
157
+ body:
158
+ encoding: UTF-8
159
+ string: |
160
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
161
+ <ns0:RetrieveMultipleValueSetsResponse xmlns:ns0="urn:ihe:iti:svs:2008" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
162
+ <ns0:DescribedValueSet ID="2.16.840.1.113883.3.600.1.1834" displayName="Medications Encounter Code Set" version="MU2 EP Update 2014-07-01">
163
+ <ns0:ConceptList>
164
+ <ns0:Concept code="10197000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Psychiatric interview and evaluation (procedure)"/>
165
+ <ns0:Concept code="108220007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation AND/OR management - new patient (procedure)"/>
166
+ <ns0:Concept code="108221006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation AND/OR management - established patient (procedure)"/>
167
+ <ns0:Concept code="108224003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Preventive patient evaluation (procedure)"/>
168
+ <ns0:Concept code="108311000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Psychiatric procedure, interview AND/OR consultation (procedure)"/>
169
+ <ns0:Concept code="13607009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Manual examination of breast (procedure)"/>
170
+ <ns0:Concept code="14736009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="History and physical examination with evaluation and management of patient (procedure)"/>
171
+ <ns0:Concept code="165171009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Initial psychiatric evaluation (procedure)"/>
172
+ <ns0:Concept code="18091003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Electronystagmography with vertical electrodes (procedure)"/>
173
+ <ns0:Concept code="18512000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Individual psychotherapy (regime/therapy)"/>
174
+ <ns0:Concept code="185349003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Encounter for &quot;check-up&quot; (procedure)"/>
175
+ <ns0:Concept code="185463005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Visit out of hours (procedure)"/>
176
+ <ns0:Concept code="185465003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Weekend visit (procedure)"/>
177
+ <ns0:Concept code="209099002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="History and physical examination with management of domiciliary or rest home patient (procedure)"/>
178
+ <ns0:Concept code="210098006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Domiciliary or rest home patient evaluation and management (procedure)"/>
179
+ <ns0:Concept code="225967005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Self-care patient education (procedure)"/>
180
+ <ns0:Concept code="252592009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Speech audiometry (procedure)"/>
181
+ <ns0:Concept code="252624005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evoked oto-acoustic emission measurement (procedure)"/>
182
+ <ns0:Concept code="270427003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Patient-initiated encounter (procedure)"/>
183
+ <ns0:Concept code="270430005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Provider-initiated encounter (procedure)"/>
184
+ <ns0:Concept code="273643004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Neurobehavioral cognitive status examination (assessment scale)"/>
185
+ <ns0:Concept code="274803000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Examination of tympanic membrane (procedure)"/>
186
+ <ns0:Concept code="277404009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="High frequency tympanometry (procedure)"/>
187
+ <ns0:Concept code="278465006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Spontaneous nystagmus (disorder)"/>
188
+ <ns0:Concept code="284015009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Auditory evoked potentials monitoring (regime/therapy)"/>
189
+ <ns0:Concept code="30346009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation and management of established outpatient in office or other outpatient facility (procedure)"/>
190
+ <ns0:Concept code="308335008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Patient encounter procedure (procedure)"/>
191
+ <ns0:Concept code="32537008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Psychiatric diagnostic interview, examination, history, mental status and disposition (procedure)"/>
192
+ <ns0:Concept code="34651001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Optokinetic nystagmus test, bidirectional, with recording (procedure)"/>
193
+ <ns0:Concept code="35025007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Manual pelvic examination (procedure)"/>
194
+ <ns0:Concept code="36228007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Ophthalmic examination and evaluation (procedure)"/>
195
+ <ns0:Concept code="370803007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation of psychosocial impact on plan of care (procedure)"/>
196
+ <ns0:Concept code="37894004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation and management of new outpatient in office or other outpatient facility (procedure)"/>
197
+ <ns0:Concept code="385973000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Dialysis care management (procedure)"/>
198
+ <ns0:Concept code="386372009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Nutrition management (regime/therapy)"/>
199
+ <ns0:Concept code="390906007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Follow-up encounter (procedure)"/>
200
+ <ns0:Concept code="397745006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Medical contraindication (finding)"/>
201
+ <ns0:Concept code="405096004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Diabetes self-management behavior (observable entity)"/>
202
+ <ns0:Concept code="406547006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Urgent follow-up (procedure)"/>
203
+ <ns0:Concept code="408983003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Renal care management (procedure)"/>
204
+ <ns0:Concept code="410155007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Occupational therapy assessment (procedure)"/>
205
+ <ns0:Concept code="410157004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Occupational therapy management (procedure)"/>
206
+ <ns0:Concept code="410158009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Physical therapy assessment (procedure)"/>
207
+ <ns0:Concept code="410160006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Physical therapy management (procedure)"/>
208
+ <ns0:Concept code="410170008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Nutrition care assessment (procedure)"/>
209
+ <ns0:Concept code="428119001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Procedure not indicated (situation)"/>
210
+ <ns0:Concept code="439708006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Home visit (procedure)"/>
211
+ <ns0:Concept code="439952009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation of auditory rehabilitation (procedure)"/>
212
+ <ns0:Concept code="440524004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Oscillating tracking test with recording (procedure)"/>
213
+ <ns0:Concept code="46662001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Examination of breast (procedure)"/>
214
+ <ns0:Concept code="48423005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Acoustic reflex testing (procedure)"/>
215
+ <ns0:Concept code="50357006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Evaluation and management of patient at home (procedure)"/>
216
+ <ns0:Concept code="53555003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Basic comprehensive audiometry testing (procedure)"/>
217
+ <ns0:Concept code="54290001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Positional nystagmus test with recording (procedure)"/>
218
+ <ns0:Concept code="63547008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Caloric vestibular test with recording (procedure)"/>
219
+ <ns0:Concept code="66902005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Ophthalmic examination and evaluation, follow-up (procedure)"/>
220
+ <ns0:Concept code="78318003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="History and physical examination, annual for health maintenance (procedure)"/>
221
+ <ns0:Concept code="83607001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Gynecologic examination (procedure)"/>
222
+ <ns0:Concept code="8411005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Interactive individual medical psychotherapy (regime/therapy)"/>
223
+ <ns0:Concept code="86013001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Periodic reevaluation and management of healthy individual (procedure)"/>
224
+ <ns0:Concept code="90526000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Initial evaluation and management of healthy individual (procedure)"/>
225
+ <ns0:Concept code="90791" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychiatric diagnostic evaluation"/>
226
+ <ns0:Concept code="90792" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychiatric diagnostic evaluation with medical services"/>
227
+ <ns0:Concept code="90832" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychotherapy, 30 minutes with patient and/or family member"/>
228
+ <ns0:Concept code="90834" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychotherapy, 45 minutes with patient and/or family member"/>
229
+ <ns0:Concept code="90837" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychotherapy, 60 minutes with patient and/or family member"/>
230
+ <ns0:Concept code="90839" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Psychotherapy for crisis; first 60 minutes"/>
231
+ <ns0:Concept code="90957" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services monthly, for patients 12-19 years of age to include monitoring for the adequacy of nutrition, assessment of growth and development, and counseling of parents; with 4 or more face-to-face visits by a physician or other qualified health care professional per month"/>
232
+ <ns0:Concept code="90958" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services monthly, for patients 12-19 years of age to include monitoring for the adequacy of nutrition, assessment of growth and development, and counseling of parents; with 2-3 face-to-face visits by a physician or other qualified health care professional per month"/>
233
+ <ns0:Concept code="90959" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services monthly, for patients 12-19 years of age to include monitoring for the adequacy of nutrition, assessment of growth and development, and counseling of parents; with 1 face-to-face visit by a physician or other qualified health care professional per month"/>
234
+ <ns0:Concept code="90960" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services monthly, for patients 20 years of age and older; with 4 or more face-to-face visits by a physician or other qualified health care professional per month"/>
235
+ <ns0:Concept code="90962" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services monthly, for patients 20 years of age and older; with 1 face-to-face visit by a physician or other qualified health care professional per month"/>
236
+ <ns0:Concept code="90965" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services for home dialysis per full month, for patients 12-19 years of age to include monitoring for the adequacy of nutrition, assessment of growth and development, and counseling of parents"/>
237
+ <ns0:Concept code="90966" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="End-stage renal disease (ESRD) related services for home dialysis per full month, for patients 20 years of age and older"/>
238
+ <ns0:Concept code="91573000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMEDCT" codeSystemVersion="2013-09" displayName="Tympanometry testing (procedure)"/>
239
+ <ns0:Concept code="92002" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Ophthalmological services: medical examination and evaluation with initiation of diagnostic and treatment program; intermediate, new patient"/>
240
+ <ns0:Concept code="92004" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Ophthalmological services: medical examination and evaluation with initiation of diagnostic and treatment program; comprehensive, new patient, 1 or more visits"/>
241
+ <ns0:Concept code="92012" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Ophthalmological services: medical examination and evaluation, with initiation or continuation of diagnostic and treatment program; intermediate, established patient"/>
242
+ <ns0:Concept code="92014" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Ophthalmological services: medical examination and evaluation, with initiation or continuation of diagnostic and treatment program; comprehensive, established patient, 1 or more visits"/>
243
+ <ns0:Concept code="92507" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Treatment of speech, language, voice, communication, and/or auditory processing disorder; individual"/>
244
+ <ns0:Concept code="92508" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Treatment of speech, language, voice, communication, and/or auditory processing disorder; group, 2 or more individuals"/>
245
+ <ns0:Concept code="92526" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Treatment of swallowing dysfunction and/or oral function for feeding"/>
246
+ <ns0:Concept code="92541" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Spontaneous nystagmus test, including gaze and fixation nystagmus, with recording"/>
247
+ <ns0:Concept code="92542" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Positional nystagmus test, minimum of 4 positions, with recording"/>
248
+ <ns0:Concept code="92543" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Caloric vestibular test, each irrigation (binaural, bithermal stimulation constitutes 4 tests), with recording"/>
249
+ <ns0:Concept code="92544" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Optokinetic nystagmus test, bidirectional, foveal or peripheral stimulation, with recording"/>
250
+ <ns0:Concept code="92545" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Oscillating tracking test, with recording"/>
251
+ <ns0:Concept code="92547" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Use of vertical electrodes (List separately in addition to code for primary procedure)"/>
252
+ <ns0:Concept code="92548" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Computerized dynamic posturography"/>
253
+ <ns0:Concept code="92557" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Comprehensive audiometry threshold evaluation and speech recognition (92553 and 92556 combined)"/>
254
+ <ns0:Concept code="92567" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Tympanometry (impedance testing)"/>
255
+ <ns0:Concept code="92568" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Acoustic reflex testing, threshold"/>
256
+ <ns0:Concept code="92570" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Acoustic immittance testing, includes tympanometry (impedance testing), acoustic reflex threshold testing, and acoustic reflex decay testing"/>
257
+ <ns0:Concept code="92585" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Auditory evoked potentials for evoked response audiometry and/or testing of the central nervous system; comprehensive"/>
258
+ <ns0:Concept code="92588" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Distortion product evoked otoacoustic emissions; comprehensive diagnostic evaluation (quantitative analysis of outer hair cell function by cochlear mapping, minimum of 12 frequencies), with interpretation and report"/>
259
+ <ns0:Concept code="92626" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Evaluation of auditory rehabilitation status; first hour"/>
260
+ <ns0:Concept code="96116" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Neurobehavioral status exam (clinical assessment of thinking, reasoning and judgment, eg, acquired knowledge, attention, language, memory, planning and problem solving, and visual spatial abilities), per hour of the psychologist's or physician's time, both face-to-face time with the patient and time interpreting test results and preparing the report"/>
261
+ <ns0:Concept code="96150" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Health and behavior assessment (eg, health-focused clinical interview, behavioral observations, psychophysiological monitoring, health-oriented questionnaires), each 15 minutes face-to-face with the patient; initial assessment"/>
262
+ <ns0:Concept code="96151" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Health and behavior assessment (eg, health-focused clinical interview, behavioral observations, psychophysiological monitoring, health-oriented questionnaires), each 15 minutes face-to-face with the patient; re-assessment"/>
263
+ <ns0:Concept code="96152" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Health and behavior intervention, each 15 minutes, face-to-face; individual"/>
264
+ <ns0:Concept code="97001" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Physical therapy evaluation"/>
265
+ <ns0:Concept code="97002" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Physical therapy re-evaluation"/>
266
+ <ns0:Concept code="97003" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Occupational therapy evaluation"/>
267
+ <ns0:Concept code="97004" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Occupational therapy re-evaluation"/>
268
+ <ns0:Concept code="97110" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Therapeutic procedure, 1 or more areas, each 15 minutes; therapeutic exercises to develop strength and endurance, range of motion and flexibility"/>
269
+ <ns0:Concept code="97140" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Manual therapy techniques (eg, mobilization/ manipulation, manual lymphatic drainage, manual traction), 1 or more regions, each 15 minutes"/>
270
+ <ns0:Concept code="97532" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Development of cognitive skills to improve attention, memory, problem solving (includes compensatory training), direct (one-on-one) patient contact, each 15 minutes"/>
271
+ <ns0:Concept code="97802" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Medical nutrition therapy; initial assessment and intervention, individual, face-to-face with the patient, each 15 minutes"/>
272
+ <ns0:Concept code="97803" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Medical nutrition therapy; re-assessment and intervention, individual, face-to-face with the patient, each 15 minutes"/>
273
+ <ns0:Concept code="97804" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Medical nutrition therapy; group (2 or more individual(s)), each 30 minutes"/>
274
+ <ns0:Concept code="98960" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Education and training for patient self-management by a qualified, nonphysician health care professional using a standardized curriculum, face-to-face with the patient (could include caregiver/family) each 30 minutes; individual patient"/>
275
+ <ns0:Concept code="98961" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Education and training for patient self-management by a qualified, nonphysician health care professional using a standardized curriculum, face-to-face with the patient (could include caregiver/family) each 30 minutes; 2-4 patients"/>
276
+ <ns0:Concept code="98962" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Education and training for patient self-management by a qualified, nonphysician health care professional using a standardized curriculum, face-to-face with the patient (could include caregiver/family) each 30 minutes; 5-8 patients"/>
277
+ <ns0:Concept code="99201" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components: A problem focused history; A problem focused examination; Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are self limited or minor. Typically, 10 minutes are spent face-to-face with the patient and/or family."/>
278
+ <ns0:Concept code="99202" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components: An expanded problem focused history; An expanded problem focused examination; Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low to moderate severity. Typically, 20 minutes are spent face-to-face with the patient and/or family."/>
279
+ <ns0:Concept code="99203" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components: A detailed history; A detailed examination; Medical decision making of low complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate severity. Typically, 30 minutes are spent face-to-face with the patient and/or family."/>
280
+ <ns0:Concept code="99204" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 45 minutes are spent face-to-face with the patient and/or family."/>
281
+ <ns0:Concept code="99205" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; Medical decision making of high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 60 minutes are spent face-to-face with the patient and/or family."/>
282
+ <ns0:Concept code="99212" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A problem focused history; A problem focused examination; Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are self limited or minor. Typically, 10 minutes are spent face-to-face with the patient and/or family."/>
283
+ <ns0:Concept code="99213" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: An expanded problem focused history; An expanded problem focused examination; Medical decision making of low complexity. Counseling and coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low to moderate severity. Typically, 15 minutes are spent face-to-face with the patient and/or family."/>
284
+ <ns0:Concept code="99214" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A detailed history; A detailed examination; Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 25 minutes are spent face-to-face with the patient and/or family."/>
285
+ <ns0:Concept code="99215" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Office or other outpatient visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A comprehensive history; A comprehensive examination; Medical decision making of high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 40 minutes are spent face-to-face with the patient and/or family."/>
286
+ <ns0:Concept code="99324" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of a new patient, which requires these 3 key components: A problem focused history; A problem focused examination; and Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low severity. Typically, 20 minutes are spent with the patient and/or family or caregiver."/>
287
+ <ns0:Concept code="99325" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of a new patient, which requires these 3 key components: An expanded problem focused history; An expanded problem focused examination; and Medical decision making of low complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate severity. Typically, 30 minutes are spent with the patient and/or family or caregiver."/>
288
+ <ns0:Concept code="99326" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of a new patient, which requires these 3 key components: A detailed history; A detailed examination; and Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 45 minutes are spent with the patient and/or family or caregiver."/>
289
+ <ns0:Concept code="99327" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; and Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of high severity. Typically, 60 minutes are spent with the patient and/or family or caregiver."/>
290
+ <ns0:Concept code="99328" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; and Medical decision making of high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the patient is unstable or has developed a significant new problem requiring immediate physician attention. Typically, 75 minutes are spent with the patient and/or family or caregiver."/>
291
+ <ns0:Concept code="99334" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A problem focused interval history; A problem focused examination; Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are self-limited or minor. Typically, 15 minutes are spent with the patient and/or family or caregiver."/>
292
+ <ns0:Concept code="99335" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: An expanded problem focused interval history; An expanded problem focused examination; Medical decision making of low complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low to moderate severity. Typically, 25 minutes are spent with the patient and/or family or caregiver."/>
293
+ <ns0:Concept code="99336" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A detailed interval history; A detailed examination; Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 40 minutes are spent with the patient and/or family or caregiver."/>
294
+ <ns0:Concept code="99337" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Domiciliary or rest home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A comprehensive interval history; A comprehensive examination; Medical decision making of moderate to high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. The patient may be unstable or may have developed a significant new problem requiring immediate physician attention. Typically, 60 minutes are spent with the patient and/or family or caregiver."/>
295
+ <ns0:Concept code="99341" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of a new patient, which requires these 3 key components: A problem focused history; A problem focused examination; and Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low severity. Typically, 20 minutes are spent face-to-face with the patient and/or family."/>
296
+ <ns0:Concept code="99342" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of a new patient, which requires these 3 key components: An expanded problem focused history; An expanded problem focused examination; and Medical decision making of low complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate severity. Typically, 30 minutes are spent face-to-face with the patient and/or family."/>
297
+ <ns0:Concept code="99343" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of a new patient, which requires these 3 key components: A detailed history; A detailed examination; and Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. Typically, 45 minutes are spent face-to-face with the patient and/or family."/>
298
+ <ns0:Concept code="99344" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; and Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of high severity. Typically, 60 minutes are spent face-to-face with the patient and/or family."/>
299
+ <ns0:Concept code="99345" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of a new patient, which requires these 3 key components: A comprehensive history; A comprehensive examination; and Medical decision making of high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the patient is unstable or has developed a significant new problem requiring immediate physician attention. Typically, 75 minutes are spent face-to-face with the patient and/or family."/>
300
+ <ns0:Concept code="99347" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A problem focused interval history; A problem focused examination; Straightforward medical decision making. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are self limited or minor. Typically, 15 minutes are spent face-to-face with the patient and/or family."/>
301
+ <ns0:Concept code="99348" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: An expanded problem focused interval history; An expanded problem focused examination; Medical decision making of low complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of low to moderate severity. Typically, 25 minutes are spent face-to-face with the patient and/or family."/>
302
+ <ns0:Concept code="99349" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A detailed interval history; A detailed examination; Medical decision making of moderate complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are moderate to high severity. Typically, 40 minutes are spent face-to-face with the patient and/or family."/>
303
+ <ns0:Concept code="99350" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Home visit for the evaluation and management of an established patient, which requires at least 2 of these 3 key components: A comprehensive interval history; A comprehensive examination; Medical decision making of moderate to high complexity. Counseling and/or coordination of care with other physicians, other qualified health care professionals, or agencies are provided consistent with the nature of the problem(s) and the patient's and/or family's needs. Usually, the presenting problem(s) are of moderate to high severity. The patient may be unstable or may have developed a significant new problem requiring immediate physician attention. Typically, 60 minutes are spent face-to-face with the patient and/or family."/>
304
+ <ns0:Concept code="99495" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Transitional Care Management Services with the following required elements: Communication (direct contact, telephone, electronic) with the patient and/or caregiver within 2 business days of discharge Medical decision making of at least moderate complexity during the service period Face-to-face visit, within 14 calendar days of discharge"/>
305
+ <ns0:Concept code="99496" codeSystem="2.16.840.1.113883.6.12" codeSystemName="CPT" codeSystemVersion="2014" displayName="Transitional Care Management Services with the following required elements: Communication (direct contact, telephone, electronic) with the patient and/or caregiver within 2 business days of discharge Medical decision making of high complexity during the service period Face-to-face visit, within 7 calendar days of discharge"/>
306
+ <ns0:Concept code="G0101" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Cervical or vaginal cancer screening; pelvic and clinical breast examination"/>
307
+ <ns0:Concept code="G0108" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Diabetes outpatient self-management training services, individual, per 30 minutes"/>
308
+ <ns0:Concept code="G0270" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Medical nutrition therapy; reassessment and subsequent intervention(s) following second referral in same year for change in diagnosis, medical condition or treatment regimen (including additional hours needed for renal disease), individual, face to face with the patient, each 15 minutes"/>
309
+ <ns0:Concept code="G0402" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Initial preventive physical examination; face-to-face visit, services limited to new beneficiary during the first 12 months of medicare enrollment"/>
310
+ <ns0:Concept code="G0438" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Annual wellness visit; includes a personalized prevention plan of service (pps), initial visit"/>
311
+ <ns0:Concept code="G0439" codeSystem="2.16.840.1.113883.6.285" codeSystemName="HCPCS" codeSystemVersion="2014" displayName="Annual wellness visit, includes a personalized prevention plan of service (pps), subsequent visit"/>
312
+ </ns0:ConceptList>
313
+ <ns0:Source>Quality Insights of Pennsylvania</ns0:Source>
314
+ <ns0:Purpose>(Clinical Focus: ),(Data Element Scope: ),(Inclusion Criteria: ),(Exclusion Criteria: )</ns0:Purpose>
315
+ <ns0:Definition>(2.16.840.1.113883.3.600.1.1608:Encounters Meds HCPCS),(2.16.840.1.113883.3.600.1.1609:Encounter Medications CPT),(2.16.840.1.113883.3.600.1.1917:Medication SNOMED Encounter Codes)</ns0:Definition>
316
+ <ns0:Type>Grouping</ns0:Type>
317
+ <ns0:Binding>Dynamic</ns0:Binding>
318
+ <ns0:Status>Active</ns0:Status>
319
+ <ns0:RevisionDate>2014-05-10</ns0:RevisionDate>
320
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Meaningful Use Measures">
321
+ <ns0:Keyword>CY 2014 EP</ns0:Keyword>
322
+ </ns0:Group>
323
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Identifier">
324
+ <ns0:Keyword>68</ns0:Keyword>
325
+ </ns0:Group>
326
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Title">
327
+ <ns0:Keyword>Documentation of Current Medications in the Medical Record</ns0:Keyword>
328
+ </ns0:Group>
329
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Status">
330
+ <ns0:Keyword>InProgress</ns0:Keyword>
331
+ </ns0:Group>
332
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Finalized Time"/>
333
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="GUID">
334
+ <ns0:Keyword>9a032d9c-3d9b-11e1-8634-00237d5bf174</ns0:Keyword>
335
+ </ns0:Group>
336
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Description">
337
+ <ns0:Keyword>Percentage of visits for patients aged 18 years and older for which the eligible professional attests to documenting a list of current medications using all immediate resources available on the date of the encounter. This list must include ALL known prescriptions, over-the-counters, herbals, and vitamin/mineral/dietary (nutritional) supplements AND must contain the medications' name, dosage, frequency and route of administration.</ns0:Keyword>
338
+ </ns0:Group>
339
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Measure Steward">
340
+ <ns0:Keyword>Centers for Medicare &amp; Medicaid Services</ns0:Keyword>
341
+ </ns0:Group>
342
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Endorsed By">
343
+ <ns0:Keyword>National Quality Forum</ns0:Keyword>
344
+ </ns0:Group>
345
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Measure Type">
346
+ <ns0:Keyword>PROCESS</ns0:Keyword>
347
+ </ns0:Group>
348
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="CMS eMeasure ID">
349
+ <ns0:Keyword>CMS68v4</ns0:Keyword>
350
+ </ns0:Group>
351
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Copyright">
352
+ <ns0:Keyword>Limited proprietary coding is contained in the measure specifications for convenience. Users of the proprietary code sets should obtain all necessary licenses from the owners of these code sets. Quality Insights of Pennsylvania disclaims all liability for use or accuracy of any Current Procedural Terminology (CPT [R</ns0:Keyword>
353
+ </ns0:Group>
354
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="CATEGORY">
355
+ <ns0:Keyword>Encounter</ns0:Keyword>
356
+ </ns0:Group>
357
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="NQF Number">
358
+ <ns0:Keyword>0419</ns0:Keyword>
359
+ </ns0:Group>
360
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="Measure Developer">
361
+ <ns0:Keyword>Quality Insights of Pennsylvania</ns0:Keyword>
362
+ </ns0:Group>
363
+ <ns0:Group ID="1" sourceOrganization="National Quality Forum" displayName="eMeasure Version number">
364
+ <ns0:Keyword>4</ns0:Keyword>
365
+ </ns0:Group>
366
+ </ns0:DescribedValueSet>
367
+ </ns0:RetrieveMultipleValueSetsResponse>
368
+ http_version:
369
+ recorded_at: Wed, 28 Mar 2018 21:40:46 GMT
370
+ recorded_with: VCR 3.0.3
@@ -5,10 +5,10 @@ require 'rails'
5
5
  require 'rails/test_help'
6
6
  require 'hquery-patient-api'
7
7
  require 'diffy'
8
- APP_CONFIG = {'nlm'=> {'ticket_url'=> 'https://vsac.nlm.nih.gov/vsac/ws/Ticket',
9
- 'api_url' => 'https://vsac.nlm.nih.gov/vsac/svs/RetrieveMultipleValueSets',
10
- 'profiles_url' => 'https://vsac.nlm.nih.gov/vsac/profiles',
11
- 'profile' => 'MU2 Update 2016-04-01'}}
8
+ APP_CONFIG = {'vsac'=> {'auth_url'=> 'https://vsac.nlm.nih.gov/vsac/ws',
9
+ 'content_url' => 'https://vsac.nlm.nih.gov/vsac/svs',
10
+ 'utility_url' => 'https://vsac.nlm.nih.gov/vsac',
11
+ 'default_profile' => 'MU2 Update 2016-04-01'}}
12
12
 
13
13
  PROJECT_ROOT = File.expand_path("../../", __FILE__)
14
14
  require File.join(PROJECT_ROOT, 'lib', 'bonnie_bundler')
@@ -22,6 +22,11 @@ def dump_db
22
22
  FileUtils.rm_r 'db' if File.exists? 'db'
23
23
  end
24
24
 
25
+ def get_ticket_granting_ticket
26
+ api = Util::VSAC::VSACAPI.new(config: APP_CONFIG['vsac'], username: ENV['VSAC_USERNAME'], password: ENV['VSAC_PASSWORD'])
27
+ return api.ticket_granting_ticket
28
+ end
29
+
25
30
  Mongoid.logger.level = Logger::INFO
26
31
  Mongo::Logger.logger.level = Logger::INFO
27
32
  dump_db
@@ -14,7 +14,7 @@ class CQLLoaderTest < ActiveSupport::TestCase
14
14
  user.save
15
15
 
16
16
  measure_details = { 'episode_of_care'=> false }
17
- Measures::CqlLoader.load(@cql_mat_export, user, measure_details, ENV['VSAC_USERNAME'], ENV['VSAC_PASSWORD']).save
17
+ Measures::CqlLoader.load(@cql_mat_export, user, measure_details, { profile: APP_CONFIG['vsac']['default_profile'] }, get_ticket_granting_ticket).save
18
18
  assert_equal 1, CqlMeasure.all.count
19
19
  measure = CqlMeasure.all.first
20
20
  assert_equal 'Diabetes: Medical Attention for Nephropathy', measure.title
@@ -28,27 +28,54 @@ class CQLLoaderTest < ActiveSupport::TestCase
28
28
 
29
29
  test 'Loading a measure with a direct reference code handles the creation of code_list_id hash properly' do
30
30
  direct_reference_mat_export = File.new File.join('test', 'fixtures', 'CMS158_v5_4_Artifacts_Update.zip')
31
+
32
+ dump_db
33
+ user = User.new
34
+ user.save
35
+
36
+ measure_details = { 'episode_of_care'=> false }
37
+
38
+ # do first load
31
39
  VCR.use_cassette('valid_vsac_response_158_update') do
40
+ Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, { profile: APP_CONFIG['vsac']['default_profile'] }, get_ticket_granting_ticket).save
41
+ end
42
+ assert_equal 1, CqlMeasure.all.count
43
+ measure = CqlMeasure.all.first
44
+
45
+ # Confirm that the source data criteria with the direct reference code is equal to the expected hash
46
+ assert_equal measure['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id'], "drc-986ea3d52eddc4927e63b3769b5efbaf38b76b35a9164e447fcde2e4dfd31a0c"
47
+ assert_equal measure['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id'], "drc-986ea3d52eddc4927e63b3769b5efbaf38b76b35a9164e447fcde2e4dfd31a0c"
48
+
49
+ # Re-load the Measure
50
+ VCR.use_cassette('valid_vsac_response_158_update') do
51
+ Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, { profile: APP_CONFIG['vsac']['default_profile'] }, get_ticket_granting_ticket).save
52
+ end
53
+
54
+ assert_equal 2, CqlMeasure.all.count
55
+ measures = CqlMeasure.all
56
+ # Confirm that the Direct Reference Code, code_list_id hash has not changed between Uploads.
57
+ assert_equal measures[0]['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id'], measures[1]['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id']
58
+ assert_equal measures[0]['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id'], measures[1]['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id']
59
+
60
+ end
61
+
62
+
63
+ test 'Loading a measure with support libraries that dont have their define definitions used are still included in the dependencty structure as empty hashes' do
64
+ unused_library_mat_export = File.new File.join('test', 'fixtures', 'PVC2_v5_4_Unused_Support_Libraries.zip')
65
+ VCR.use_cassette('valid_vsac_response_pvc_unused_libraries') do
32
66
  dump_db
33
67
  user = User.new
34
68
  user.save
35
69
 
36
- measure_details = { 'episode_of_care'=> false }
37
- Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, ENV['VSAC_USERNAME'], ENV['VSAC_PASSWORD']).save
70
+ measure_details = { 'episode_of_care' => false }
71
+ Measures::CqlLoader.load(unused_library_mat_export, user, measure_details, { include_draft: true, profile: APP_CONFIG['vsac']['default_profile'] }, get_ticket_granting_ticket).save
38
72
  assert_equal 1, CqlMeasure.all.count
39
73
  measure = CqlMeasure.all.first
40
-
41
- # Confirm that the source data criteria with the direct reference code is equal to the expected hash
42
- assert_equal measure['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id'], "drc-986ea3d52eddc4927e63b3769b5efbaf38b76b35a9164e447fcde2e4dfd31a0c"
43
- assert_equal measure['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id'], "drc-986ea3d52eddc4927e63b3769b5efbaf38b76b35a9164e447fcde2e4dfd31a0c"
44
74
 
45
- # Re-load the Measure
46
- Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, ENV['VSAC_USERNAME'], ENV['VSAC_PASSWORD']).save
47
- assert_equal 2, CqlMeasure.all.count
48
- measures = CqlMeasure.all
49
- # Confirm that the Direct Reference Code, code_list_id hash has not changed between Uploads.
50
- assert_equal measures[0]['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id'], measures[1]['source_data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D_source']['code_list_id']
51
- assert_equal measures[0]['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id'], measures[1]['data_criteria']['prefix_5195_3_LaboratoryTestPerformed_70C9F083_14BD_4331_99D7_201F8589059D']['code_list_id']
75
+ # Confirm that the cql dependency structure has the same number of keys (libraries) as items in the elm array
76
+ assert_equal measure.cql_statement_dependencies.count, measure.elm.count
77
+ # Confirm the support library is an empty hash
78
+ assert measure.cql_statement_dependencies['Hospice'].empty?
52
79
  end
53
80
  end
54
81
 
@@ -60,7 +87,7 @@ class CQLLoaderTest < ActiveSupport::TestCase
60
87
  user.save
61
88
 
62
89
  measure_details = { 'episode_of_care'=> false }
63
- Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, ENV['VSAC_USERNAME'], ENV['VSAC_PASSWORD']).save
90
+ Measures::CqlLoader.load(direct_reference_mat_export, user, measure_details, { profile: APP_CONFIG['vsac']['default_profile'] }, get_ticket_granting_ticket).save
64
91
  assert_equal 1, CqlMeasure.all.count
65
92
  measure = CqlMeasure.all.first
66
93
  before_value_sets = measure.value_set_oids