us_core_test_kit 0.6.1 → 0.6.2

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 (195) hide show
  1. checksums.yaml +4 -4
  2. data/lib/us_core_test_kit/fhir_resource_navigation.rb +76 -8
  3. data/lib/us_core_test_kit/generated/v3.1.1/bodyheight/bodyheight_must_support_test.rb +7 -7
  4. data/lib/us_core_test_kit/generated/v3.1.1/bodyheight/metadata.yml +11 -9
  5. data/lib/us_core_test_kit/generated/v3.1.1/bodytemp/bodytemp_must_support_test.rb +7 -7
  6. data/lib/us_core_test_kit/generated/v3.1.1/bodytemp/metadata.yml +11 -9
  7. data/lib/us_core_test_kit/generated/v3.1.1/bodyweight/bodyweight_must_support_test.rb +7 -7
  8. data/lib/us_core_test_kit/generated/v3.1.1/bodyweight/metadata.yml +11 -9
  9. data/lib/us_core_test_kit/generated/v3.1.1/bp/bp_must_support_test.rb +15 -7
  10. data/lib/us_core_test_kit/generated/v3.1.1/bp/metadata.yml +25 -12
  11. data/lib/us_core_test_kit/generated/v3.1.1/care_plan/metadata.yml +2 -1
  12. data/lib/us_core_test_kit/generated/v3.1.1/diagnostic_report_lab/metadata.yml +2 -1
  13. data/lib/us_core_test_kit/generated/v3.1.1/goal/metadata.yml +2 -1
  14. data/lib/us_core_test_kit/generated/v3.1.1/head_circumference/head_circumference_must_support_test.rb +7 -7
  15. data/lib/us_core_test_kit/generated/v3.1.1/head_circumference/metadata.yml +11 -9
  16. data/lib/us_core_test_kit/generated/v3.1.1/heartrate/heartrate_must_support_test.rb +7 -7
  17. data/lib/us_core_test_kit/generated/v3.1.1/heartrate/metadata.yml +11 -9
  18. data/lib/us_core_test_kit/generated/v3.1.1/metadata.yml +166 -121
  19. data/lib/us_core_test_kit/generated/v3.1.1/observation_lab/metadata.yml +2 -1
  20. data/lib/us_core_test_kit/generated/v3.1.1/organization/metadata.yml +2 -1
  21. data/lib/us_core_test_kit/generated/v3.1.1/pediatric_bmi_for_age/metadata.yml +11 -9
  22. data/lib/us_core_test_kit/generated/v3.1.1/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
  23. data/lib/us_core_test_kit/generated/v3.1.1/pediatric_weight_for_height/metadata.yml +11 -9
  24. data/lib/us_core_test_kit/generated/v3.1.1/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
  25. data/lib/us_core_test_kit/generated/v3.1.1/practitioner/metadata.yml +2 -1
  26. data/lib/us_core_test_kit/generated/v3.1.1/provenance/metadata.yml +6 -6
  27. data/lib/us_core_test_kit/generated/v3.1.1/provenance/provenance_must_support_test.rb +2 -1
  28. data/lib/us_core_test_kit/generated/v3.1.1/pulse_oximetry/metadata.yml +33 -24
  29. data/lib/us_core_test_kit/generated/v3.1.1/pulse_oximetry/pulse_oximetry_must_support_test.rb +21 -14
  30. data/lib/us_core_test_kit/generated/v3.1.1/resprate/metadata.yml +11 -9
  31. data/lib/us_core_test_kit/generated/v3.1.1/resprate/resprate_must_support_test.rb +7 -7
  32. data/lib/us_core_test_kit/generated/v3.1.1/smokingstatus/metadata.yml +2 -1
  33. data/lib/us_core_test_kit/generated/v4.0.0/allergy_intolerance/metadata.yml +2 -0
  34. data/lib/us_core_test_kit/generated/v4.0.0/blood_pressure/blood_pressure_must_support_test.rb +15 -8
  35. data/lib/us_core_test_kit/generated/v4.0.0/blood_pressure/metadata.yml +37 -20
  36. data/lib/us_core_test_kit/generated/v4.0.0/bmi/bmi_must_support_test.rb +7 -7
  37. data/lib/us_core_test_kit/generated/v4.0.0/bmi/metadata.yml +13 -9
  38. data/lib/us_core_test_kit/generated/v4.0.0/body_height/body_height_must_support_test.rb +7 -7
  39. data/lib/us_core_test_kit/generated/v4.0.0/body_height/metadata.yml +13 -9
  40. data/lib/us_core_test_kit/generated/v4.0.0/body_temperature/body_temperature_must_support_test.rb +7 -7
  41. data/lib/us_core_test_kit/generated/v4.0.0/body_temperature/metadata.yml +13 -9
  42. data/lib/us_core_test_kit/generated/v4.0.0/body_weight/body_weight_must_support_test.rb +7 -7
  43. data/lib/us_core_test_kit/generated/v4.0.0/body_weight/metadata.yml +13 -9
  44. data/lib/us_core_test_kit/generated/v4.0.0/care_plan/metadata.yml +4 -1
  45. data/lib/us_core_test_kit/generated/v4.0.0/care_team/metadata.yml +2 -0
  46. data/lib/us_core_test_kit/generated/v4.0.0/condition/metadata.yml +2 -0
  47. data/lib/us_core_test_kit/generated/v4.0.0/device/metadata.yml +2 -0
  48. data/lib/us_core_test_kit/generated/v4.0.0/diagnostic_report_lab/metadata.yml +6 -1
  49. data/lib/us_core_test_kit/generated/v4.0.0/diagnostic_report_note/metadata.yml +4 -0
  50. data/lib/us_core_test_kit/generated/v4.0.0/document_reference/metadata.yml +4 -0
  51. data/lib/us_core_test_kit/generated/v4.0.0/encounter/metadata.yml +4 -0
  52. data/lib/us_core_test_kit/generated/v4.0.0/goal/metadata.yml +2 -0
  53. data/lib/us_core_test_kit/generated/v4.0.0/head_circumference/head_circumference_must_support_test.rb +7 -7
  54. data/lib/us_core_test_kit/generated/v4.0.0/head_circumference/metadata.yml +13 -9
  55. data/lib/us_core_test_kit/generated/v4.0.0/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
  56. data/lib/us_core_test_kit/generated/v4.0.0/head_circumference_percentile/metadata.yml +13 -9
  57. data/lib/us_core_test_kit/generated/v4.0.0/heart_rate/heart_rate_must_support_test.rb +7 -7
  58. data/lib/us_core_test_kit/generated/v4.0.0/heart_rate/metadata.yml +13 -9
  59. data/lib/us_core_test_kit/generated/v4.0.0/immunization/metadata.yml +2 -0
  60. data/lib/us_core_test_kit/generated/v4.0.0/medication_request/metadata.yml +4 -0
  61. data/lib/us_core_test_kit/generated/v4.0.0/metadata.yml +275 -146
  62. data/lib/us_core_test_kit/generated/v4.0.0/observation_lab/metadata.yml +4 -1
  63. data/lib/us_core_test_kit/generated/v4.0.0/organization/metadata.yml +2 -1
  64. data/lib/us_core_test_kit/generated/v4.0.0/pediatric_bmi_for_age/metadata.yml +13 -9
  65. data/lib/us_core_test_kit/generated/v4.0.0/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
  66. data/lib/us_core_test_kit/generated/v4.0.0/pediatric_weight_for_height/metadata.yml +13 -9
  67. data/lib/us_core_test_kit/generated/v4.0.0/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
  68. data/lib/us_core_test_kit/generated/v4.0.0/practitioner/metadata.yml +2 -1
  69. data/lib/us_core_test_kit/generated/v4.0.0/procedure/metadata.yml +2 -0
  70. data/lib/us_core_test_kit/generated/v4.0.0/provenance/metadata.yml +8 -6
  71. data/lib/us_core_test_kit/generated/v4.0.0/provenance/provenance_must_support_test.rb +2 -1
  72. data/lib/us_core_test_kit/generated/v4.0.0/pulse_oximetry/metadata.yml +38 -22
  73. data/lib/us_core_test_kit/generated/v4.0.0/pulse_oximetry/pulse_oximetry_must_support_test.rb +15 -8
  74. data/lib/us_core_test_kit/generated/v4.0.0/respiratory_rate/metadata.yml +13 -9
  75. data/lib/us_core_test_kit/generated/v4.0.0/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
  76. data/lib/us_core_test_kit/generated/v4.0.0/smokingstatus/metadata.yml +8 -3
  77. data/lib/us_core_test_kit/generated/v5.0.1/allergy_intolerance/metadata.yml +2 -0
  78. data/lib/us_core_test_kit/generated/v5.0.1/blood_pressure/blood_pressure_must_support_test.rb +18 -8
  79. data/lib/us_core_test_kit/generated/v5.0.1/blood_pressure/metadata.yml +40 -20
  80. data/lib/us_core_test_kit/generated/v5.0.1/bmi/bmi_must_support_test.rb +7 -7
  81. data/lib/us_core_test_kit/generated/v5.0.1/bmi/metadata.yml +13 -9
  82. data/lib/us_core_test_kit/generated/v5.0.1/body_height/body_height_must_support_test.rb +7 -7
  83. data/lib/us_core_test_kit/generated/v5.0.1/body_height/metadata.yml +13 -9
  84. data/lib/us_core_test_kit/generated/v5.0.1/body_temperature/body_temperature_must_support_test.rb +7 -7
  85. data/lib/us_core_test_kit/generated/v5.0.1/body_temperature/metadata.yml +13 -9
  86. data/lib/us_core_test_kit/generated/v5.0.1/body_weight/body_weight_must_support_test.rb +7 -7
  87. data/lib/us_core_test_kit/generated/v5.0.1/body_weight/metadata.yml +13 -9
  88. data/lib/us_core_test_kit/generated/v5.0.1/care_plan/metadata.yml +4 -1
  89. data/lib/us_core_test_kit/generated/v5.0.1/care_team/metadata.yml +2 -0
  90. data/lib/us_core_test_kit/generated/v5.0.1/condition_encounter_diagnosis/metadata.yml +6 -1
  91. data/lib/us_core_test_kit/generated/v5.0.1/condition_problems_health_concerns/metadata.yml +6 -2
  92. data/lib/us_core_test_kit/generated/v5.0.1/device/metadata.yml +2 -0
  93. data/lib/us_core_test_kit/generated/v5.0.1/diagnostic_report_lab/metadata.yml +6 -1
  94. data/lib/us_core_test_kit/generated/v5.0.1/diagnostic_report_note/metadata.yml +6 -1
  95. data/lib/us_core_test_kit/generated/v5.0.1/document_reference/metadata.yml +6 -1
  96. data/lib/us_core_test_kit/generated/v5.0.1/encounter/metadata.yml +4 -0
  97. data/lib/us_core_test_kit/generated/v5.0.1/goal/metadata.yml +2 -0
  98. data/lib/us_core_test_kit/generated/v5.0.1/head_circumference/head_circumference_must_support_test.rb +7 -7
  99. data/lib/us_core_test_kit/generated/v5.0.1/head_circumference/metadata.yml +13 -9
  100. data/lib/us_core_test_kit/generated/v5.0.1/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
  101. data/lib/us_core_test_kit/generated/v5.0.1/head_circumference_percentile/metadata.yml +13 -9
  102. data/lib/us_core_test_kit/generated/v5.0.1/heart_rate/heart_rate_must_support_test.rb +7 -7
  103. data/lib/us_core_test_kit/generated/v5.0.1/heart_rate/metadata.yml +13 -9
  104. data/lib/us_core_test_kit/generated/v5.0.1/immunization/metadata.yml +2 -0
  105. data/lib/us_core_test_kit/generated/v5.0.1/medication_request/metadata.yml +6 -1
  106. data/lib/us_core_test_kit/generated/v5.0.1/metadata.yml +328 -161
  107. data/lib/us_core_test_kit/generated/v5.0.1/observation_clinical_test/metadata.yml +4 -1
  108. data/lib/us_core_test_kit/generated/v5.0.1/observation_imaging/metadata.yml +4 -1
  109. data/lib/us_core_test_kit/generated/v5.0.1/observation_lab/metadata.yml +4 -1
  110. data/lib/us_core_test_kit/generated/v5.0.1/observation_sdoh_assessment/metadata.yml +6 -2
  111. data/lib/us_core_test_kit/generated/v5.0.1/observation_sexual_orientation/metadata.yml +4 -1
  112. data/lib/us_core_test_kit/generated/v5.0.1/observation_social_history/metadata.yml +6 -2
  113. data/lib/us_core_test_kit/generated/v5.0.1/organization/metadata.yml +2 -1
  114. data/lib/us_core_test_kit/generated/v5.0.1/pediatric_bmi_for_age/metadata.yml +13 -9
  115. data/lib/us_core_test_kit/generated/v5.0.1/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
  116. data/lib/us_core_test_kit/generated/v5.0.1/pediatric_weight_for_height/metadata.yml +13 -9
  117. data/lib/us_core_test_kit/generated/v5.0.1/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
  118. data/lib/us_core_test_kit/generated/v5.0.1/practitioner/metadata.yml +2 -1
  119. data/lib/us_core_test_kit/generated/v5.0.1/procedure/metadata.yml +2 -0
  120. data/lib/us_core_test_kit/generated/v5.0.1/provenance/metadata.yml +8 -6
  121. data/lib/us_core_test_kit/generated/v5.0.1/provenance/provenance_must_support_test.rb +2 -1
  122. data/lib/us_core_test_kit/generated/v5.0.1/pulse_oximetry/metadata.yml +38 -22
  123. data/lib/us_core_test_kit/generated/v5.0.1/pulse_oximetry/pulse_oximetry_must_support_test.rb +15 -8
  124. data/lib/us_core_test_kit/generated/v5.0.1/questionnaire_response/metadata.yml +4 -1
  125. data/lib/us_core_test_kit/generated/v5.0.1/related_person/metadata.yml +2 -0
  126. data/lib/us_core_test_kit/generated/v5.0.1/respiratory_rate/metadata.yml +13 -9
  127. data/lib/us_core_test_kit/generated/v5.0.1/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
  128. data/lib/us_core_test_kit/generated/v5.0.1/service_request/metadata.yml +4 -1
  129. data/lib/us_core_test_kit/generated/v5.0.1/smokingstatus/metadata.yml +8 -3
  130. data/lib/us_core_test_kit/generated/v6.1.0/allergy_intolerance/metadata.yml +2 -0
  131. data/lib/us_core_test_kit/generated/v6.1.0/blood_pressure/blood_pressure_must_support_test.rb +18 -8
  132. data/lib/us_core_test_kit/generated/v6.1.0/blood_pressure/metadata.yml +40 -20
  133. data/lib/us_core_test_kit/generated/v6.1.0/bmi/bmi_must_support_test.rb +7 -7
  134. data/lib/us_core_test_kit/generated/v6.1.0/bmi/metadata.yml +17 -13
  135. data/lib/us_core_test_kit/generated/v6.1.0/body_height/body_height_must_support_test.rb +7 -7
  136. data/lib/us_core_test_kit/generated/v6.1.0/body_height/metadata.yml +17 -13
  137. data/lib/us_core_test_kit/generated/v6.1.0/body_temperature/body_temperature_must_support_test.rb +7 -7
  138. data/lib/us_core_test_kit/generated/v6.1.0/body_temperature/metadata.yml +17 -13
  139. data/lib/us_core_test_kit/generated/v6.1.0/body_weight/body_weight_must_support_test.rb +7 -7
  140. data/lib/us_core_test_kit/generated/v6.1.0/body_weight/metadata.yml +17 -13
  141. data/lib/us_core_test_kit/generated/v6.1.0/care_plan/metadata.yml +4 -1
  142. data/lib/us_core_test_kit/generated/v6.1.0/care_team/metadata.yml +2 -0
  143. data/lib/us_core_test_kit/generated/v6.1.0/condition_encounter_diagnosis/metadata.yml +6 -1
  144. data/lib/us_core_test_kit/generated/v6.1.0/condition_problems_health_concerns/metadata.yml +6 -2
  145. data/lib/us_core_test_kit/generated/v6.1.0/coverage/coverage_must_support_test.rb +5 -3
  146. data/lib/us_core_test_kit/generated/v6.1.0/coverage/metadata.yml +13 -7
  147. data/lib/us_core_test_kit/generated/v6.1.0/device/metadata.yml +2 -0
  148. data/lib/us_core_test_kit/generated/v6.1.0/diagnostic_report_lab/metadata.yml +6 -1
  149. data/lib/us_core_test_kit/generated/v6.1.0/diagnostic_report_note/metadata.yml +6 -1
  150. data/lib/us_core_test_kit/generated/v6.1.0/document_reference/metadata.yml +6 -1
  151. data/lib/us_core_test_kit/generated/v6.1.0/encounter/metadata.yml +4 -0
  152. data/lib/us_core_test_kit/generated/v6.1.0/goal/metadata.yml +2 -0
  153. data/lib/us_core_test_kit/generated/v6.1.0/head_circumference/head_circumference_must_support_test.rb +7 -7
  154. data/lib/us_core_test_kit/generated/v6.1.0/head_circumference/metadata.yml +17 -13
  155. data/lib/us_core_test_kit/generated/v6.1.0/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
  156. data/lib/us_core_test_kit/generated/v6.1.0/head_circumference_percentile/metadata.yml +17 -13
  157. data/lib/us_core_test_kit/generated/v6.1.0/heart_rate/heart_rate_must_support_test.rb +7 -7
  158. data/lib/us_core_test_kit/generated/v6.1.0/heart_rate/metadata.yml +17 -13
  159. data/lib/us_core_test_kit/generated/v6.1.0/immunization/metadata.yml +2 -0
  160. data/lib/us_core_test_kit/generated/v6.1.0/medication_dispense/metadata.yml +4 -0
  161. data/lib/us_core_test_kit/generated/v6.1.0/medication_request/metadata.yml +6 -1
  162. data/lib/us_core_test_kit/generated/v6.1.0/metadata.yml +417 -226
  163. data/lib/us_core_test_kit/generated/v6.1.0/observation_clinical_result/metadata.yml +4 -1
  164. data/lib/us_core_test_kit/generated/v6.1.0/observation_lab/metadata.yml +6 -1
  165. data/lib/us_core_test_kit/generated/v6.1.0/observation_occupation/metadata.yml +12 -7
  166. data/lib/us_core_test_kit/generated/v6.1.0/observation_occupation/observation_occupation_must_support_test.rb +2 -2
  167. data/lib/us_core_test_kit/generated/v6.1.0/observation_pregnancyintent/metadata.yml +8 -3
  168. data/lib/us_core_test_kit/generated/v6.1.0/observation_pregnancystatus/metadata.yml +8 -3
  169. data/lib/us_core_test_kit/generated/v6.1.0/observation_screening_assessment/metadata.yml +6 -2
  170. data/lib/us_core_test_kit/generated/v6.1.0/observation_sexual_orientation/metadata.yml +4 -1
  171. data/lib/us_core_test_kit/generated/v6.1.0/organization/metadata.yml +2 -1
  172. data/lib/us_core_test_kit/generated/v6.1.0/pediatric_bmi_for_age/metadata.yml +17 -13
  173. data/lib/us_core_test_kit/generated/v6.1.0/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
  174. data/lib/us_core_test_kit/generated/v6.1.0/pediatric_weight_for_height/metadata.yml +17 -13
  175. data/lib/us_core_test_kit/generated/v6.1.0/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
  176. data/lib/us_core_test_kit/generated/v6.1.0/practitioner/metadata.yml +2 -1
  177. data/lib/us_core_test_kit/generated/v6.1.0/procedure/metadata.yml +2 -0
  178. data/lib/us_core_test_kit/generated/v6.1.0/provenance/metadata.yml +8 -6
  179. data/lib/us_core_test_kit/generated/v6.1.0/provenance/provenance_must_support_test.rb +2 -1
  180. data/lib/us_core_test_kit/generated/v6.1.0/pulse_oximetry/metadata.yml +48 -31
  181. data/lib/us_core_test_kit/generated/v6.1.0/pulse_oximetry/pulse_oximetry_must_support_test.rb +19 -12
  182. data/lib/us_core_test_kit/generated/v6.1.0/questionnaire_response/metadata.yml +2 -0
  183. data/lib/us_core_test_kit/generated/v6.1.0/related_person/metadata.yml +2 -0
  184. data/lib/us_core_test_kit/generated/v6.1.0/respiratory_rate/metadata.yml +17 -13
  185. data/lib/us_core_test_kit/generated/v6.1.0/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
  186. data/lib/us_core_test_kit/generated/v6.1.0/service_request/metadata.yml +4 -1
  187. data/lib/us_core_test_kit/generated/v6.1.0/simple_observation/metadata.yml +4 -1
  188. data/lib/us_core_test_kit/generated/v6.1.0/smokingstatus/metadata.yml +6 -2
  189. data/lib/us_core_test_kit/generated/v6.1.0/specimen/metadata.yml +2 -0
  190. data/lib/us_core_test_kit/generator/must_support_metadata_extractor.rb +56 -26
  191. data/lib/us_core_test_kit/generator/must_support_test_generator.rb +1 -1
  192. data/lib/us_core_test_kit/must_support_test.rb +2 -5
  193. data/lib/us_core_test_kit/reference_resolution_test.rb +2 -2
  194. data/lib/us_core_test_kit/version.rb +1 -1
  195. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68ac411f63c86114f8a144f0e16768ac116b09cc8bf4c7568af12f2e223e17e0
4
- data.tar.gz: '08e4599ff6099d98ab78b463d04100edcf4cc662f51a89f386801f598cd9138c'
3
+ metadata.gz: '085de7c8f5dfbf5411a51b4716939b476155eaa9a138134e62315893a997f12c'
4
+ data.tar.gz: 89dd64e5438427306397c2cee443cadd4584aed6a74dc02c4f6094d742ed2810
5
5
  SHA512:
6
- metadata.gz: f9317e5e66be91e6ff8b6ad3c021fd245221fe6ec3ab6ec5cb78a193b1913371653aed09b7fdeec9db3373ab79d9e757e858b284b44016839c0430de3b42d6da
7
- data.tar.gz: ca64fa89537af72ddf5ae092e89f40abb867549c228b47596983b3efdbe1551330e4c9375fe5ad3eced41f6839e02443554b2326d89f0b1c29ee0c2ea94298ea
6
+ metadata.gz: 006a7404ef31b5b936456e487b3e81baaaa7b889452ad2688ed36d7947c255209f933d9c6987cc117ccd0c25afa6280cb9efc4f5ca4f8ae824b077354e2d603e
7
+ data.tar.gz: fbb0ade67a651b55cf4641c49955b3fc9939e0d25fc8e6c4b755788869b3a1d3d4aff8a9265894e6d5fadc48a13e7601193331bcc4f308f23bb6f7b792988505
@@ -20,7 +20,6 @@ module USCoreTestKit
20
20
  return nil if element.nil?
21
21
 
22
22
  elements = Array.wrap(element)
23
-
24
23
  if path.empty?
25
24
  unless include_dar
26
25
  elements = elements.reject do |el|
@@ -29,24 +28,20 @@ module USCoreTestKit
29
28
  end
30
29
 
31
30
  return elements.find { |el| yield(el) } if block_given?
32
-
33
31
  return elements.first
34
32
  end
35
33
 
36
34
  path_segments = path.split(/(?<!hl7)\./)
37
- segment = path_segments.shift.delete_suffix('[x]').gsub(/^class$/, 'local_class').to_sym
38
35
 
36
+ segment = path_segments.shift.delete_suffix('[x]').gsub(/^class$/, 'local_class').gsub(/\[x\]:/, ':').to_sym
39
37
  no_elements_present =
40
38
  elements.none? do |element|
41
39
  child = get_next_value(element, segment)
42
-
43
40
  child.present? || child == false
44
41
  end
45
-
46
42
  return nil if no_elements_present
47
43
 
48
44
  remaining_path = path_segments.join('.')
49
-
50
45
  elements.each do |element|
51
46
  child = get_next_value(element, segment)
52
47
  element_found =
@@ -55,7 +50,6 @@ module USCoreTestKit
55
50
  else
56
51
  find_a_value_at(child, remaining_path, include_dar: include_dar)
57
52
  end
58
-
59
53
  return element_found if element_found.present? || element_found == false
60
54
  end
61
55
 
@@ -64,14 +58,88 @@ module USCoreTestKit
64
58
 
65
59
  def get_next_value(element, property)
66
60
  extension_url = property[/(?<=where\(url=').*(?='\))/]
67
-
68
61
  if extension_url.present?
69
62
  element.url == extension_url ? element : nil
63
+ elsif property.to_s.include?(':') && !property.to_s.include?('url')
64
+ slice = find_slice_via_discriminator(element, property)
65
+ slice
70
66
  else
71
67
  element.send(property)
72
68
  end
73
69
  rescue NoMethodError
74
70
  nil
75
71
  end
72
+
73
+ def find_slice_via_discriminator(element, property)
74
+ element_name = property.to_s.split(':')[0].gsub(/^class$/, 'local_class')
75
+ slice_name = property.to_s.split(':')[1].gsub(/^class$/, 'local_class')
76
+ if metadata.present?
77
+ slice_by_name = metadata.must_supports[:slices].find{ |slice| slice[:slice_name] == slice_name }
78
+ discriminator = slice_by_name[:discriminator]
79
+ slices = Array.wrap(element.send(element_name))
80
+ slices.find do |slice|
81
+ case discriminator[:type]
82
+ when 'patternCodeableConcept'
83
+ slice_value = discriminator[:path].present? ? slice.send("#{discriminator[:path]}").coding : slice.coding
84
+ slice_value.any? { |coding| coding.code == discriminator[:code] && coding.system == discriminator[:system] }
85
+ when 'patternCoding'
86
+ slice_value = discriminator[:path].present? ? slice.send(discriminator[:path]) : slice
87
+ slice_value.code == discriminator[:code] && slice_value.system == discriminator[:system]
88
+ when 'patternIdentifier'
89
+ slice.identifier.system == discriminator[:system]
90
+ when 'value'
91
+ values = discriminator[:values].map { |value| value.merge(path: value[:path].split('.')) }
92
+ verify_slice_by_values(slice, values)
93
+ when 'type'
94
+ case discriminator[:code]
95
+ when 'Date'
96
+ begin
97
+ Date.parse(slice)
98
+ rescue ArgumentError
99
+ false
100
+ end
101
+ when 'DateTime'
102
+ begin
103
+ DateTime.parse(slice)
104
+ rescue ArgumentError
105
+ false
106
+ end
107
+ when 'String'
108
+ slice.is_a? String
109
+ else
110
+ slice.is_a? FHIR.const_get(discriminator[:code])
111
+ end
112
+ when 'requiredBinding'
113
+ slice_value = discriminator[:path].present? ? slice.send("#{discriminator[:path]}").coding : slice.coding
114
+ slice_value {|coding| discriminator[:values].include?(coding.code) }
115
+ end
116
+ end
117
+ else
118
+ #TODO: Error handling for if this file doesn't have access to metadata for some reason (begin/rescue with StandardError?)
119
+ end
120
+ end
121
+
122
+ def verify_slice_by_values(element, value_definitions)
123
+ path_prefixes = value_definitions.map { |value_definition| value_definition[:path].first }.uniq
124
+ path_prefixes.all? do |path_prefix|
125
+ value_definitions_for_path =
126
+ value_definitions
127
+ .select { |value_definition| value_definition[:path].first == path_prefix }
128
+ .each { |value_definition| value_definition[:path].shift }
129
+ find_a_value_at(element, path_prefix) do |el_found|
130
+ child_element_value_definitions, current_element_value_definitions =
131
+ value_definitions_for_path.partition { |value_definition| value_definition[:path].present? }
132
+
133
+ current_element_values_match =
134
+ current_element_value_definitions
135
+ .all? { |value_definition| value_definition[:value] == el_found }
136
+
137
+ child_element_values_match =
138
+ child_element_value_definitions.present? ?
139
+ verify_slice_by_values(el_found, child_element_value_definitions) : true
140
+ current_element_values_match && child_element_values_match
141
+ end
142
+ end
143
+ end
76
144
  end
77
145
  end
@@ -13,20 +13,20 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code
21
21
  * Observation.effective[x]
22
22
  * Observation.status
23
23
  * Observation.subject
24
24
  * Observation.value[x]
25
- * Observation.value[x].code
26
- * Observation.value[x].system
27
- * Observation.value[x].unit
28
- * Observation.value[x].value
29
25
  * Observation.value[x]:valueQuantity
26
+ * Observation.value[x]:valueQuantity.code
27
+ * Observation.value[x]:valueQuantity.system
28
+ * Observation.value[x]:valueQuantity.unit
29
+ * Observation.value[x]:valueQuantity.value
30
30
  )
31
31
 
32
32
  id :us_core_v311_bodyheight_must_support_test
@@ -141,12 +141,14 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.value[x]:valueQuantity
144
+ - :slice_id: Observation.value[x]:valueQuantity
145
+ :slice_name: valueQuantity
145
146
  :path: value[x]
146
147
  :discriminator:
147
148
  :type: type
148
149
  :code: Quantity
149
- - :name: Observation.category:VSCat
150
+ - :slice_id: Observation.category:VSCat
151
+ :slice_name: VSCat
150
152
  :path: category
151
153
  :discriminator:
152
154
  :type: value
@@ -158,10 +160,10 @@
158
160
  :elements:
159
161
  - :path: status
160
162
  - :path: category
161
- - :path: category.coding
162
- - :path: category.coding.system
163
+ - :path: category:VSCat.coding
164
+ - :path: category:VSCat.coding.system
163
165
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
164
- - :path: category.coding.code
166
+ - :path: category:VSCat.coding.code
165
167
  :fixed_value: vital-signs
166
168
  - :path: code
167
169
  - :path: subject
@@ -169,11 +171,11 @@
169
171
  - Reference
170
172
  - :path: effective[x]
171
173
  - :path: value[x]
172
- - :path: value[x].value
173
- - :path: value[x].unit
174
- - :path: value[x].system
174
+ - :path: value[x]:valueQuantity.value
175
+ - :path: value[x]:valueQuantity.unit
176
+ - :path: value[x]:valueQuantity.system
175
177
  :fixed_value: http://unitsofmeasure.org
176
- - :path: value[x].code
178
+ - :path: value[x]:valueQuantity.code
177
179
  :mandatory_elements:
178
180
  - Observation.status
179
181
  - Observation.category
@@ -13,20 +13,20 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code
21
21
  * Observation.effective[x]
22
22
  * Observation.status
23
23
  * Observation.subject
24
24
  * Observation.value[x]
25
- * Observation.value[x].code
26
- * Observation.value[x].system
27
- * Observation.value[x].unit
28
- * Observation.value[x].value
29
25
  * Observation.value[x]:valueQuantity
26
+ * Observation.value[x]:valueQuantity.code
27
+ * Observation.value[x]:valueQuantity.system
28
+ * Observation.value[x]:valueQuantity.unit
29
+ * Observation.value[x]:valueQuantity.value
30
30
  )
31
31
 
32
32
  id :us_core_v311_bodytemp_must_support_test
@@ -141,12 +141,14 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.value[x]:valueQuantity
144
+ - :slice_id: Observation.value[x]:valueQuantity
145
+ :slice_name: valueQuantity
145
146
  :path: value[x]
146
147
  :discriminator:
147
148
  :type: type
148
149
  :code: Quantity
149
- - :name: Observation.category:VSCat
150
+ - :slice_id: Observation.category:VSCat
151
+ :slice_name: VSCat
150
152
  :path: category
151
153
  :discriminator:
152
154
  :type: value
@@ -158,10 +160,10 @@
158
160
  :elements:
159
161
  - :path: status
160
162
  - :path: category
161
- - :path: category.coding
162
- - :path: category.coding.system
163
+ - :path: category:VSCat.coding
164
+ - :path: category:VSCat.coding.system
163
165
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
164
- - :path: category.coding.code
166
+ - :path: category:VSCat.coding.code
165
167
  :fixed_value: vital-signs
166
168
  - :path: code
167
169
  - :path: subject
@@ -169,11 +171,11 @@
169
171
  - Reference
170
172
  - :path: effective[x]
171
173
  - :path: value[x]
172
- - :path: value[x].value
173
- - :path: value[x].unit
174
- - :path: value[x].system
174
+ - :path: value[x]:valueQuantity.value
175
+ - :path: value[x]:valueQuantity.unit
176
+ - :path: value[x]:valueQuantity.system
175
177
  :fixed_value: http://unitsofmeasure.org
176
- - :path: value[x].code
178
+ - :path: value[x]:valueQuantity.code
177
179
  :mandatory_elements:
178
180
  - Observation.status
179
181
  - Observation.category
@@ -13,20 +13,20 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code
21
21
  * Observation.effective[x]
22
22
  * Observation.status
23
23
  * Observation.subject
24
24
  * Observation.value[x]
25
- * Observation.value[x].code
26
- * Observation.value[x].system
27
- * Observation.value[x].unit
28
- * Observation.value[x].value
29
25
  * Observation.value[x]:valueQuantity
26
+ * Observation.value[x]:valueQuantity.code
27
+ * Observation.value[x]:valueQuantity.system
28
+ * Observation.value[x]:valueQuantity.unit
29
+ * Observation.value[x]:valueQuantity.value
30
30
  )
31
31
 
32
32
  id :us_core_v311_bodyweight_must_support_test
@@ -141,12 +141,14 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.value[x]:valueQuantity
144
+ - :slice_id: Observation.value[x]:valueQuantity
145
+ :slice_name: valueQuantity
145
146
  :path: value[x]
146
147
  :discriminator:
147
148
  :type: type
148
149
  :code: Quantity
149
- - :name: Observation.category:VSCat
150
+ - :slice_id: Observation.category:VSCat
151
+ :slice_name: VSCat
150
152
  :path: category
151
153
  :discriminator:
152
154
  :type: value
@@ -158,10 +160,10 @@
158
160
  :elements:
159
161
  - :path: status
160
162
  - :path: category
161
- - :path: category.coding
162
- - :path: category.coding.system
163
+ - :path: category:VSCat.coding
164
+ - :path: category:VSCat.coding.system
163
165
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
164
- - :path: category.coding.code
166
+ - :path: category:VSCat.coding.code
165
167
  :fixed_value: vital-signs
166
168
  - :path: code
167
169
  - :path: subject
@@ -169,11 +171,11 @@
169
171
  - Reference
170
172
  - :path: effective[x]
171
173
  - :path: value[x]
172
- - :path: value[x].value
173
- - :path: value[x].unit
174
- - :path: value[x].system
174
+ - :path: value[x]:valueQuantity.value
175
+ - :path: value[x]:valueQuantity.unit
176
+ - :path: value[x]:valueQuantity.system
175
177
  :fixed_value: http://unitsofmeasure.org
176
- - :path: value[x].code
178
+ - :path: value[x]:valueQuantity.code
177
179
  :mandatory_elements:
178
180
  - Observation.status
179
181
  - Observation.category
@@ -13,20 +13,28 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code
21
21
  * Observation.component
22
22
  * Observation.component.code
23
23
  * Observation.component.value[x]
24
- * Observation.component.value[x].code
25
- * Observation.component.value[x].system
26
- * Observation.component.value[x].unit
27
- * Observation.component.value[x].value
28
24
  * Observation.component:DiastolicBP
25
+ * Observation.component:DiastolicBP.code
26
+ * Observation.component:DiastolicBP.value[x]
27
+ * Observation.component:DiastolicBP.value[x].code
28
+ * Observation.component:DiastolicBP.value[x].system
29
+ * Observation.component:DiastolicBP.value[x].unit
30
+ * Observation.component:DiastolicBP.value[x].value
29
31
  * Observation.component:SystolicBP
32
+ * Observation.component:SystolicBP.code
33
+ * Observation.component:SystolicBP.value[x]
34
+ * Observation.component:SystolicBP.value[x].code
35
+ * Observation.component:SystolicBP.value[x].system
36
+ * Observation.component:SystolicBP.value[x].unit
37
+ * Observation.component:SystolicBP.value[x].value
30
38
  * Observation.effective[x]
31
39
  * Observation.status
32
40
  * Observation.subject
@@ -141,7 +141,8 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.category:VSCat
144
+ - :slice_id: Observation.category:VSCat
145
+ :slice_name: VSCat
145
146
  :path: category
146
147
  :discriminator:
147
148
  :type: value
@@ -150,7 +151,8 @@
150
151
  :value: vital-signs
151
152
  - :path: coding.system
152
153
  :value: http://terminology.hl7.org/CodeSystem/observation-category
153
- - :name: Observation.component:SystolicBP
154
+ - :slice_id: Observation.component:SystolicBP
155
+ :slice_name: SystolicBP
154
156
  :path: component
155
157
  :discriminator:
156
158
  :type: value
@@ -159,7 +161,8 @@
159
161
  :value: 8480-6
160
162
  - :path: code.coding.system
161
163
  :value: http://loinc.org
162
- - :name: Observation.component:DiastolicBP
164
+ - :slice_id: Observation.component:DiastolicBP
165
+ :slice_name: DiastolicBP
163
166
  :path: component
164
167
  :discriminator:
165
168
  :type: value
@@ -171,10 +174,10 @@
171
174
  :elements:
172
175
  - :path: status
173
176
  - :path: category
174
- - :path: category.coding
175
- - :path: category.coding.system
177
+ - :path: category:VSCat.coding
178
+ - :path: category:VSCat.coding.system
176
179
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
177
- - :path: category.coding.code
180
+ - :path: category:VSCat.coding.code
178
181
  :fixed_value: vital-signs
179
182
  - :path: code
180
183
  - :path: subject
@@ -182,14 +185,24 @@
182
185
  - Reference
183
186
  - :path: effective[x]
184
187
  - :path: component
185
- - :path: component.value[x].system
186
- :fixed_value: http://unitsofmeasure.org
187
- - :path: component.value[x].code
188
- :fixed_value: mm[Hg]
189
188
  - :path: component.code
190
189
  - :path: component.value[x]
191
- - :path: component.value[x].value
192
- - :path: component.value[x].unit
190
+ - :path: component:SystolicBP.code
191
+ - :path: component:SystolicBP.value[x]
192
+ - :path: component:SystolicBP.value[x].value
193
+ - :path: component:SystolicBP.value[x].unit
194
+ - :path: component:SystolicBP.value[x].system
195
+ :fixed_value: http://unitsofmeasure.org
196
+ - :path: component:SystolicBP.value[x].code
197
+ :fixed_value: mm[Hg]
198
+ - :path: component:DiastolicBP.code
199
+ - :path: component:DiastolicBP.value[x]
200
+ - :path: component:DiastolicBP.value[x].value
201
+ - :path: component:DiastolicBP.value[x].unit
202
+ - :path: component:DiastolicBP.value[x].system
203
+ :fixed_value: http://unitsofmeasure.org
204
+ - :path: component:DiastolicBP.value[x].code
205
+ :fixed_value: mm[Hg]
193
206
  :mandatory_elements:
194
207
  - Observation.status
195
208
  - Observation.category
@@ -126,7 +126,8 @@
126
126
  :must_supports:
127
127
  :extensions: []
128
128
  :slices:
129
- - :name: CarePlan.category:AssessPlan
129
+ - :slice_id: CarePlan.category:AssessPlan
130
+ :slice_name: AssessPlan
130
131
  :path: category
131
132
  :discriminator:
132
133
  :type: patternCodeableConcept
@@ -146,7 +146,8 @@
146
146
  :must_supports:
147
147
  :extensions: []
148
148
  :slices:
149
- - :name: DiagnosticReport.category:LaboratorySlice
149
+ - :slice_id: DiagnosticReport.category:LaboratorySlice
150
+ :slice_name: LaboratorySlice
150
151
  :path: category
151
152
  :discriminator:
152
153
  :type: patternCodeableConcept
@@ -104,7 +104,8 @@
104
104
  :must_supports:
105
105
  :extensions: []
106
106
  :slices:
107
- - :name: Goal.target.due[x]:dueDate
107
+ - :slice_id: Goal.target.due[x]:dueDate
108
+ :slice_name: dueDate
108
109
  :path: target.due[x]
109
110
  :discriminator:
110
111
  :type: type
@@ -13,20 +13,20 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code.coding.code
21
21
  * Observation.effective[x]
22
22
  * Observation.status
23
23
  * Observation.subject
24
24
  * Observation.value[x]
25
- * Observation.value[x].code
26
- * Observation.value[x].system
27
- * Observation.value[x].unit
28
- * Observation.value[x].value
29
25
  * Observation.value[x]:valueQuantity
26
+ * Observation.value[x]:valueQuantity.code
27
+ * Observation.value[x]:valueQuantity.system
28
+ * Observation.value[x]:valueQuantity.unit
29
+ * Observation.value[x]:valueQuantity.value
30
30
  )
31
31
 
32
32
  id :us_core_v311_head_circumference_must_support_test
@@ -141,12 +141,14 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.value[x]:valueQuantity
144
+ - :slice_id: Observation.value[x]:valueQuantity
145
+ :slice_name: valueQuantity
145
146
  :path: value[x]
146
147
  :discriminator:
147
148
  :type: type
148
149
  :code: Quantity
149
- - :name: Observation.category:VSCat
150
+ - :slice_id: Observation.category:VSCat
151
+ :slice_name: VSCat
150
152
  :path: category
151
153
  :discriminator:
152
154
  :type: value
@@ -158,10 +160,10 @@
158
160
  :elements:
159
161
  - :path: status
160
162
  - :path: category
161
- - :path: category.coding
162
- - :path: category.coding.system
163
+ - :path: category:VSCat.coding
164
+ - :path: category:VSCat.coding.system
163
165
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
164
- - :path: category.coding.code
166
+ - :path: category:VSCat.coding.code
165
167
  :fixed_value: vital-signs
166
168
  - :path: code.coding.code
167
169
  :fixed_value: 8289-1
@@ -170,11 +172,11 @@
170
172
  - Reference
171
173
  - :path: effective[x]
172
174
  - :path: value[x]
173
- - :path: value[x].value
174
- - :path: value[x].unit
175
- - :path: value[x].system
175
+ - :path: value[x]:valueQuantity.value
176
+ - :path: value[x]:valueQuantity.unit
177
+ - :path: value[x]:valueQuantity.system
176
178
  :fixed_value: http://unitsofmeasure.org
177
- - :path: value[x].code
179
+ - :path: value[x]:valueQuantity.code
178
180
  :fixed_value: "%"
179
181
  :mandatory_elements:
180
182
  - Observation.status
@@ -13,20 +13,20 @@ module USCoreTestKit
13
13
  found previously for the following must support elements:
14
14
 
15
15
  * Observation.category
16
- * Observation.category.coding
17
- * Observation.category.coding.code
18
- * Observation.category.coding.system
19
16
  * Observation.category:VSCat
17
+ * Observation.category:VSCat.coding
18
+ * Observation.category:VSCat.coding.code
19
+ * Observation.category:VSCat.coding.system
20
20
  * Observation.code
21
21
  * Observation.effective[x]
22
22
  * Observation.status
23
23
  * Observation.subject
24
24
  * Observation.value[x]
25
- * Observation.value[x].code
26
- * Observation.value[x].system
27
- * Observation.value[x].unit
28
- * Observation.value[x].value
29
25
  * Observation.value[x]:valueQuantity
26
+ * Observation.value[x]:valueQuantity.code
27
+ * Observation.value[x]:valueQuantity.system
28
+ * Observation.value[x]:valueQuantity.unit
29
+ * Observation.value[x]:valueQuantity.value
30
30
  )
31
31
 
32
32
  id :us_core_v311_heartrate_must_support_test
@@ -141,12 +141,14 @@
141
141
  :must_supports:
142
142
  :extensions: []
143
143
  :slices:
144
- - :name: Observation.value[x]:valueQuantity
144
+ - :slice_id: Observation.value[x]:valueQuantity
145
+ :slice_name: valueQuantity
145
146
  :path: value[x]
146
147
  :discriminator:
147
148
  :type: type
148
149
  :code: Quantity
149
- - :name: Observation.category:VSCat
150
+ - :slice_id: Observation.category:VSCat
151
+ :slice_name: VSCat
150
152
  :path: category
151
153
  :discriminator:
152
154
  :type: value
@@ -158,10 +160,10 @@
158
160
  :elements:
159
161
  - :path: status
160
162
  - :path: category
161
- - :path: category.coding
162
- - :path: category.coding.system
163
+ - :path: category:VSCat.coding
164
+ - :path: category:VSCat.coding.system
163
165
  :fixed_value: http://terminology.hl7.org/CodeSystem/observation-category
164
- - :path: category.coding.code
166
+ - :path: category:VSCat.coding.code
165
167
  :fixed_value: vital-signs
166
168
  - :path: code
167
169
  - :path: subject
@@ -169,11 +171,11 @@
169
171
  - Reference
170
172
  - :path: effective[x]
171
173
  - :path: value[x]
172
- - :path: value[x].value
173
- - :path: value[x].unit
174
- - :path: value[x].system
174
+ - :path: value[x]:valueQuantity.value
175
+ - :path: value[x]:valueQuantity.unit
176
+ - :path: value[x]:valueQuantity.system
175
177
  :fixed_value: http://unitsofmeasure.org
176
- - :path: value[x].code
178
+ - :path: value[x]:valueQuantity.code
177
179
  :fixed_value: "/min"
178
180
  :mandatory_elements:
179
181
  - Observation.status