ipa_test_kit 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +201 -0
- data/lib/ipa_test_kit/custom_groups/capability_statement/conformance_support_test.rb +41 -0
- data/lib/ipa_test_kit/custom_groups/capability_statement/fhir_version_test.rb +15 -0
- data/lib/ipa_test_kit/custom_groups/capability_statement/json_support_test.rb +39 -0
- data/lib/ipa_test_kit/custom_groups/capability_statement/profile_support_test.rb +76 -0
- data/lib/ipa_test_kit/custom_groups/capability_statement_group.rb +64 -0
- data/lib/ipa_test_kit/date_search_validation.rb +101 -0
- data/lib/ipa_test_kit/ext/fhir_models.rb +59 -0
- data/lib/ipa_test_kit/fhir_resource_navigation.rb +63 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_must_support_test.rb +40 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_patient_clinical_status_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_patient_search_test.rb +60 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_provenance_revinclude_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/allergy_intolerance_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance/metadata.yml +165 -0
- data/lib/ipa_test_kit/generated/allergy_intolerance_group.rb +85 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/bmi/bmi_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/bmi/metadata.yml +322 -0
- data/lib/ipa_test_kit/generated/bmi_group.rb +93 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/bodyheight/bodyheight_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/bodyheight/metadata.yml +328 -0
- data/lib/ipa_test_kit/generated/bodyheight_group.rb +93 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/bodytemp/bodytemp_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/bodytemp/metadata.yml +328 -0
- data/lib/ipa_test_kit/generated/bodytemp_group.rb +93 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/bodyweight/bodyweight_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/bodyweight/metadata.yml +328 -0
- data/lib/ipa_test_kit/generated/bodyweight_group.rb +93 -0
- data/lib/ipa_test_kit/generated/bp/bp_must_support_test.rb +52 -0
- data/lib/ipa_test_kit/generated/bp/bp_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/bp/bp_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/bp/bp_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/bp/bp_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/bp/bp_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/bp/bp_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/bp/bp_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/bp/bp_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/bp/bp_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/bp/metadata.yml +379 -0
- data/lib/ipa_test_kit/generated/bp_group.rb +93 -0
- data/lib/ipa_test_kit/generated/condition/condition_must_support_test.rb +39 -0
- data/lib/ipa_test_kit/generated/condition/condition_patient_category_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/condition/condition_patient_clinical_status_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/condition/condition_patient_code_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/condition/condition_patient_onset_date_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/condition/condition_patient_search_test.rb +60 -0
- data/lib/ipa_test_kit/generated/condition/condition_provenance_revinclude_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/condition/condition_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/condition/condition_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/condition/condition_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/condition/metadata.yml +231 -0
- data/lib/ipa_test_kit/generated/condition_group.rb +91 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_id_search_test.rb +40 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_search_test.rb +61 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_status_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_type_period_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_patient_type_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_provenance_revinclude_search_test.rb +50 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/document_reference/document_reference_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/document_reference/metadata.yml +356 -0
- data/lib/ipa_test_kit/generated/document_reference_group.rb +99 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/head_circumference/head_circumference_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/head_circumference/metadata.yml +324 -0
- data/lib/ipa_test_kit/generated/head_circumference_group.rb +93 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/heartrate/heartrate_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/heartrate/metadata.yml +325 -0
- data/lib/ipa_test_kit/generated/heartrate_group.rb +93 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_must_support_test.rb +40 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_patient_date_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_patient_search_test.rb +60 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_patient_status_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_provenance_revinclude_search_test.rb +50 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/immunization/immunization_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/immunization/metadata.yml +210 -0
- data/lib/ipa_test_kit/generated/immunization_group.rb +87 -0
- data/lib/ipa_test_kit/generated/ipa_test_suite.rb +88 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_must_support_test.rb +44 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_patient_intent_authoredon_search_test.rb +53 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_patient_intent_encounter_search_test.rb +52 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_patient_intent_search_test.rb +68 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_patient_intent_status_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_request_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/medication_request/medication_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/medication_request/metadata.yml +307 -0
- data/lib/ipa_test_kit/generated/medication_request_group.rb +92 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_must_support_test.rb +43 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_patient_context_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_patient_effective_search_test.rb +52 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_patient_search_test.rb +68 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_patient_status_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_statement_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/medication_statement/medication_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/medication_statement/metadata.yml +230 -0
- data/lib/ipa_test_kit/generated/medication_statement_group.rb +92 -0
- data/lib/ipa_test_kit/generated/metadata.yml +6230 -0
- data/lib/ipa_test_kit/generated/observation/metadata.yml +1280 -0
- data/lib/ipa_test_kit/generated/observation/observation_must_support_test.rb +41 -0
- data/lib/ipa_test_kit/generated/observation/observation_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/observation/observation_patient_category_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/observation/observation_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/observation/observation_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/observation/observation_patient_code_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/observation/observation_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/observation/observation_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/observation/observation_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/observation/observation_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/observation_group.rb +93 -0
- data/lib/ipa_test_kit/generated/oxygensat/metadata.yml +366 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_must_support_test.rb +65 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/oxygensat/oxygensat_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/oxygensat_group.rb +93 -0
- data/lib/ipa_test_kit/generated/patient/metadata.yml +320 -0
- data/lib/ipa_test_kit/generated/patient/patient_birthdate_family_search_test.rb +41 -0
- data/lib/ipa_test_kit/generated/patient/patient_birthdate_name_search_test.rb +39 -0
- data/lib/ipa_test_kit/generated/patient/patient_family_gender_search_test.rb +41 -0
- data/lib/ipa_test_kit/generated/patient/patient_gender_name_search_test.rb +39 -0
- data/lib/ipa_test_kit/generated/patient/patient_id_search_test.rb +53 -0
- data/lib/ipa_test_kit/generated/patient/patient_identifier_search_test.rb +40 -0
- data/lib/ipa_test_kit/generated/patient/patient_must_support_test.rb +57 -0
- data/lib/ipa_test_kit/generated/patient/patient_name_search_test.rb +39 -0
- data/lib/ipa_test_kit/generated/patient/patient_provenance_revinclude_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/patient/patient_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/patient/patient_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/patient/patient_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/patient_group.rb +99 -0
- data/lib/ipa_test_kit/generated/practitioner/metadata.yml +124 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_identifier_search_test.rb +40 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_must_support_test.rb +40 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_name_search_test.rb +49 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/practitioner/practitioner_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/practitioner_group.rb +84 -0
- data/lib/ipa_test_kit/generated/practitioner_role/metadata.yml +141 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_identifier_search_test.rb +40 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_must_support_test.rb +40 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_practitioner_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/practitioner_role/practitioner_role_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/practitioner_role_group.rb +84 -0
- data/lib/ipa_test_kit/generated/provenance/metadata.yml +114 -0
- data/lib/ipa_test_kit/generated/provenance/provenance_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/provenance/provenance_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/provenance/provenance_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/provenance_group.rb +53 -0
- data/lib/ipa_test_kit/generated/resource_list.rb +18 -0
- data/lib/ipa_test_kit/generated/resprate/metadata.yml +325 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_must_support_test.rb +49 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_patient_category_date_search_test.rb +46 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_patient_category_search_test.rb +45 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_patient_category_status_search_test.rb +47 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_patient_code_date_search_test.rb +48 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_patient_code_search_test.rb +62 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_provenance_revinclude_search_test.rb +51 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_read_test.rb +24 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_reference_resolution_test.rb +28 -0
- data/lib/ipa_test_kit/generated/resprate/resprate_validation_test.rb +34 -0
- data/lib/ipa_test_kit/generated/resprate_group.rb +93 -0
- data/lib/ipa_test_kit/generator/group_generator.rb +171 -0
- data/lib/ipa_test_kit/generator/group_metadata.rb +98 -0
- data/lib/ipa_test_kit/generator/group_metadata_extractor.rb +278 -0
- data/lib/ipa_test_kit/generator/ig_loader.rb +63 -0
- data/lib/ipa_test_kit/generator/ig_metadata.rb +49 -0
- data/lib/ipa_test_kit/generator/ig_metadata_extractor.rb +56 -0
- data/lib/ipa_test_kit/generator/ig_resources.rb +48 -0
- data/lib/ipa_test_kit/generator/must_support_metadata_extractor.rb +221 -0
- data/lib/ipa_test_kit/generator/must_support_test_generator.rb +86 -0
- data/lib/ipa_test_kit/generator/naming.rb +46 -0
- data/lib/ipa_test_kit/generator/provenance_revinclude_search_test_generator.rb +186 -0
- data/lib/ipa_test_kit/generator/read_test_generator.rb +89 -0
- data/lib/ipa_test_kit/generator/reference_resolution_test_generator.rb +72 -0
- data/lib/ipa_test_kit/generator/resource_list_generator.rb +46 -0
- data/lib/ipa_test_kit/generator/search_definition_metadata_extractor.rb +181 -0
- data/lib/ipa_test_kit/generator/search_metadata_extractor.rb +74 -0
- data/lib/ipa_test_kit/generator/search_test_generator.rb +295 -0
- data/lib/ipa_test_kit/generator/special_cases.rb +16 -0
- data/lib/ipa_test_kit/generator/suite_generator.rb +67 -0
- data/lib/ipa_test_kit/generator/terminology_binding_metadata_extractor.rb +105 -0
- data/lib/ipa_test_kit/generator/validation_test_generator.rb +124 -0
- data/lib/ipa_test_kit/generator.rb +86 -0
- data/lib/ipa_test_kit/igs/package.tgz +0 -0
- data/lib/ipa_test_kit/must_support_test.rb +146 -0
- data/lib/ipa_test_kit/read_test.rb +62 -0
- data/lib/ipa_test_kit/reference_resolution_test.rb +111 -0
- data/lib/ipa_test_kit/request_logger.rb +46 -0
- data/lib/ipa_test_kit/search_test.rb +728 -0
- data/lib/ipa_test_kit/search_test_properties.rb +61 -0
- data/lib/ipa_test_kit/validation_test.rb +48 -0
- data/lib/ipa_test_kit/version.rb +3 -0
- data/lib/ipa_test_kit.rb +2 -0
- metadata +397 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
require_relative '../../search_test'
|
|
2
|
+
require_relative '../../generator/group_metadata'
|
|
3
|
+
|
|
4
|
+
module IpaTestKit
|
|
5
|
+
class MedicationStatementPatientContextSearchTest < Inferno::Test
|
|
6
|
+
include IpaTestKit::SearchTest
|
|
7
|
+
|
|
8
|
+
title 'Server returns valid results for MedicationStatement search by patient + context'
|
|
9
|
+
description %(
|
|
10
|
+
A server SHOULD support searching by
|
|
11
|
+
patient + context on the MedicationStatement resource. This test
|
|
12
|
+
will pass if resources are returned and match the search criteria. If
|
|
13
|
+
none are returned, the test is skipped.
|
|
14
|
+
|
|
15
|
+
If any MedicationStatement resources use external references to
|
|
16
|
+
Medications, the search will be repeated with
|
|
17
|
+
`_include=MedicationStatement:medication`.
|
|
18
|
+
|
|
19
|
+
[IPA Server CapabilityStatement](https://build.fhir.org/ig/HL7/fhir-ipa/CapabilityStatement-ipa-server.html)
|
|
20
|
+
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
id :ipa_010_medication_statement_patient_context_search_test
|
|
24
|
+
optional
|
|
25
|
+
|
|
26
|
+
input :patient_ids,
|
|
27
|
+
title: 'Patient IDs',
|
|
28
|
+
description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
|
|
29
|
+
|
|
30
|
+
def self.properties
|
|
31
|
+
@properties ||= SearchTestProperties.new(
|
|
32
|
+
resource_type: 'MedicationStatement',
|
|
33
|
+
search_param_names: ['patient', 'context'],
|
|
34
|
+
possible_status_search: true,
|
|
35
|
+
test_medication_inclusion_ms: true
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def self.metadata
|
|
40
|
+
@metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml')))
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def scratch_resources
|
|
44
|
+
scratch[:medication_statement_resources] ||= {}
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
run do
|
|
48
|
+
run_search_test
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
require_relative '../../search_test'
|
|
2
|
+
require_relative '../../generator/group_metadata'
|
|
3
|
+
|
|
4
|
+
module IpaTestKit
|
|
5
|
+
class MedicationStatementPatientEffectiveSearchTest < Inferno::Test
|
|
6
|
+
include IpaTestKit::SearchTest
|
|
7
|
+
|
|
8
|
+
title 'Server returns valid results for MedicationStatement search by patient + effective'
|
|
9
|
+
description %(
|
|
10
|
+
A server SHOULD support searching by
|
|
11
|
+
patient + effective on the MedicationStatement resource. This test
|
|
12
|
+
will pass if resources are returned and match the search criteria. If
|
|
13
|
+
none are returned, the test is skipped.
|
|
14
|
+
|
|
15
|
+
If any MedicationStatement resources use external references to
|
|
16
|
+
Medications, the search will be repeated with
|
|
17
|
+
`_include=MedicationStatement:medication`.
|
|
18
|
+
|
|
19
|
+
[IPA Server CapabilityStatement](https://build.fhir.org/ig/HL7/fhir-ipa/CapabilityStatement-ipa-server.html)
|
|
20
|
+
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
id :ipa_010_medication_statement_patient_effective_search_test
|
|
24
|
+
optional
|
|
25
|
+
|
|
26
|
+
input :patient_ids,
|
|
27
|
+
title: 'Patient IDs',
|
|
28
|
+
description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
|
|
29
|
+
|
|
30
|
+
def self.properties
|
|
31
|
+
@properties ||= SearchTestProperties.new(
|
|
32
|
+
resource_type: 'MedicationStatement',
|
|
33
|
+
search_param_names: ['patient', 'effective'],
|
|
34
|
+
possible_status_search: true,
|
|
35
|
+
test_medication_inclusion_ms: true,
|
|
36
|
+
params_with_comparators: ['effective']
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def self.metadata
|
|
41
|
+
@metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml')))
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def scratch_resources
|
|
45
|
+
scratch[:medication_statement_resources] ||= {}
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
run do
|
|
49
|
+
run_search_test
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
data/lib/ipa_test_kit/generated/medication_statement/medication_statement_patient_search_test.rb
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
require_relative '../../search_test'
|
|
2
|
+
require_relative '../../generator/group_metadata'
|
|
3
|
+
|
|
4
|
+
module IpaTestKit
|
|
5
|
+
class MedicationStatementPatientSearchTest < Inferno::Test
|
|
6
|
+
include IpaTestKit::SearchTest
|
|
7
|
+
|
|
8
|
+
title 'Server returns valid results for MedicationStatement search by patient'
|
|
9
|
+
description %(
|
|
10
|
+
A server SHALL support searching by
|
|
11
|
+
patient on the MedicationStatement resource. This test
|
|
12
|
+
will pass if resources are returned and match the search criteria. If
|
|
13
|
+
none are returned, the test is skipped.
|
|
14
|
+
|
|
15
|
+
If any MedicationStatement resources use external references to
|
|
16
|
+
Medications, the search will be repeated with
|
|
17
|
+
`_include=MedicationStatement:medication`.
|
|
18
|
+
|
|
19
|
+
This test verifies that the server supports searching by reference using
|
|
20
|
+
the form `patient=[id]` as well as `patient=Patient/[id]`. The two
|
|
21
|
+
different forms are expected to return the same number of results. IPA
|
|
22
|
+
requires that both forms are supported by IPA responders.
|
|
23
|
+
|
|
24
|
+
Because this is the first search of the sequence, resources in the
|
|
25
|
+
response will be used for subsequent tests.
|
|
26
|
+
|
|
27
|
+
Additionally, this test will check that GET and POST search methods
|
|
28
|
+
return the same number of results. Search by POST is required by the
|
|
29
|
+
FHIR R4 specification, and these tests interpret search by GET as a
|
|
30
|
+
requirement of IPA v0.1.0.
|
|
31
|
+
|
|
32
|
+
[IPA Server CapabilityStatement](https://build.fhir.org/ig/HL7/fhir-ipa/CapabilityStatement-ipa-server.html)
|
|
33
|
+
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
id :ipa_010_medication_statement_patient_search_test
|
|
37
|
+
input :patient_ids,
|
|
38
|
+
title: 'Patient IDs',
|
|
39
|
+
description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
|
|
40
|
+
|
|
41
|
+
def self.properties
|
|
42
|
+
@properties ||= SearchTestProperties.new(
|
|
43
|
+
first_search: true,
|
|
44
|
+
fixed_value_search: false,
|
|
45
|
+
resource_type: 'MedicationStatement',
|
|
46
|
+
search_param_names: ['patient'],
|
|
47
|
+
saves_delayed_references: true,
|
|
48
|
+
possible_status_search: true,
|
|
49
|
+
test_medication_inclusion_ms: true,
|
|
50
|
+
test_reference_variants: true,
|
|
51
|
+
multiple_or_search_params: [],
|
|
52
|
+
test_post_search: true
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def self.metadata
|
|
57
|
+
@metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml')))
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def scratch_resources
|
|
61
|
+
scratch[:medication_statement_resources] ||= {}
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
run do
|
|
65
|
+
run_search_test
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
require_relative '../../search_test'
|
|
2
|
+
require_relative '../../generator/group_metadata'
|
|
3
|
+
|
|
4
|
+
module IpaTestKit
|
|
5
|
+
class MedicationStatementPatientStatusSearchTest < Inferno::Test
|
|
6
|
+
include IpaTestKit::SearchTest
|
|
7
|
+
|
|
8
|
+
title 'Server returns valid results for MedicationStatement search by patient + status'
|
|
9
|
+
description %(
|
|
10
|
+
A server SHALL support searching by
|
|
11
|
+
patient + status on the MedicationStatement resource. This test
|
|
12
|
+
will pass if resources are returned and match the search criteria. If
|
|
13
|
+
none are returned, the test is skipped.
|
|
14
|
+
|
|
15
|
+
If any MedicationStatement resources use external references to
|
|
16
|
+
Medications, the search will be repeated with
|
|
17
|
+
`_include=MedicationStatement:medication`.
|
|
18
|
+
|
|
19
|
+
[IPA Server CapabilityStatement](https://build.fhir.org/ig/HL7/fhir-ipa/CapabilityStatement-ipa-server.html)
|
|
20
|
+
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
id :ipa_010_medication_statement_patient_status_search_test
|
|
24
|
+
input :patient_ids,
|
|
25
|
+
title: 'Patient IDs',
|
|
26
|
+
description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
|
|
27
|
+
|
|
28
|
+
def self.properties
|
|
29
|
+
@properties ||= SearchTestProperties.new(
|
|
30
|
+
resource_type: 'MedicationStatement',
|
|
31
|
+
search_param_names: ['patient', 'status'],
|
|
32
|
+
test_medication_inclusion_ms: true,
|
|
33
|
+
multiple_or_search_params: ['status']
|
|
34
|
+
)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def self.metadata
|
|
38
|
+
@metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml')))
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def scratch_resources
|
|
42
|
+
scratch[:medication_statement_resources] ||= {}
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
run do
|
|
46
|
+
run_search_test
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
require_relative '../../search_test'
|
|
2
|
+
require_relative '../../generator/group_metadata'
|
|
3
|
+
|
|
4
|
+
module IpaTestKit
|
|
5
|
+
class MedicationStatementProvenanceRevincludeSearchTest < Inferno::Test
|
|
6
|
+
include IpaTestKit::SearchTest
|
|
7
|
+
|
|
8
|
+
title 'Server returns Provenance resources from MedicationStatement search by patient + revInclude:Provenance:target'
|
|
9
|
+
description %(
|
|
10
|
+
A server SHALL be capable of supporting _revIncludes:Provenance:target.
|
|
11
|
+
|
|
12
|
+
This test will perform a search by patient + revInclude:Provenance:target and
|
|
13
|
+
will pass if a Provenance resource is found in the response.
|
|
14
|
+
%)
|
|
15
|
+
|
|
16
|
+
id :ipa_010_medication_statement_provenance_revinclude_search_test
|
|
17
|
+
|
|
18
|
+
input :patient_ids,
|
|
19
|
+
title: 'Patient IDs',
|
|
20
|
+
description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
|
|
21
|
+
|
|
22
|
+
def properties
|
|
23
|
+
@properties ||= SearchTestProperties.new(
|
|
24
|
+
fixed_value_search: false,
|
|
25
|
+
resource_type: 'MedicationStatement',
|
|
26
|
+
search_param_names: ['patient'],
|
|
27
|
+
possible_status_search: true
|
|
28
|
+
)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def self.metadata
|
|
32
|
+
@metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml')))
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def self.provenance_metadata
|
|
36
|
+
@provenance_metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, '..', 'provenance', 'metadata.yml')))
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def scratch_resources
|
|
40
|
+
scratch[:medication_statement_resources] ||= {}
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def scratch_provenance_resources
|
|
44
|
+
scratch[:provenance_resources] ||= {}
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
run do
|
|
48
|
+
run_provenance_revinclude_search_test
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
require_relative '../../read_test'
|
|
2
|
+
|
|
3
|
+
module IpaTestKit
|
|
4
|
+
class MedicationStatementReadTest < Inferno::Test
|
|
5
|
+
include IpaTestKit::ReadTest
|
|
6
|
+
|
|
7
|
+
title 'Server returns correct MedicationStatement resource from MedicationStatement read interaction'
|
|
8
|
+
description 'A server SHALL support the MedicationStatement read interaction.'
|
|
9
|
+
|
|
10
|
+
id :ipa_010_medication_statement_read_test
|
|
11
|
+
|
|
12
|
+
def resource_type
|
|
13
|
+
'MedicationStatement'
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def scratch_resources
|
|
17
|
+
scratch[:medication_statement_resources] ||= {}
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
run do
|
|
21
|
+
perform_read_test(all_scratch_resources)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require_relative '../../reference_resolution_test'
|
|
2
|
+
|
|
3
|
+
module IpaTestKit
|
|
4
|
+
class MedicationStatementReferenceResolutionTest < Inferno::Test
|
|
5
|
+
include IpaTestKit::ReferenceResolutionTest
|
|
6
|
+
|
|
7
|
+
title 'Every reference within MedicationStatement resources can be read'
|
|
8
|
+
description %(
|
|
9
|
+
This test will attempt to read the first 50 references found in the
|
|
10
|
+
resources from the first search. The test will fail if Inferno fails to
|
|
11
|
+
read any of those references.
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
id :ipa_010_medication_statement_reference_resolution_test
|
|
15
|
+
|
|
16
|
+
def resource_type
|
|
17
|
+
'MedicationStatement'
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def scratch_resources
|
|
21
|
+
scratch[:medication_statement_resources] ||= {}
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
run do
|
|
25
|
+
perform_reference_resolution_test(scratch_resources[:all])
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
require_relative '../../validation_test'
|
|
2
|
+
|
|
3
|
+
module IpaTestKit
|
|
4
|
+
class MedicationStatementValidationTest < Inferno::Test
|
|
5
|
+
include IpaTestKit::ValidationTest
|
|
6
|
+
|
|
7
|
+
id :ipa_010_medication_statement_validation_test
|
|
8
|
+
title 'MedicationStatement resources returned during previous tests conform to the IPA MedicationStatement Profile'
|
|
9
|
+
description %(
|
|
10
|
+
This test verifies resources returned from the first search conform to
|
|
11
|
+
the [IPA MedicationStatement Profile](http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement).
|
|
12
|
+
|
|
13
|
+
It verifies the presence of mandatory elements and that elements with
|
|
14
|
+
required bindings contain appropriate values. CodeableConcept element
|
|
15
|
+
bindings will fail if none of their codings have a code/system belonging
|
|
16
|
+
to the bound ValueSet. Quantity, Coding, and code element bindings will
|
|
17
|
+
fail if their code/system are not found in the valueset.
|
|
18
|
+
|
|
19
|
+
)
|
|
20
|
+
output :dar_code_found, :dar_extension_found
|
|
21
|
+
|
|
22
|
+
def resource_type
|
|
23
|
+
'MedicationStatement'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def scratch_resources
|
|
27
|
+
scratch[:medication_statement_resources] ||= {}
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
run do
|
|
31
|
+
perform_validation_test(scratch_resources[:all] || [], 'http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement')
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
require_relative '../../validation_test'
|
|
2
|
+
|
|
3
|
+
module IpaTestKit
|
|
4
|
+
class MedicationValidationTest < Inferno::Test
|
|
5
|
+
include IpaTestKit::ValidationTest
|
|
6
|
+
|
|
7
|
+
id :ipa_010_medication_validation_test
|
|
8
|
+
title 'Medication resources returned during previous tests conform to the IPA Medication Profile'
|
|
9
|
+
description %(
|
|
10
|
+
This test verifies resources returned from previous tests conform to
|
|
11
|
+
the [IPA Medication Profile](http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medication).
|
|
12
|
+
|
|
13
|
+
It verifies the presence of mandatory elements and that elements with
|
|
14
|
+
required bindings contain appropriate values. CodeableConcept element
|
|
15
|
+
bindings will fail if none of their codings have a code/system belonging
|
|
16
|
+
to the bound ValueSet. Quantity, Coding, and code element bindings will
|
|
17
|
+
fail if their code/system are not found in the valueset.
|
|
18
|
+
|
|
19
|
+
)
|
|
20
|
+
output :dar_code_found, :dar_extension_found
|
|
21
|
+
|
|
22
|
+
def resource_type
|
|
23
|
+
'Medication'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def scratch_resources
|
|
27
|
+
scratch[:medication_resources] ||= {}
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
run do
|
|
31
|
+
perform_validation_test(scratch_resources[:all] || [], 'http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medication')
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
---
|
|
2
|
+
:name: ipa_medicationstatement
|
|
3
|
+
:class_name: Ipav010MedicationstatementSequence
|
|
4
|
+
:version: v0.1.0
|
|
5
|
+
:reformatted_version: v010
|
|
6
|
+
:resource: MedicationStatement
|
|
7
|
+
:profile_url: http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement
|
|
8
|
+
:profile_name: IPA MedicationStatement Profile
|
|
9
|
+
:title: MedicationStatement
|
|
10
|
+
:short_description: Verify support for the server capabilities required by the IPA
|
|
11
|
+
MedicationStatement Profile.
|
|
12
|
+
:interactions:
|
|
13
|
+
- :code: create
|
|
14
|
+
:expectation: MAY
|
|
15
|
+
- :code: search-type
|
|
16
|
+
:expectation: SHALL
|
|
17
|
+
- :code: read
|
|
18
|
+
:expectation: SHALL
|
|
19
|
+
- :code: vread
|
|
20
|
+
:expectation: SHOULD
|
|
21
|
+
- :code: update
|
|
22
|
+
:expectation: MAY
|
|
23
|
+
- :code: patch
|
|
24
|
+
:expectation: MAY
|
|
25
|
+
- :code: delete
|
|
26
|
+
:expectation: MAY
|
|
27
|
+
- :code: history-instance
|
|
28
|
+
:expectation: SHOULD
|
|
29
|
+
- :code: history-type
|
|
30
|
+
:expectation: MAY
|
|
31
|
+
:operations: []
|
|
32
|
+
:searches:
|
|
33
|
+
- :expectation: SHALL
|
|
34
|
+
:names:
|
|
35
|
+
- patient
|
|
36
|
+
:names_not_must_support_or_mandatory: []
|
|
37
|
+
:must_support_or_mandatory: true
|
|
38
|
+
- :expectation: SHOULD
|
|
39
|
+
:names:
|
|
40
|
+
- patient
|
|
41
|
+
- context
|
|
42
|
+
:names_not_must_support_or_mandatory: []
|
|
43
|
+
:must_support_or_mandatory: true
|
|
44
|
+
- :expectation: SHOULD
|
|
45
|
+
:names:
|
|
46
|
+
- patient
|
|
47
|
+
- effective
|
|
48
|
+
:names_not_must_support_or_mandatory: []
|
|
49
|
+
:must_support_or_mandatory: true
|
|
50
|
+
- :expectation: SHALL
|
|
51
|
+
:names:
|
|
52
|
+
- patient
|
|
53
|
+
- status
|
|
54
|
+
:names_not_must_support_or_mandatory: []
|
|
55
|
+
:must_support_or_mandatory: true
|
|
56
|
+
:search_definitions:
|
|
57
|
+
:patient:
|
|
58
|
+
:path: subject
|
|
59
|
+
:full_path: MedicationStatement.subject
|
|
60
|
+
:comparators: {}
|
|
61
|
+
:values: []
|
|
62
|
+
:type: Reference
|
|
63
|
+
:contains_multiple: false
|
|
64
|
+
:multiple_or: MAY
|
|
65
|
+
:context:
|
|
66
|
+
:path: context
|
|
67
|
+
:full_path: MedicationStatement.context
|
|
68
|
+
:comparators: {}
|
|
69
|
+
:values: []
|
|
70
|
+
:type: Reference
|
|
71
|
+
:contains_multiple: false
|
|
72
|
+
:multiple_or: MAY
|
|
73
|
+
:effective:
|
|
74
|
+
:path: effective
|
|
75
|
+
:full_path: MedicationStatement.effective
|
|
76
|
+
:comparators:
|
|
77
|
+
:eq: MAY
|
|
78
|
+
:ne: MAY
|
|
79
|
+
:gt: SHALL
|
|
80
|
+
:ge: SHALL
|
|
81
|
+
:lt: SHALL
|
|
82
|
+
:le: SHALL
|
|
83
|
+
:sa: MAY
|
|
84
|
+
:eb: MAY
|
|
85
|
+
:ap: MAY
|
|
86
|
+
:values: []
|
|
87
|
+
:type: dateTime
|
|
88
|
+
:contains_multiple: false
|
|
89
|
+
:multiple_or: MAY
|
|
90
|
+
:status:
|
|
91
|
+
:path: status
|
|
92
|
+
:full_path: MedicationStatement.status
|
|
93
|
+
:comparators: {}
|
|
94
|
+
:values:
|
|
95
|
+
- active
|
|
96
|
+
- on-hold
|
|
97
|
+
- completed
|
|
98
|
+
- entered-in-error
|
|
99
|
+
- stopped
|
|
100
|
+
- unknown
|
|
101
|
+
- intended
|
|
102
|
+
- not-taken
|
|
103
|
+
:type: code
|
|
104
|
+
:contains_multiple: false
|
|
105
|
+
:multiple_or: SHALL
|
|
106
|
+
:include_params:
|
|
107
|
+
- MedicationStatement:medication
|
|
108
|
+
:revincludes:
|
|
109
|
+
- Provenance:target
|
|
110
|
+
:required_concepts: []
|
|
111
|
+
:must_supports:
|
|
112
|
+
:extensions: []
|
|
113
|
+
:slices: []
|
|
114
|
+
:elements:
|
|
115
|
+
- :path: status
|
|
116
|
+
- :path: statusReason
|
|
117
|
+
- :path: medication[x]
|
|
118
|
+
- :path: subject
|
|
119
|
+
- :path: context
|
|
120
|
+
- :path: effective[x]
|
|
121
|
+
- :path: informationSource
|
|
122
|
+
- :path: dosage
|
|
123
|
+
- :path: dosage.text
|
|
124
|
+
:mandatory_elements:
|
|
125
|
+
- MedicationStatement.status
|
|
126
|
+
- MedicationStatement.medication[x]
|
|
127
|
+
- MedicationStatement.subject
|
|
128
|
+
- MedicationStatement.informationSource
|
|
129
|
+
:bindings:
|
|
130
|
+
- :type: code
|
|
131
|
+
:strength: preferred
|
|
132
|
+
:system: http://hl7.org/fhir/ValueSet/languages
|
|
133
|
+
:path: language
|
|
134
|
+
- :type: code
|
|
135
|
+
:strength: required
|
|
136
|
+
:system: http://hl7.org/fhir/ValueSet/medication-statement-status
|
|
137
|
+
:path: status
|
|
138
|
+
- :type: CodeableConcept
|
|
139
|
+
:strength: example
|
|
140
|
+
:system: http://hl7.org/fhir/ValueSet/reason-medication-status-codes
|
|
141
|
+
:path: statusReason
|
|
142
|
+
- :type: CodeableConcept
|
|
143
|
+
:strength: example
|
|
144
|
+
:system: http://hl7.org/fhir/ValueSet/medication-statement-category
|
|
145
|
+
:path: category
|
|
146
|
+
- :type: CodeableConcept
|
|
147
|
+
:strength: example
|
|
148
|
+
:system: http://hl7.org/fhir/ValueSet/medication-codes
|
|
149
|
+
:path: medication
|
|
150
|
+
- :type: CodeableConcept
|
|
151
|
+
:strength: example
|
|
152
|
+
:system: http://hl7.org/fhir/ValueSet/condition-code
|
|
153
|
+
:path: reasonCode
|
|
154
|
+
- :type: CodeableConcept
|
|
155
|
+
:strength: example
|
|
156
|
+
:system: http://hl7.org/fhir/ValueSet/additional-instruction-codes
|
|
157
|
+
:path: dosage.additionalInstruction
|
|
158
|
+
- :type: boolean
|
|
159
|
+
:strength: example
|
|
160
|
+
:system: http://hl7.org/fhir/ValueSet/medication-as-needed-reason
|
|
161
|
+
:path: dosage.asNeeded
|
|
162
|
+
- :type: CodeableConcept
|
|
163
|
+
:strength: example
|
|
164
|
+
:system: http://hl7.org/fhir/ValueSet/approach-site-codes
|
|
165
|
+
:path: dosage.site
|
|
166
|
+
- :type: CodeableConcept
|
|
167
|
+
:strength: example
|
|
168
|
+
:system: http://hl7.org/fhir/ValueSet/route-codes
|
|
169
|
+
:path: dosage.route
|
|
170
|
+
- :type: CodeableConcept
|
|
171
|
+
:strength: example
|
|
172
|
+
:system: http://hl7.org/fhir/ValueSet/administration-method-codes
|
|
173
|
+
:path: dosage.method
|
|
174
|
+
- :type: CodeableConcept
|
|
175
|
+
:strength: example
|
|
176
|
+
:system: http://hl7.org/fhir/ValueSet/dose-rate-type
|
|
177
|
+
:path: dosage.doseAndRate.type
|
|
178
|
+
:references:
|
|
179
|
+
- :path: MedicationStatement.subject
|
|
180
|
+
:profiles:
|
|
181
|
+
- http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient
|
|
182
|
+
- :path: MedicationStatement.context
|
|
183
|
+
:profiles:
|
|
184
|
+
- http://hl7.org/fhir/StructureDefinition/Encounter
|
|
185
|
+
- http://hl7.org/fhir/StructureDefinition/EpisodeOfCare
|
|
186
|
+
- :path: MedicationStatement.derivedFrom
|
|
187
|
+
:profiles:
|
|
188
|
+
- http://hl7.org/fhir/StructureDefinition/Resource
|
|
189
|
+
- :path: MedicationStatement.informationSource
|
|
190
|
+
:profiles:
|
|
191
|
+
- http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitioner
|
|
192
|
+
- http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitionerrole
|
|
193
|
+
- http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient
|
|
194
|
+
- :path: MedicationStatement.reasonReference
|
|
195
|
+
:profiles:
|
|
196
|
+
- http://hl7.org/fhir/StructureDefinition/Condition
|
|
197
|
+
- http://hl7.org/fhir/StructureDefinition/Observation
|
|
198
|
+
- http://hl7.org/fhir/StructureDefinition/DiagnosticReport
|
|
199
|
+
- :path: MedicationStatement.basedOn
|
|
200
|
+
:profiles:
|
|
201
|
+
- http://hl7.org/fhir/StructureDefinition/CarePlan
|
|
202
|
+
- http://hl7.org/fhir/StructureDefinition/MedicationRequest
|
|
203
|
+
- http://hl7.org/fhir/StructureDefinition/ServiceRequest
|
|
204
|
+
:tests:
|
|
205
|
+
- :id: ipa_010_medication_statement_patient_search_test
|
|
206
|
+
:file_name: medication_statement_patient_search_test.rb
|
|
207
|
+
- :id: ipa_010_medication_statement_patient_context_search_test
|
|
208
|
+
:file_name: medication_statement_patient_context_search_test.rb
|
|
209
|
+
- :id: ipa_010_medication_statement_patient_effective_search_test
|
|
210
|
+
:file_name: medication_statement_patient_effective_search_test.rb
|
|
211
|
+
- :id: ipa_010_medication_statement_patient_status_search_test
|
|
212
|
+
:file_name: medication_statement_patient_status_search_test.rb
|
|
213
|
+
- :id: ipa_010_medication_statement_read_test
|
|
214
|
+
:file_name: medication_statement_read_test.rb
|
|
215
|
+
- :id: ipa_010_medication_statement_provenance_revinclude_search_test
|
|
216
|
+
:file_name: medication_statement_provenance_revinclude_search_test.rb
|
|
217
|
+
- :id: ipa_010_medication_statement_validation_test
|
|
218
|
+
:file_name: medication_statement_validation_test.rb
|
|
219
|
+
- :id: ipa_010_medication_validation_test
|
|
220
|
+
:file_name: medication_validation_test.rb
|
|
221
|
+
- :id: ipa_010_medication_statement_must_support_test
|
|
222
|
+
:file_name: medication_statement_must_support_test.rb
|
|
223
|
+
- :id: ipa_010_medication_statement_reference_resolution_test
|
|
224
|
+
:file_name: medication_statement_reference_resolution_test.rb
|
|
225
|
+
:id: ipa_010_medication_statement
|
|
226
|
+
:file_name: medication_statement_group.rb
|
|
227
|
+
:delayed_references:
|
|
228
|
+
- :path: informationSource
|
|
229
|
+
:resources:
|
|
230
|
+
- Practitioner
|