us_core_test_kit 0.6.1 → 0.6.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/us_core_test_kit/fhir_resource_navigation.rb +76 -8
- data/lib/us_core_test_kit/generated/v3.1.1/bodyheight/bodyheight_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/bodyheight/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/bodytemp/bodytemp_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/bodytemp/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/bodyweight/bodyweight_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/bodyweight/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/bp/bp_must_support_test.rb +15 -7
- data/lib/us_core_test_kit/generated/v3.1.1/bp/metadata.yml +25 -12
- data/lib/us_core_test_kit/generated/v3.1.1/care_plan/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/diagnostic_report_lab/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/goal/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/head_circumference/head_circumference_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/head_circumference/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/heartrate/heartrate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/heartrate/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/metadata.yml +166 -121
- data/lib/us_core_test_kit/generated/v3.1.1/observation_lab/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/organization/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/pediatric_bmi_for_age/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/pediatric_weight_for_height/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/practitioner/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/provenance/metadata.yml +6 -6
- data/lib/us_core_test_kit/generated/v3.1.1/provenance/provenance_must_support_test.rb +2 -1
- data/lib/us_core_test_kit/generated/v3.1.1/pulse_oximetry/metadata.yml +33 -24
- data/lib/us_core_test_kit/generated/v3.1.1/pulse_oximetry/pulse_oximetry_must_support_test.rb +21 -14
- data/lib/us_core_test_kit/generated/v3.1.1/resprate/metadata.yml +11 -9
- data/lib/us_core_test_kit/generated/v3.1.1/resprate/resprate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v3.1.1/smokingstatus/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v4.0.0/allergy_intolerance/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/blood_pressure/blood_pressure_must_support_test.rb +15 -8
- data/lib/us_core_test_kit/generated/v4.0.0/blood_pressure/metadata.yml +37 -20
- data/lib/us_core_test_kit/generated/v4.0.0/bmi/bmi_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/bmi/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/body_height/body_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/body_height/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/body_temperature/body_temperature_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/body_temperature/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/body_weight/body_weight_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/body_weight/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/care_plan/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v4.0.0/care_team/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/condition/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/device/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/diagnostic_report_lab/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v4.0.0/diagnostic_report_note/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v4.0.0/document_reference/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v4.0.0/encounter/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v4.0.0/goal/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/head_circumference/head_circumference_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/head_circumference/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/head_circumference_percentile/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/heart_rate/heart_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/heart_rate/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/immunization/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/medication_request/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v4.0.0/metadata.yml +275 -146
- data/lib/us_core_test_kit/generated/v4.0.0/observation_lab/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v4.0.0/organization/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v4.0.0/pediatric_bmi_for_age/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/pediatric_weight_for_height/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/practitioner/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v4.0.0/procedure/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v4.0.0/provenance/metadata.yml +8 -6
- data/lib/us_core_test_kit/generated/v4.0.0/provenance/provenance_must_support_test.rb +2 -1
- data/lib/us_core_test_kit/generated/v4.0.0/pulse_oximetry/metadata.yml +38 -22
- data/lib/us_core_test_kit/generated/v4.0.0/pulse_oximetry/pulse_oximetry_must_support_test.rb +15 -8
- data/lib/us_core_test_kit/generated/v4.0.0/respiratory_rate/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v4.0.0/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v4.0.0/smokingstatus/metadata.yml +8 -3
- data/lib/us_core_test_kit/generated/v5.0.1/allergy_intolerance/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/blood_pressure/blood_pressure_must_support_test.rb +18 -8
- data/lib/us_core_test_kit/generated/v5.0.1/blood_pressure/metadata.yml +40 -20
- data/lib/us_core_test_kit/generated/v5.0.1/bmi/bmi_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/bmi/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/body_height/body_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/body_height/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/body_temperature/body_temperature_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/body_temperature/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/body_weight/body_weight_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/body_weight/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/care_plan/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/care_team/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/condition_encounter_diagnosis/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v5.0.1/condition_problems_health_concerns/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v5.0.1/device/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/diagnostic_report_lab/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v5.0.1/diagnostic_report_note/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v5.0.1/document_reference/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v5.0.1/encounter/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v5.0.1/goal/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/head_circumference/head_circumference_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/head_circumference/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/head_circumference_percentile/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/heart_rate/heart_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/heart_rate/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/immunization/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/medication_request/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v5.0.1/metadata.yml +328 -161
- data/lib/us_core_test_kit/generated/v5.0.1/observation_clinical_test/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/observation_imaging/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/observation_lab/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/observation_sdoh_assessment/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v5.0.1/observation_sexual_orientation/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/observation_social_history/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v5.0.1/organization/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v5.0.1/pediatric_bmi_for_age/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/pediatric_weight_for_height/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/practitioner/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v5.0.1/procedure/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/provenance/metadata.yml +8 -6
- data/lib/us_core_test_kit/generated/v5.0.1/provenance/provenance_must_support_test.rb +2 -1
- data/lib/us_core_test_kit/generated/v5.0.1/pulse_oximetry/metadata.yml +38 -22
- data/lib/us_core_test_kit/generated/v5.0.1/pulse_oximetry/pulse_oximetry_must_support_test.rb +15 -8
- data/lib/us_core_test_kit/generated/v5.0.1/questionnaire_response/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/related_person/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v5.0.1/respiratory_rate/metadata.yml +13 -9
- data/lib/us_core_test_kit/generated/v5.0.1/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v5.0.1/service_request/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v5.0.1/smokingstatus/metadata.yml +8 -3
- data/lib/us_core_test_kit/generated/v6.1.0/allergy_intolerance/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/blood_pressure/blood_pressure_must_support_test.rb +18 -8
- data/lib/us_core_test_kit/generated/v6.1.0/blood_pressure/metadata.yml +40 -20
- data/lib/us_core_test_kit/generated/v6.1.0/bmi/bmi_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/bmi/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/body_height/body_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/body_height/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/body_temperature/body_temperature_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/body_temperature/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/body_weight/body_weight_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/body_weight/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/care_plan/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v6.1.0/care_team/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/condition_encounter_diagnosis/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/condition_problems_health_concerns/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v6.1.0/coverage/coverage_must_support_test.rb +5 -3
- data/lib/us_core_test_kit/generated/v6.1.0/coverage/metadata.yml +13 -7
- data/lib/us_core_test_kit/generated/v6.1.0/device/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/diagnostic_report_lab/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/diagnostic_report_note/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/document_reference/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/encounter/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v6.1.0/goal/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/head_circumference/head_circumference_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/head_circumference/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/head_circumference_percentile/head_circumference_percentile_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/head_circumference_percentile/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/heart_rate/heart_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/heart_rate/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/immunization/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/medication_dispense/metadata.yml +4 -0
- data/lib/us_core_test_kit/generated/v6.1.0/medication_request/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/metadata.yml +417 -226
- data/lib/us_core_test_kit/generated/v6.1.0/observation_clinical_result/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v6.1.0/observation_lab/metadata.yml +6 -1
- data/lib/us_core_test_kit/generated/v6.1.0/observation_occupation/metadata.yml +12 -7
- data/lib/us_core_test_kit/generated/v6.1.0/observation_occupation/observation_occupation_must_support_test.rb +2 -2
- data/lib/us_core_test_kit/generated/v6.1.0/observation_pregnancyintent/metadata.yml +8 -3
- data/lib/us_core_test_kit/generated/v6.1.0/observation_pregnancystatus/metadata.yml +8 -3
- data/lib/us_core_test_kit/generated/v6.1.0/observation_screening_assessment/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v6.1.0/observation_sexual_orientation/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v6.1.0/organization/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v6.1.0/pediatric_bmi_for_age/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/pediatric_bmi_for_age/pediatric_bmi_for_age_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/pediatric_weight_for_height/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/pediatric_weight_for_height/pediatric_weight_for_height_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/practitioner/metadata.yml +2 -1
- data/lib/us_core_test_kit/generated/v6.1.0/procedure/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/provenance/metadata.yml +8 -6
- data/lib/us_core_test_kit/generated/v6.1.0/provenance/provenance_must_support_test.rb +2 -1
- data/lib/us_core_test_kit/generated/v6.1.0/pulse_oximetry/metadata.yml +48 -31
- data/lib/us_core_test_kit/generated/v6.1.0/pulse_oximetry/pulse_oximetry_must_support_test.rb +19 -12
- data/lib/us_core_test_kit/generated/v6.1.0/questionnaire_response/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/related_person/metadata.yml +2 -0
- data/lib/us_core_test_kit/generated/v6.1.0/respiratory_rate/metadata.yml +17 -13
- data/lib/us_core_test_kit/generated/v6.1.0/respiratory_rate/respiratory_rate_must_support_test.rb +7 -7
- data/lib/us_core_test_kit/generated/v6.1.0/service_request/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v6.1.0/simple_observation/metadata.yml +4 -1
- data/lib/us_core_test_kit/generated/v6.1.0/smokingstatus/metadata.yml +6 -2
- data/lib/us_core_test_kit/generated/v6.1.0/specimen/metadata.yml +2 -0
- data/lib/us_core_test_kit/generator/must_support_metadata_extractor.rb +56 -26
- data/lib/us_core_test_kit/generator/must_support_test_generator.rb +1 -1
- data/lib/us_core_test_kit/must_support_test.rb +2 -5
- data/lib/us_core_test_kit/reference_resolution_test.rb +2 -2
- data/lib/us_core_test_kit/version.rb +1 -1
- metadata +2 -2
data/lib/us_core_test_kit/generated/v6.1.0/pulse_oximetry/pulse_oximetry_must_support_test.rb
CHANGED
@@ -13,32 +13,39 @@ 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.code.coding
|
22
22
|
* Observation.code.coding:O2Sat
|
23
23
|
* Observation.code.coding:PulseOx
|
24
24
|
* Observation.component
|
25
25
|
* Observation.component.code
|
26
|
-
* Observation.component.code.coding.code
|
27
26
|
* Observation.component.valueQuantity
|
28
|
-
* Observation.component.valueQuantity.code
|
29
|
-
* Observation.component.valueQuantity.system
|
30
|
-
* Observation.component.valueQuantity.unit
|
31
|
-
* Observation.component.valueQuantity.value
|
32
27
|
* Observation.component:Concentration
|
28
|
+
* Observation.component:Concentration.code
|
29
|
+
* Observation.component:Concentration.valueQuantity
|
30
|
+
* Observation.component:Concentration.valueQuantity.code
|
31
|
+
* Observation.component:Concentration.valueQuantity.system
|
32
|
+
* Observation.component:Concentration.valueQuantity.unit
|
33
|
+
* Observation.component:Concentration.valueQuantity.value
|
33
34
|
* Observation.component:FlowRate
|
35
|
+
* Observation.component:FlowRate.code
|
36
|
+
* Observation.component:FlowRate.valueQuantity
|
37
|
+
* Observation.component:FlowRate.valueQuantity.code
|
38
|
+
* Observation.component:FlowRate.valueQuantity.system
|
39
|
+
* Observation.component:FlowRate.valueQuantity.unit
|
40
|
+
* Observation.component:FlowRate.valueQuantity.value
|
34
41
|
* Observation.effectiveDateTime
|
35
42
|
* Observation.status
|
36
43
|
* Observation.subject
|
37
44
|
* Observation.valueQuantity
|
38
|
-
* Observation.valueQuantity.code
|
39
|
-
* Observation.valueQuantity.system
|
40
|
-
* Observation.valueQuantity.unit
|
41
|
-
* Observation.valueQuantity.value
|
45
|
+
* Observation.valueQuantity:valueQuantity.code
|
46
|
+
* Observation.valueQuantity:valueQuantity.system
|
47
|
+
* Observation.valueQuantity:valueQuantity.unit
|
48
|
+
* Observation.valueQuantity:valueQuantity.value
|
42
49
|
* Observation.value[x]:valueQuantity
|
43
50
|
)
|
44
51
|
|
@@ -141,12 +141,14 @@
|
|
141
141
|
:must_supports:
|
142
142
|
:extensions: []
|
143
143
|
:slices:
|
144
|
-
- :
|
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
|
-
- :
|
150
|
+
- :slice_id: Observation.category:VSCat
|
151
|
+
:slice_name: VSCat
|
150
152
|
:path: category
|
151
153
|
:discriminator:
|
152
154
|
:type: value
|
@@ -158,29 +160,31 @@
|
|
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: 9279-1
|
168
170
|
- :path: subject
|
169
171
|
:types:
|
170
172
|
- Reference
|
173
|
+
:target_profiles:
|
174
|
+
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
|
171
175
|
- :path: effectiveDateTime
|
172
176
|
:original_path: effective[x]
|
173
177
|
- :path: valueQuantity
|
174
178
|
:original_path: value[x]
|
175
|
-
- :path: valueQuantity.value
|
176
|
-
:original_path: value[x].value
|
177
|
-
- :path: valueQuantity.unit
|
178
|
-
:original_path: value[x].unit
|
179
|
-
- :path: valueQuantity.system
|
180
|
-
:original_path: value[x].system
|
179
|
+
- :path: valueQuantity:valueQuantity.value
|
180
|
+
:original_path: value[x]:valueQuantity.value
|
181
|
+
- :path: valueQuantity:valueQuantity.unit
|
182
|
+
:original_path: value[x]:valueQuantity.unit
|
183
|
+
- :path: valueQuantity:valueQuantity.system
|
184
|
+
:original_path: value[x]:valueQuantity.system
|
181
185
|
:fixed_value: http://unitsofmeasure.org
|
182
|
-
- :path: valueQuantity.code
|
183
|
-
:original_path: value[x].code
|
186
|
+
- :path: valueQuantity:valueQuantity.code
|
187
|
+
:original_path: value[x]:valueQuantity.code
|
184
188
|
:fixed_value: "/min"
|
185
189
|
:mandatory_elements:
|
186
190
|
- Observation.status
|
data/lib/us_core_test_kit/generated/v6.1.0/respiratory_rate/respiratory_rate_must_support_test.rb
CHANGED
@@ -13,19 +13,19 @@ 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.effectiveDateTime
|
22
22
|
* Observation.status
|
23
23
|
* Observation.subject
|
24
24
|
* Observation.valueQuantity
|
25
|
-
* Observation.valueQuantity.code
|
26
|
-
* Observation.valueQuantity.system
|
27
|
-
* Observation.valueQuantity.unit
|
28
|
-
* Observation.valueQuantity.value
|
25
|
+
* Observation.valueQuantity:valueQuantity.code
|
26
|
+
* Observation.valueQuantity:valueQuantity.system
|
27
|
+
* Observation.valueQuantity:valueQuantity.unit
|
28
|
+
* Observation.valueQuantity:valueQuantity.value
|
29
29
|
* Observation.value[x]:valueQuantity
|
30
30
|
)
|
31
31
|
|
@@ -169,7 +169,8 @@
|
|
169
169
|
:must_supports:
|
170
170
|
:extensions: []
|
171
171
|
:slices:
|
172
|
-
- :
|
172
|
+
- :slice_id: ServiceRequest.category:us-core
|
173
|
+
:slice_name: us-core
|
173
174
|
:path: category
|
174
175
|
:discriminator:
|
175
176
|
:type: requiredBinding
|
@@ -194,6 +195,8 @@
|
|
194
195
|
- :path: subject
|
195
196
|
:types:
|
196
197
|
- Reference
|
198
|
+
:target_profiles:
|
199
|
+
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
|
197
200
|
- :path: occurrencePeriod
|
198
201
|
:original_path: occurrence[x]
|
199
202
|
- :path: authoredOn
|
@@ -152,7 +152,8 @@
|
|
152
152
|
:must_supports:
|
153
153
|
:extensions: []
|
154
154
|
:slices:
|
155
|
-
- :
|
155
|
+
- :slice_id: Observation.category:us-core
|
156
|
+
:slice_name: us-core
|
156
157
|
:path: category
|
157
158
|
:discriminator:
|
158
159
|
:type: requiredBinding
|
@@ -178,6 +179,8 @@
|
|
178
179
|
- :path: subject
|
179
180
|
:types:
|
180
181
|
- Reference
|
182
|
+
:target_profiles:
|
183
|
+
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
|
181
184
|
- :path: effectiveDateTime
|
182
185
|
:original_path: effective[x]
|
183
186
|
- :path: performer
|
@@ -135,14 +135,16 @@
|
|
135
135
|
:must_supports:
|
136
136
|
:extensions: []
|
137
137
|
:slices:
|
138
|
-
- :
|
138
|
+
- :slice_id: Observation.category:SocialHistory
|
139
|
+
:slice_name: SocialHistory
|
139
140
|
:path: category
|
140
141
|
:discriminator:
|
141
142
|
:type: patternCodeableConcept
|
142
143
|
:path: ''
|
143
144
|
:code: social-history
|
144
145
|
:system: http://terminology.hl7.org/CodeSystem/observation-category
|
145
|
-
- :
|
146
|
+
- :slice_id: Observation.effective[x]:effectiveDateTime
|
147
|
+
:slice_name: effectiveDateTime
|
146
148
|
:path: effective[x]
|
147
149
|
:discriminator:
|
148
150
|
:type: type
|
@@ -154,6 +156,8 @@
|
|
154
156
|
- :path: subject
|
155
157
|
:types:
|
156
158
|
- Reference
|
159
|
+
:target_profiles:
|
160
|
+
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
|
157
161
|
- :path: valueCodeableConcept
|
158
162
|
:original_path: value[x]
|
159
163
|
:mandatory_elements:
|
@@ -36,7 +36,7 @@ module USCoreTestKit
|
|
36
36
|
end
|
37
37
|
|
38
38
|
def all_must_support_elements
|
39
|
-
profile_elements.select { |element| element.mustSupport || is_uscdi_requirement_element?(element)
|
39
|
+
profile_elements.select { |element| (element.mustSupport || is_uscdi_requirement_element?(element))}
|
40
40
|
end
|
41
41
|
|
42
42
|
def must_support_extension_elements
|
@@ -77,7 +77,8 @@ module USCoreTestKit
|
|
77
77
|
def pattern_slices
|
78
78
|
must_support_pattern_slice_elements.map do |current_element|
|
79
79
|
{
|
80
|
-
|
80
|
+
slice_id: current_element.id,
|
81
|
+
slice_name: current_element.sliceName,
|
81
82
|
path: current_element.path.gsub("#{resource}.", '')
|
82
83
|
}.tap do |metadata|
|
83
84
|
discriminator = discriminators(sliced_element(current_element)).first
|
@@ -89,7 +90,6 @@ module USCoreTestKit
|
|
89
90
|
else
|
90
91
|
current_element
|
91
92
|
end
|
92
|
-
|
93
93
|
metadata[:discriminator] =
|
94
94
|
if pattern_element.patternCodeableConcept.present?
|
95
95
|
{
|
@@ -156,7 +156,8 @@ module USCoreTestKit
|
|
156
156
|
type_code = type_element.type.first.code
|
157
157
|
|
158
158
|
{
|
159
|
-
|
159
|
+
slice_id: current_element.id,
|
160
|
+
slice_name: current_element.sliceName,
|
160
161
|
path: current_element.path.gsub("#{resource}.", ''),
|
161
162
|
discriminator: {
|
162
163
|
type: 'type',
|
@@ -179,7 +180,8 @@ module USCoreTestKit
|
|
179
180
|
def value_slices
|
180
181
|
must_support_value_slice_elements.map do |current_element|
|
181
182
|
{
|
182
|
-
|
183
|
+
slice_id: current_element.id,
|
184
|
+
slice_name: current_element.sliceName,
|
183
185
|
path: current_element.path.gsub("#{resource}.", ''),
|
184
186
|
discriminator: {
|
185
187
|
type: 'value'
|
@@ -209,18 +211,23 @@ module USCoreTestKit
|
|
209
211
|
end
|
210
212
|
|
211
213
|
def plain_must_support_elements
|
212
|
-
all_must_support_elements - must_support_extension_elements - must_support_slice_elements
|
214
|
+
plain_must_supports = all_must_support_elements - must_support_extension_elements - must_support_slice_elements
|
215
|
+
end
|
216
|
+
|
217
|
+
def element_part_of_slice_discrimination?(element)
|
218
|
+
must_support_slice_elements.any? { |ms_slice| element.id.include?(ms_slice.id) }
|
213
219
|
end
|
214
220
|
|
221
|
+
|
215
222
|
def handle_fixed_values(metadata, element)
|
216
223
|
if element.fixedUri.present?
|
217
224
|
metadata[:fixed_value] = element.fixedUri
|
218
|
-
elsif element.patternCodeableConcept.present?
|
225
|
+
elsif element.patternCodeableConcept.present? && !element_part_of_slice_discrimination?(element)
|
219
226
|
metadata[:fixed_value] = element.patternCodeableConcept.coding.first.code
|
220
227
|
metadata[:path] += '.coding.code'
|
221
228
|
elsif element.fixedCode.present?
|
222
229
|
metadata[:fixed_value] = element.fixedCode
|
223
|
-
elsif element.patternIdentifier.present?
|
230
|
+
elsif element.patternIdentifier.present? && !element_part_of_slice_discrimination?(element)
|
224
231
|
metadata[:fixed_value] = element.patternIdentifier.system
|
225
232
|
metadata[:path] += '.system'
|
226
233
|
end
|
@@ -254,17 +261,25 @@ module USCoreTestKit
|
|
254
261
|
end
|
255
262
|
|
256
263
|
def handle_type_must_support_target_profiles(type, metadata)
|
257
|
-
|
264
|
+
# US Core 3.1.1 profiles do not have US Core target profiles.
|
265
|
+
# Vital Sign proifles from FHIR R4 (version 4.0.1) do not have US Core target profiles either.
|
266
|
+
return if ['3.1.1', '4.0.1'].include?(profile.version)
|
267
|
+
|
258
268
|
target_profiles = []
|
259
269
|
|
260
|
-
type.
|
261
|
-
|
262
|
-
|
263
|
-
|
270
|
+
if type.targetProfile&.length == 1
|
271
|
+
target_profiles << type.targetProfile.first
|
272
|
+
else
|
273
|
+
type.source_hash['_targetProfile']&.each_with_index do |hash, index|
|
274
|
+
if hash.present?
|
275
|
+
element = FHIR::Element.new(hash)
|
276
|
+
target_profiles << type.targetProfile[index] if type_must_support_extension?(element.extension)
|
277
|
+
end
|
264
278
|
end
|
265
|
-
index += 1
|
266
279
|
end
|
267
280
|
|
281
|
+
# remove target_profile for FHIR Base resource type.
|
282
|
+
target_profiles.delete_if { |reference| reference.start_with?('http://hl7.org/fhir/StructureDefinition')}
|
268
283
|
metadata[:target_profiles] = target_profiles if target_profiles.present?
|
269
284
|
end
|
270
285
|
|
@@ -283,7 +298,7 @@ module USCoreTestKit
|
|
283
298
|
def must_support_elements
|
284
299
|
plain_must_support_elements.each_with_object([]) do |current_element, must_support_elements_metadata|
|
285
300
|
{
|
286
|
-
path: current_element.
|
301
|
+
path: current_element.id.gsub("#{resource}.", '')
|
287
302
|
}.tap do |current_metadata|
|
288
303
|
if is_uscdi_requirement_element?(current_element)
|
289
304
|
current_metadata[:uscdi_only] = true
|
@@ -317,7 +332,7 @@ module USCoreTestKit
|
|
317
332
|
|
318
333
|
def handle_special_cases
|
319
334
|
remove_vital_sign_component
|
320
|
-
|
335
|
+
remove_blood_pressure_value_data_absent_reason
|
321
336
|
remove_observation_data_absent_reason
|
322
337
|
|
323
338
|
case profile.version
|
@@ -345,7 +360,9 @@ module USCoreTestKit
|
|
345
360
|
|
346
361
|
# Exclude Observation.component from vital sign profiles except observation-bp and observation-pulse-ox
|
347
362
|
def remove_vital_sign_component
|
348
|
-
if
|
363
|
+
return if is_blood_pressure? || profile.name == 'USCorePulseOximetryProfile'
|
364
|
+
|
365
|
+
if is_vital_sign?
|
349
366
|
@must_supports[:elements].delete_if do |element|
|
350
367
|
element[:path].start_with?('component')
|
351
368
|
end
|
@@ -353,14 +370,22 @@ module USCoreTestKit
|
|
353
370
|
end
|
354
371
|
|
355
372
|
# Exclude Observation.value[x] from observation-bp
|
356
|
-
def
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
373
|
+
def remove_blood_pressure_value_data_absent_reason
|
374
|
+
return unless is_blood_pressure?
|
375
|
+
|
376
|
+
pattern = /component(:[^.]+)?\.dataAbsentReason/
|
377
|
+
|
378
|
+
@must_supports[:elements].delete_if do |element|
|
379
|
+
element[:path].start_with?('value[x]') ||
|
380
|
+
element[:original_path]&.start_with?('value[x]') ||
|
381
|
+
element[:path] == ('dataAbsentReason') ||
|
382
|
+
(
|
383
|
+
pattern.match?(element[:path]) && ['3.1.1', '4.0.0'].include?(ig_resources.ig.version)
|
384
|
+
)
|
385
|
+
end
|
386
|
+
|
387
|
+
@must_supports[:slices].delete_if do |slice|
|
388
|
+
slice[:path].start_with?('value[x]')
|
364
389
|
end
|
365
390
|
end
|
366
391
|
|
@@ -368,10 +393,15 @@ module USCoreTestKit
|
|
368
393
|
# are not required to demonstrate Health IT Module support for "dataAbsentReason" elements.
|
369
394
|
# Remove MS check for dataAbsentReason and component.dataAbsentReason from vital sign profiles and observation lab profile
|
370
395
|
# Smoking status profile does not have MS on dataAbsentReason. It is safe to use profile.type == 'Observation'
|
396
|
+
# Since US Core 5.0.1, Blood Pressure profile restores component.dataAbsentReason as MustSupport.
|
371
397
|
def remove_observation_data_absent_reason
|
398
|
+
return if is_blood_pressure?
|
399
|
+
|
400
|
+
pattern = /(component(:[^.]+)?\.)?dataAbsentReason/
|
401
|
+
|
372
402
|
if profile.type == 'Observation'
|
373
403
|
@must_supports[:elements].delete_if do |element|
|
374
|
-
|
404
|
+
pattern.match?(element[:path])
|
375
405
|
end
|
376
406
|
end
|
377
407
|
end
|
@@ -78,7 +78,7 @@ module USCoreTestKit
|
|
78
78
|
def build_must_support_list_string(uscdi_only)
|
79
79
|
slice_names = group_metadata.must_supports[:slices]
|
80
80
|
.select { |slice| slice[:uscdi_only].presence == uscdi_only.presence }
|
81
|
-
.map { |slice| slice[:
|
81
|
+
.map { |slice| slice[:slice_id] }
|
82
82
|
|
83
83
|
element_names = group_metadata.must_supports[:elements]
|
84
84
|
.select { |element| element[:uscdi_only].presence == uscdi_only.presence }
|
@@ -23,7 +23,6 @@ module USCoreTestKit
|
|
23
23
|
if (missing_elements + missing_slices + missing_extensions).length.zero?
|
24
24
|
pass
|
25
25
|
end
|
26
|
-
|
27
26
|
skip "Could not find #{missing_must_support_strings.join(', ')} in the #{resources.length} " \
|
28
27
|
"provided #{resource_type} resource(s)"
|
29
28
|
end
|
@@ -56,8 +55,8 @@ module USCoreTestKit
|
|
56
55
|
|
57
56
|
def missing_must_support_strings
|
58
57
|
missing_elements.map { |element_definition| missing_element_string(element_definition) } +
|
59
|
-
|
60
|
-
|
58
|
+
missing_slices.map { |slice_definition| slice_definition[:slice_id] } +
|
59
|
+
missing_extensions.map { |extension_definition| extension_definition[:id] }
|
61
60
|
end
|
62
61
|
|
63
62
|
def missing_element_string(element_definition)
|
@@ -110,12 +109,10 @@ module USCoreTestKit
|
|
110
109
|
(element_definition[:fixed_value].blank? || value == element_definition[:fixed_value])
|
111
110
|
|
112
111
|
end
|
113
|
-
|
114
112
|
# Note that false.present? => false, which is why we need to add this extra check
|
115
113
|
value_found.present? || value_found == false
|
116
114
|
end
|
117
115
|
end
|
118
|
-
|
119
116
|
@missing_elements
|
120
117
|
end
|
121
118
|
|
@@ -12,7 +12,7 @@ module USCoreTestKit
|
|
12
12
|
|
13
13
|
pass if unresolved_references(resources).length.zero?
|
14
14
|
|
15
|
-
skip "Could not resolve Must Support references #{unresolved_references_strings.join(', ')}"
|
15
|
+
skip "Could not resolve and validate any Must Support references for #{unresolved_references_strings.join(', ')}"
|
16
16
|
end
|
17
17
|
|
18
18
|
def unresolved_references_strings
|
@@ -20,7 +20,7 @@ module USCoreTestKit
|
|
20
20
|
unresolved_references.each_with_object(Hash.new { |hash, key| hash[key] = [] }) do |missing, hash|
|
21
21
|
hash[missing[:path]] << missing[:target_profile]
|
22
22
|
end
|
23
|
-
unresolved_reference_hash.map { |path, profiles| "#{path}#{"(#{profiles.join('|')})" unless profiles.first.empty?}" }
|
23
|
+
unresolved_reference_hash.map { |path, profiles| "#{path} element: Reference#{"(#{profiles.join('|')})" unless profiles.first.empty?}" }
|
24
24
|
end
|
25
25
|
|
26
26
|
def record_resolved_reference(reference, target_profile)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: us_core_test_kit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen MacVicar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11
|
11
|
+
date: 2023-12-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: inferno_core
|