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.
- 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
|