fhir-mongoid-models 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.editorconfig +8 -0
- data/.github/CODEOWNERS +2 -0
- data/.github/workflows/build.yml +54 -0
- data/.gitignore +15 -0
- data/.rspec +3 -0
- data/.rubocop.yml +20 -0
- data/Gemfile +6 -0
- data/LICENSE +121 -0
- data/README.md +23 -0
- data/Rakefile +6 -0
- data/app/models/cqm/cql_statement_dependency.rb +63 -0
- data/app/models/cqm/data_element.rb +41 -0
- data/app/models/cqm/logic_library.rb +62 -0
- data/app/models/cqm/measure.rb +120 -0
- data/app/models/cqm/measure_package.rb +10 -0
- data/app/models/cqm/patient.rb +54 -0
- data/app/models/cqm/population_set.rb +311 -0
- data/app/models/fhir/account.rb +84 -0
- data/app/models/fhir/account_coverage.rb +35 -0
- data/app/models/fhir/account_guarantor.rb +40 -0
- data/app/models/fhir/account_status.rb +27 -0
- data/app/models/fhir/action_cardinality_behavior.rb +27 -0
- data/app/models/fhir/action_condition_kind.rb +27 -0
- data/app/models/fhir/action_grouping_behavior.rb +27 -0
- data/app/models/fhir/action_participant_type.rb +27 -0
- data/app/models/fhir/action_precheck_behavior.rb +27 -0
- data/app/models/fhir/action_relationship_type.rb +27 -0
- data/app/models/fhir/action_required_behavior.rb +27 -0
- data/app/models/fhir/action_selection_behavior.rb +27 -0
- data/app/models/fhir/activity_definition.rb +337 -0
- data/app/models/fhir/activity_definition_dynamic_value.rb +35 -0
- data/app/models/fhir/activity_definition_kind.rb +27 -0
- data/app/models/fhir/activity_definition_participant.rb +35 -0
- data/app/models/fhir/activity_participant_type.rb +27 -0
- data/app/models/fhir/address.rb +94 -0
- data/app/models/fhir/address_type.rb +27 -0
- data/app/models/fhir/address_use.rb +27 -0
- data/app/models/fhir/administrative_gender.rb +27 -0
- data/app/models/fhir/adverse_event.rb +131 -0
- data/app/models/fhir/adverse_event_actuality.rb +27 -0
- data/app/models/fhir/adverse_event_suspect_entity.rb +33 -0
- data/app/models/fhir/adverse_event_suspect_entity_causality.rb +45 -0
- data/app/models/fhir/age.rb +23 -0
- data/app/models/fhir/aggregation_mode.rb +27 -0
- data/app/models/fhir/allergy_intolerance.rb +140 -0
- data/app/models/fhir/allergy_intolerance_category.rb +27 -0
- data/app/models/fhir/allergy_intolerance_criticality.rb +27 -0
- data/app/models/fhir/allergy_intolerance_reaction.rb +64 -0
- data/app/models/fhir/allergy_intolerance_severity.rb +27 -0
- data/app/models/fhir/allergy_intolerance_type.rb +27 -0
- data/app/models/fhir/annotation.rb +49 -0
- data/app/models/fhir/appointment.rb +151 -0
- data/app/models/fhir/appointment_participant.rb +52 -0
- data/app/models/fhir/appointment_response.rb +71 -0
- data/app/models/fhir/appointment_status.rb +27 -0
- data/app/models/fhir/assertion_direction_type.rb +27 -0
- data/app/models/fhir/assertion_operator_type.rb +27 -0
- data/app/models/fhir/assertion_response_types.rb +27 -0
- data/app/models/fhir/attachment.rb +79 -0
- data/app/models/fhir/audit_event.rb +86 -0
- data/app/models/fhir/audit_event_action.rb +27 -0
- data/app/models/fhir/audit_event_agent.rb +89 -0
- data/app/models/fhir/audit_event_agent_network.rb +37 -0
- data/app/models/fhir/audit_event_agent_network_type.rb +27 -0
- data/app/models/fhir/audit_event_entity.rb +74 -0
- data/app/models/fhir/audit_event_entity_detail.rb +44 -0
- data/app/models/fhir/audit_event_outcome.rb +27 -0
- data/app/models/fhir/audit_event_source.rb +40 -0
- data/app/models/fhir/backbone_element.rb +28 -0
- data/app/models/fhir/basic.rb +50 -0
- data/app/models/fhir/binary.rb +42 -0
- data/app/models/fhir/binding_strength.rb +27 -0
- data/app/models/fhir/biologically_derived_product.rb +84 -0
- data/app/models/fhir/biologically_derived_product_category.rb +27 -0
- data/app/models/fhir/biologically_derived_product_collection.rb +45 -0
- data/app/models/fhir/biologically_derived_product_manipulation.rb +42 -0
- data/app/models/fhir/biologically_derived_product_processing.rb +52 -0
- data/app/models/fhir/biologically_derived_product_status.rb +27 -0
- data/app/models/fhir/biologically_derived_product_storage.rb +49 -0
- data/app/models/fhir/biologically_derived_product_storage_scale.rb +27 -0
- data/app/models/fhir/body_structure.rb +67 -0
- data/app/models/fhir/bundle.rb +64 -0
- data/app/models/fhir/bundle_entry.rb +55 -0
- data/app/models/fhir/bundle_entry_request.rb +65 -0
- data/app/models/fhir/bundle_entry_response.rb +56 -0
- data/app/models/fhir/bundle_entry_search.rb +37 -0
- data/app/models/fhir/bundle_link.rb +37 -0
- data/app/models/fhir/bundle_type.rb +27 -0
- data/app/models/fhir/capability_statement.rb +204 -0
- data/app/models/fhir/capability_statement_document.rb +44 -0
- data/app/models/fhir/capability_statement_implementation.rb +42 -0
- data/app/models/fhir/capability_statement_kind.rb +27 -0
- data/app/models/fhir/capability_statement_messaging.rb +47 -0
- data/app/models/fhir/capability_statement_messaging_endpoint.rb +35 -0
- data/app/models/fhir/capability_statement_messaging_supported_message.rb +37 -0
- data/app/models/fhir/capability_statement_rest.rb +72 -0
- data/app/models/fhir/capability_statement_rest_interaction.rb +37 -0
- data/app/models/fhir/capability_statement_rest_resource.rb +148 -0
- data/app/models/fhir/capability_statement_rest_resource_interaction.rb +37 -0
- data/app/models/fhir/capability_statement_rest_resource_operation.rb +44 -0
- data/app/models/fhir/capability_statement_rest_resource_search_param.rb +51 -0
- data/app/models/fhir/capability_statement_rest_security.rb +42 -0
- data/app/models/fhir/capability_statement_software.rb +44 -0
- data/app/models/fhir/care_plan.rb +158 -0
- data/app/models/fhir/care_plan_activity.rb +48 -0
- data/app/models/fhir/care_plan_activity_detail.rb +143 -0
- data/app/models/fhir/care_plan_activity_kind.rb +27 -0
- data/app/models/fhir/care_plan_activity_status.rb +27 -0
- data/app/models/fhir/care_plan_intent.rb +27 -0
- data/app/models/fhir/care_plan_status.rb +27 -0
- data/app/models/fhir/care_team.rb +92 -0
- data/app/models/fhir/care_team_participant.rb +43 -0
- data/app/models/fhir/care_team_status.rb +27 -0
- data/app/models/fhir/catalog_entry.rb +96 -0
- data/app/models/fhir/catalog_entry_related_entry.rb +35 -0
- data/app/models/fhir/catalog_entry_relation_type.rb +27 -0
- data/app/models/fhir/charge_item.rb +188 -0
- data/app/models/fhir/charge_item_definition.rb +175 -0
- data/app/models/fhir/charge_item_definition_applicability.rb +44 -0
- data/app/models/fhir/charge_item_definition_price_component_type.rb +27 -0
- data/app/models/fhir/charge_item_definition_property_group.rb +33 -0
- data/app/models/fhir/charge_item_definition_property_group_price_component.rb +47 -0
- data/app/models/fhir/charge_item_performer.rb +33 -0
- data/app/models/fhir/charge_item_status.rb +27 -0
- data/app/models/fhir/claim.rb +164 -0
- data/app/models/fhir/claim_accident.rb +45 -0
- data/app/models/fhir/claim_care_team.rb +52 -0
- data/app/models/fhir/claim_diagnosis.rb +55 -0
- data/app/models/fhir/claim_insurance.rb +69 -0
- data/app/models/fhir/claim_item.rb +169 -0
- data/app/models/fhir/claim_item_detail.rb +87 -0
- data/app/models/fhir/claim_item_detail_sub_detail.rb +82 -0
- data/app/models/fhir/claim_payee.rb +33 -0
- data/app/models/fhir/claim_procedure.rb +57 -0
- data/app/models/fhir/claim_related.rb +38 -0
- data/app/models/fhir/claim_response.rb +170 -0
- data/app/models/fhir/claim_response_add_item.rb +152 -0
- data/app/models/fhir/claim_response_add_item_detail.rb +75 -0
- data/app/models/fhir/claim_response_add_item_detail_sub_detail.rb +70 -0
- data/app/models/fhir/claim_response_error.rb +49 -0
- data/app/models/fhir/claim_response_insurance.rb +54 -0
- data/app/models/fhir/claim_response_item.rb +50 -0
- data/app/models/fhir/claim_response_item_adjudication.rb +45 -0
- data/app/models/fhir/claim_response_item_detail.rb +50 -0
- data/app/models/fhir/claim_response_item_detail_sub_detail.rb +45 -0
- data/app/models/fhir/claim_response_payment.rb +55 -0
- data/app/models/fhir/claim_response_process_note.rb +49 -0
- data/app/models/fhir/claim_response_status.rb +27 -0
- data/app/models/fhir/claim_response_total.rb +33 -0
- data/app/models/fhir/claim_status.rb +27 -0
- data/app/models/fhir/claim_supporting_info.rb +86 -0
- data/app/models/fhir/clinical_impression.rb +143 -0
- data/app/models/fhir/clinical_impression_finding.rb +40 -0
- data/app/models/fhir/clinical_impression_investigation.rb +33 -0
- data/app/models/fhir/clinical_impression_status.rb +27 -0
- data/app/models/fhir/code_search_support.rb +27 -0
- data/app/models/fhir/code_system.rb +191 -0
- data/app/models/fhir/code_system_concept.rb +59 -0
- data/app/models/fhir/code_system_concept_designation.rb +42 -0
- data/app/models/fhir/code_system_concept_property.rb +77 -0
- data/app/models/fhir/code_system_content_mode.rb +27 -0
- data/app/models/fhir/code_system_filter.rb +54 -0
- data/app/models/fhir/code_system_hierarchy_meaning.rb +27 -0
- data/app/models/fhir/code_system_property.rb +51 -0
- data/app/models/fhir/codeable_concept.rb +35 -0
- data/app/models/fhir/coding.rb +58 -0
- data/app/models/fhir/communication.rb +156 -0
- data/app/models/fhir/communication_payload.rb +40 -0
- data/app/models/fhir/communication_priority.rb +27 -0
- data/app/models/fhir/communication_request.rb +148 -0
- data/app/models/fhir/communication_request_payload.rb +40 -0
- data/app/models/fhir/communication_request_status.rb +27 -0
- data/app/models/fhir/communication_status.rb +27 -0
- data/app/models/fhir/compartment_code.rb +27 -0
- data/app/models/fhir/compartment_definition.rb +115 -0
- data/app/models/fhir/compartment_definition_resource.rb +47 -0
- data/app/models/fhir/compartment_type.rb +27 -0
- data/app/models/fhir/composition.rb +106 -0
- data/app/models/fhir/composition_attestation_mode.rb +27 -0
- data/app/models/fhir/composition_attester.rb +42 -0
- data/app/models/fhir/composition_event.rb +38 -0
- data/app/models/fhir/composition_relates_to.rb +40 -0
- data/app/models/fhir/composition_section.rb +77 -0
- data/app/models/fhir/composition_status.rb +27 -0
- data/app/models/fhir/concept_map.rb +153 -0
- data/app/models/fhir/concept_map_equivalence.rb +27 -0
- data/app/models/fhir/concept_map_group.rb +61 -0
- data/app/models/fhir/concept_map_group_element.rb +42 -0
- data/app/models/fhir/concept_map_group_element_target.rb +61 -0
- data/app/models/fhir/concept_map_group_element_target_depends_on.rb +51 -0
- data/app/models/fhir/concept_map_group_unmapped.rb +51 -0
- data/app/models/fhir/concept_map_group_unmapped_mode.rb +27 -0
- data/app/models/fhir/condition.rb +158 -0
- data/app/models/fhir/condition_evidence.rb +33 -0
- data/app/models/fhir/condition_stage.rb +38 -0
- data/app/models/fhir/conditional_delete_status.rb +27 -0
- data/app/models/fhir/conditional_read_status.rb +27 -0
- data/app/models/fhir/consent.rb +97 -0
- data/app/models/fhir/consent_data_meaning.rb +27 -0
- data/app/models/fhir/consent_policy.rb +37 -0
- data/app/models/fhir/consent_provision.rb +80 -0
- data/app/models/fhir/consent_provision_actor.rb +33 -0
- data/app/models/fhir/consent_provision_data.rb +35 -0
- data/app/models/fhir/consent_provision_type.rb +27 -0
- data/app/models/fhir/consent_state.rb +27 -0
- data/app/models/fhir/consent_verification.rb +42 -0
- data/app/models/fhir/constraint_severity.rb +27 -0
- data/app/models/fhir/contact_detail.rb +35 -0
- data/app/models/fhir/contact_point.rb +56 -0
- data/app/models/fhir/contact_point_system.rb +27 -0
- data/app/models/fhir/contact_point_use.rb +27 -0
- data/app/models/fhir/contract.rb +219 -0
- data/app/models/fhir/contract_content_definition.rb +59 -0
- data/app/models/fhir/contract_friendly.rb +33 -0
- data/app/models/fhir/contract_legal.rb +33 -0
- data/app/models/fhir/contract_publication_status.rb +27 -0
- data/app/models/fhir/contract_rule.rb +33 -0
- data/app/models/fhir/contract_signer.rb +38 -0
- data/app/models/fhir/contract_status.rb +27 -0
- data/app/models/fhir/contract_term.rb +92 -0
- data/app/models/fhir/contract_term_action.rb +177 -0
- data/app/models/fhir/contract_term_action_subject.rb +33 -0
- data/app/models/fhir/contract_term_asset.rb +112 -0
- data/app/models/fhir/contract_term_asset_context.rb +40 -0
- data/app/models/fhir/contract_term_asset_valued_item.rb +118 -0
- data/app/models/fhir/contract_term_offer.rb +85 -0
- data/app/models/fhir/contract_term_offer_answer.rb +99 -0
- data/app/models/fhir/contract_term_offer_party.rb +33 -0
- data/app/models/fhir/contract_term_security_label.rb +48 -0
- data/app/models/fhir/contributor.rb +42 -0
- data/app/models/fhir/contributor_type.rb +27 -0
- data/app/models/fhir/count.rb +23 -0
- data/app/models/fhir/coverage.rb +120 -0
- data/app/models/fhir/coverage_class.rb +42 -0
- data/app/models/fhir/coverage_cost_to_beneficiary.rb +43 -0
- data/app/models/fhir/coverage_cost_to_beneficiary_exception.rb +33 -0
- data/app/models/fhir/coverage_eligibility_request.rb +109 -0
- data/app/models/fhir/coverage_eligibility_request_insurance.rb +42 -0
- data/app/models/fhir/coverage_eligibility_request_item.rb +78 -0
- data/app/models/fhir/coverage_eligibility_request_item_diagnosis.rb +33 -0
- data/app/models/fhir/coverage_eligibility_request_supporting_info.rb +42 -0
- data/app/models/fhir/coverage_eligibility_response.rb +120 -0
- data/app/models/fhir/coverage_eligibility_response_error.rb +28 -0
- data/app/models/fhir/coverage_eligibility_response_insurance.rb +45 -0
- data/app/models/fhir/coverage_eligibility_response_insurance_item.rb +103 -0
- data/app/models/fhir/coverage_eligibility_response_insurance_item_benefit.rb +66 -0
- data/app/models/fhir/coverage_status.rb +27 -0
- data/app/models/fhir/currency_code.rb +27 -0
- data/app/models/fhir/data_requirement.rb +82 -0
- data/app/models/fhir/data_requirement_code_filter.rb +49 -0
- data/app/models/fhir/data_requirement_date_filter.rb +54 -0
- data/app/models/fhir/data_requirement_sort.rb +37 -0
- data/app/models/fhir/day_of_week.rb +27 -0
- data/app/models/fhir/days_of_week.rb +27 -0
- data/app/models/fhir/detected_issue.rb +98 -0
- data/app/models/fhir/detected_issue_evidence.rb +33 -0
- data/app/models/fhir/detected_issue_mitigation.rb +40 -0
- data/app/models/fhir/detected_issue_severity.rb +27 -0
- data/app/models/fhir/detected_issue_status.rb +27 -0
- data/app/models/fhir/device.rb +173 -0
- data/app/models/fhir/device_definition.rb +151 -0
- data/app/models/fhir/device_definition_capability.rb +33 -0
- data/app/models/fhir/device_definition_device_name.rb +37 -0
- data/app/models/fhir/device_definition_material.rb +42 -0
- data/app/models/fhir/device_definition_property.rb +38 -0
- data/app/models/fhir/device_definition_specialization.rb +37 -0
- data/app/models/fhir/device_definition_udi_device_identifier.rb +44 -0
- data/app/models/fhir/device_device_name.rb +37 -0
- data/app/models/fhir/device_metric.rb +79 -0
- data/app/models/fhir/device_metric_calibration.rb +44 -0
- data/app/models/fhir/device_metric_calibration_state.rb +27 -0
- data/app/models/fhir/device_metric_calibration_type.rb +27 -0
- data/app/models/fhir/device_metric_category.rb +27 -0
- data/app/models/fhir/device_metric_color.rb +27 -0
- data/app/models/fhir/device_metric_operational_status.rb +27 -0
- data/app/models/fhir/device_name_type.rb +27 -0
- data/app/models/fhir/device_property.rb +38 -0
- data/app/models/fhir/device_request.rb +178 -0
- data/app/models/fhir/device_request_parameter.rb +50 -0
- data/app/models/fhir/device_request_status.rb +27 -0
- data/app/models/fhir/device_specialization.rb +35 -0
- data/app/models/fhir/device_udi_carrier.rb +65 -0
- data/app/models/fhir/device_use_statement.rb +104 -0
- data/app/models/fhir/device_use_statement_status.rb +27 -0
- data/app/models/fhir/device_version.rb +40 -0
- data/app/models/fhir/diagnostic_report.rb +126 -0
- data/app/models/fhir/diagnostic_report_media.rb +35 -0
- data/app/models/fhir/diagnostic_report_status.rb +27 -0
- data/app/models/fhir/discriminator_type.rb +27 -0
- data/app/models/fhir/distance.rb +23 -0
- data/app/models/fhir/document_confidentiality.rb +27 -0
- data/app/models/fhir/document_manifest.rb +91 -0
- data/app/models/fhir/document_manifest_related.rb +33 -0
- data/app/models/fhir/document_mode.rb +27 -0
- data/app/models/fhir/document_reference.rb +111 -0
- data/app/models/fhir/document_reference_content.rb +33 -0
- data/app/models/fhir/document_reference_context.rb +58 -0
- data/app/models/fhir/document_reference_relates_to.rb +35 -0
- data/app/models/fhir/document_reference_status.rb +27 -0
- data/app/models/fhir/document_relationship_type.rb +27 -0
- data/app/models/fhir/domain_resource.rb +43 -0
- data/app/models/fhir/dosage.rb +101 -0
- data/app/models/fhir/dosage_dose_and_rate.rb +53 -0
- data/app/models/fhir/duration.rb +23 -0
- data/app/models/fhir/effect_evidence_synthesis.rb +210 -0
- data/app/models/fhir/effect_evidence_synthesis_certainty.rb +38 -0
- data/app/models/fhir/effect_evidence_synthesis_certainty_certainty_subcomponent.rb +38 -0
- data/app/models/fhir/effect_evidence_synthesis_effect_estimate.rb +57 -0
- data/app/models/fhir/effect_evidence_synthesis_effect_estimate_precision_estimate.rb +49 -0
- data/app/models/fhir/effect_evidence_synthesis_results_by_exposure.rb +47 -0
- data/app/models/fhir/effect_evidence_synthesis_sample_size.rb +44 -0
- data/app/models/fhir/element.rb +37 -0
- data/app/models/fhir/element_definition.rb +1205 -0
- data/app/models/fhir/element_definition_base.rb +44 -0
- data/app/models/fhir/element_definition_binding.rb +44 -0
- data/app/models/fhir/element_definition_constraint.rb +72 -0
- data/app/models/fhir/element_definition_example.rb +318 -0
- data/app/models/fhir/element_definition_mapping.rb +51 -0
- data/app/models/fhir/element_definition_slicing.rb +49 -0
- data/app/models/fhir/element_definition_slicing_discriminator.rb +37 -0
- data/app/models/fhir/element_definition_type.rb +47 -0
- data/app/models/fhir/eligibility_request_purpose.rb +27 -0
- data/app/models/fhir/eligibility_request_status.rb +27 -0
- data/app/models/fhir/eligibility_response_purpose.rb +27 -0
- data/app/models/fhir/eligibility_response_status.rb +27 -0
- data/app/models/fhir/enable_when_behavior.rb +27 -0
- data/app/models/fhir/encounter.rb +140 -0
- data/app/models/fhir/encounter_class_history.rb +33 -0
- data/app/models/fhir/encounter_diagnosis.rb +40 -0
- data/app/models/fhir/encounter_hospitalization.rb +68 -0
- data/app/models/fhir/encounter_location.rb +45 -0
- data/app/models/fhir/encounter_location_status.rb +27 -0
- data/app/models/fhir/encounter_participant.rb +38 -0
- data/app/models/fhir/encounter_status.rb +27 -0
- data/app/models/fhir/encounter_status_history.rb +35 -0
- data/app/models/fhir/endpoint.rb +94 -0
- data/app/models/fhir/endpoint_status.rb +27 -0
- data/app/models/fhir/enrollment_request.rb +62 -0
- data/app/models/fhir/enrollment_request_status.rb +27 -0
- data/app/models/fhir/enrollment_response.rb +71 -0
- data/app/models/fhir/enrollment_response_status.rb +27 -0
- data/app/models/fhir/episode_of_care.rb +85 -0
- data/app/models/fhir/episode_of_care_diagnosis.rb +40 -0
- data/app/models/fhir/episode_of_care_status.rb +27 -0
- data/app/models/fhir/episode_of_care_status_history.rb +35 -0
- data/app/models/fhir/event_capability_mode.rb +27 -0
- data/app/models/fhir/event_definition.rb +198 -0
- data/app/models/fhir/event_timing.rb +27 -0
- data/app/models/fhir/evidence.rb +189 -0
- data/app/models/fhir/evidence_variable.rb +186 -0
- data/app/models/fhir/evidence_variable_characteristic.rb +108 -0
- data/app/models/fhir/evidence_variable_type.rb +27 -0
- data/app/models/fhir/example_scenario.rb +131 -0
- data/app/models/fhir/example_scenario_actor.rb +51 -0
- data/app/models/fhir/example_scenario_actor_type.rb +27 -0
- data/app/models/fhir/example_scenario_instance.rb +61 -0
- data/app/models/fhir/example_scenario_instance_contained_instance.rb +37 -0
- data/app/models/fhir/example_scenario_instance_version.rb +37 -0
- data/app/models/fhir/example_scenario_process.rb +56 -0
- data/app/models/fhir/example_scenario_process_step.rb +45 -0
- data/app/models/fhir/example_scenario_process_step_alternative.rb +42 -0
- data/app/models/fhir/example_scenario_process_step_operation.rb +89 -0
- data/app/models/fhir/explanation_of_benefit.rb +255 -0
- data/app/models/fhir/explanation_of_benefit_accident.rb +45 -0
- data/app/models/fhir/explanation_of_benefit_add_item.rb +152 -0
- data/app/models/fhir/explanation_of_benefit_add_item_detail.rb +75 -0
- data/app/models/fhir/explanation_of_benefit_add_item_detail_sub_detail.rb +70 -0
- data/app/models/fhir/explanation_of_benefit_benefit_balance.rb +69 -0
- data/app/models/fhir/explanation_of_benefit_benefit_balance_financial.rb +59 -0
- data/app/models/fhir/explanation_of_benefit_care_team.rb +52 -0
- data/app/models/fhir/explanation_of_benefit_diagnosis.rb +55 -0
- data/app/models/fhir/explanation_of_benefit_insurance.rb +45 -0
- data/app/models/fhir/explanation_of_benefit_item.rb +184 -0
- data/app/models/fhir/explanation_of_benefit_item_adjudication.rb +45 -0
- data/app/models/fhir/explanation_of_benefit_item_detail.rb +102 -0
- data/app/models/fhir/explanation_of_benefit_item_detail_sub_detail.rb +97 -0
- data/app/models/fhir/explanation_of_benefit_payee.rb +33 -0
- data/app/models/fhir/explanation_of_benefit_payment.rb +55 -0
- data/app/models/fhir/explanation_of_benefit_procedure.rb +57 -0
- data/app/models/fhir/explanation_of_benefit_process_note.rb +49 -0
- data/app/models/fhir/explanation_of_benefit_related.rb +38 -0
- data/app/models/fhir/explanation_of_benefit_status.rb +27 -0
- data/app/models/fhir/explanation_of_benefit_supporting_info.rb +86 -0
- data/app/models/fhir/explanation_of_benefit_total.rb +33 -0
- data/app/models/fhir/exposure_state.rb +27 -0
- data/app/models/fhir/expression.rb +58 -0
- data/app/models/fhir/extension.rb +337 -0
- data/app/models/fhir/extension_context_type.rb +27 -0
- data/app/models/fhir/family_history_status.rb +27 -0
- data/app/models/fhir/family_member_history.rb +183 -0
- data/app/models/fhir/family_member_history_condition.rb +67 -0
- data/app/models/fhir/fhir_all_types.rb +27 -0
- data/app/models/fhir/fhir_defined_type.rb +27 -0
- data/app/models/fhir/fhir_device_status.rb +27 -0
- data/app/models/fhir/fhir_resource_type.rb +27 -0
- data/app/models/fhir/fhir_substance_status.rb +27 -0
- data/app/models/fhir/fhir_version.rb +27 -0
- data/app/models/fhir/filter_operator.rb +27 -0
- data/app/models/fhir/flag.rb +65 -0
- data/app/models/fhir/flag_status.rb +27 -0
- data/app/models/fhir/goal.rb +116 -0
- data/app/models/fhir/goal_lifecycle_status.rb +27 -0
- data/app/models/fhir/goal_target.rb +81 -0
- data/app/models/fhir/graph_compartment_rule.rb +27 -0
- data/app/models/fhir/graph_compartment_use.rb +27 -0
- data/app/models/fhir/graph_definition.rb +120 -0
- data/app/models/fhir/graph_definition_link.rb +63 -0
- data/app/models/fhir/graph_definition_link_target.rb +54 -0
- data/app/models/fhir/graph_definition_link_target_compartment.rb +58 -0
- data/app/models/fhir/group.rb +83 -0
- data/app/models/fhir/group_characteristic.rb +67 -0
- data/app/models/fhir/group_measure.rb +27 -0
- data/app/models/fhir/group_member.rb +40 -0
- data/app/models/fhir/group_type.rb +27 -0
- data/app/models/fhir/guidance_response.rb +116 -0
- data/app/models/fhir/guidance_response_status.rb +27 -0
- data/app/models/fhir/guide_page_generation.rb +27 -0
- data/app/models/fhir/guide_parameter_code.rb +27 -0
- data/app/models/fhir/healthcare_service.rb +155 -0
- data/app/models/fhir/healthcare_service_available_time.rb +54 -0
- data/app/models/fhir/healthcare_service_eligibility.rb +35 -0
- data/app/models/fhir/healthcare_service_not_available.rb +35 -0
- data/app/models/fhir/http_verb.rb +27 -0
- data/app/models/fhir/human_name.rb +79 -0
- data/app/models/fhir/identifier.rb +59 -0
- data/app/models/fhir/identifier_use.rb +27 -0
- data/app/models/fhir/identity_assurance_level.rb +27 -0
- data/app/models/fhir/imaging_study.rb +133 -0
- data/app/models/fhir/imaging_study_series.rb +93 -0
- data/app/models/fhir/imaging_study_series_instance.rb +49 -0
- data/app/models/fhir/imaging_study_series_performer.rb +33 -0
- data/app/models/fhir/imaging_study_status.rb +27 -0
- data/app/models/fhir/immunization.rb +184 -0
- data/app/models/fhir/immunization_education.rb +51 -0
- data/app/models/fhir/immunization_evaluation.rb +114 -0
- data/app/models/fhir/immunization_evaluation_status.rb +27 -0
- data/app/models/fhir/immunization_performer.rb +33 -0
- data/app/models/fhir/immunization_protocol_applied.rb +68 -0
- data/app/models/fhir/immunization_reaction.rb +42 -0
- data/app/models/fhir/immunization_recommendation.rb +50 -0
- data/app/models/fhir/immunization_recommendation_recommendation.rb +105 -0
- data/app/models/fhir/immunization_recommendation_recommendation_date_criterion.rb +35 -0
- data/app/models/fhir/immunization_status.rb +27 -0
- data/app/models/fhir/implementation_guide.rb +152 -0
- data/app/models/fhir/implementation_guide_definition.rb +48 -0
- data/app/models/fhir/implementation_guide_definition_grouping.rb +37 -0
- data/app/models/fhir/implementation_guide_definition_page.rb +54 -0
- data/app/models/fhir/implementation_guide_definition_parameter.rb +37 -0
- data/app/models/fhir/implementation_guide_definition_resource.rb +73 -0
- data/app/models/fhir/implementation_guide_definition_template.rb +44 -0
- data/app/models/fhir/implementation_guide_depends_on.rb +44 -0
- data/app/models/fhir/implementation_guide_global.rb +37 -0
- data/app/models/fhir/implementation_guide_manifest.rb +60 -0
- data/app/models/fhir/implementation_guide_manifest_page.rb +47 -0
- data/app/models/fhir/implementation_guide_manifest_resource.rb +49 -0
- data/app/models/fhir/insurance_plan.rb +102 -0
- data/app/models/fhir/insurance_plan_contact.rb +43 -0
- data/app/models/fhir/insurance_plan_coverage.rb +38 -0
- data/app/models/fhir/insurance_plan_coverage_benefit.rb +40 -0
- data/app/models/fhir/insurance_plan_coverage_benefit_limit.rb +33 -0
- data/app/models/fhir/insurance_plan_plan.rb +53 -0
- data/app/models/fhir/insurance_plan_plan_general_cost.rb +47 -0
- data/app/models/fhir/insurance_plan_plan_specific_cost.rb +33 -0
- data/app/models/fhir/insurance_plan_plan_specific_cost_benefit.rb +33 -0
- data/app/models/fhir/insurance_plan_plan_specific_cost_benefit_cost.rb +43 -0
- data/app/models/fhir/invoice.rb +111 -0
- data/app/models/fhir/invoice_line_item.rb +45 -0
- data/app/models/fhir/invoice_line_item_price_component.rb +47 -0
- data/app/models/fhir/invoice_participant.rb +33 -0
- data/app/models/fhir/invoice_price_component_type.rb +27 -0
- data/app/models/fhir/invoice_status.rb +27 -0
- data/app/models/fhir/issue_severity.rb +27 -0
- data/app/models/fhir/issue_type.rb +27 -0
- data/app/models/fhir/library.rb +213 -0
- data/app/models/fhir/link_type.rb +27 -0
- data/app/models/fhir/linkage.rb +40 -0
- data/app/models/fhir/linkage_item.rb +35 -0
- data/app/models/fhir/linkage_type.rb +27 -0
- data/app/models/fhir/list.rb +96 -0
- data/app/models/fhir/list_entry.rb +47 -0
- data/app/models/fhir/list_mode.rb +27 -0
- data/app/models/fhir/list_status.rb +27 -0
- data/app/models/fhir/location.rb +123 -0
- data/app/models/fhir/location_hours_of_operation.rb +54 -0
- data/app/models/fhir/location_mode.rb +27 -0
- data/app/models/fhir/location_position.rb +44 -0
- data/app/models/fhir/location_status.rb +27 -0
- data/app/models/fhir/marketing_status.rb +50 -0
- data/app/models/fhir/measure.rb +295 -0
- data/app/models/fhir/measure_group.rb +45 -0
- data/app/models/fhir/measure_group_population.rb +40 -0
- data/app/models/fhir/measure_group_stratifier.rb +45 -0
- data/app/models/fhir/measure_group_stratifier_component.rb +40 -0
- data/app/models/fhir/measure_report.rb +86 -0
- data/app/models/fhir/measure_report_group.rb +43 -0
- data/app/models/fhir/measure_report_group_population.rb +40 -0
- data/app/models/fhir/measure_report_group_stratifier.rb +33 -0
- data/app/models/fhir/measure_report_group_stratifier_stratum.rb +43 -0
- data/app/models/fhir/measure_report_group_stratifier_stratum_component.rb +33 -0
- data/app/models/fhir/measure_report_group_stratifier_stratum_population.rb +40 -0
- data/app/models/fhir/measure_report_status.rb +27 -0
- data/app/models/fhir/measure_report_type.rb +27 -0
- data/app/models/fhir/measure_supplemental_data.rb +45 -0
- data/app/models/fhir/media.rb +154 -0
- data/app/models/fhir/media_status.rb +27 -0
- data/app/models/fhir/medication.rb +65 -0
- data/app/models/fhir/medication_administration.rb +137 -0
- data/app/models/fhir/medication_administration_dosage.rb +60 -0
- data/app/models/fhir/medication_administration_performer.rb +33 -0
- data/app/models/fhir/medication_administration_status.rb +27 -0
- data/app/models/fhir/medication_batch.rb +37 -0
- data/app/models/fhir/medication_dispense.rb +159 -0
- data/app/models/fhir/medication_dispense_performer.rb +33 -0
- data/app/models/fhir/medication_dispense_status.rb +27 -0
- data/app/models/fhir/medication_dispense_substitution.rb +45 -0
- data/app/models/fhir/medication_ingredient.rb +45 -0
- data/app/models/fhir/medication_knowledge.rb +142 -0
- data/app/models/fhir/medication_knowledge_administration_guidelines.rb +43 -0
- data/app/models/fhir/medication_knowledge_administration_guidelines_dosage.rb +33 -0
- data/app/models/fhir/medication_knowledge_administration_guidelines_patient_characteristics.rb +43 -0
- data/app/models/fhir/medication_knowledge_cost.rb +40 -0
- data/app/models/fhir/medication_knowledge_drug_characteristic.rb +52 -0
- data/app/models/fhir/medication_knowledge_ingredient.rb +45 -0
- data/app/models/fhir/medication_knowledge_kinetics.rb +38 -0
- data/app/models/fhir/medication_knowledge_medicine_classification.rb +33 -0
- data/app/models/fhir/medication_knowledge_monitoring_program.rb +35 -0
- data/app/models/fhir/medication_knowledge_monograph.rb +33 -0
- data/app/models/fhir/medication_knowledge_packaging.rb +33 -0
- data/app/models/fhir/medication_knowledge_regulatory.rb +43 -0
- data/app/models/fhir/medication_knowledge_regulatory_max_dispense.rb +33 -0
- data/app/models/fhir/medication_knowledge_regulatory_schedule.rb +28 -0
- data/app/models/fhir/medication_knowledge_regulatory_substitution.rb +35 -0
- data/app/models/fhir/medication_knowledge_related_medication_knowledge.rb +33 -0
- data/app/models/fhir/medication_knowledge_status.rb +27 -0
- data/app/models/fhir/medication_request.rb +215 -0
- data/app/models/fhir/medication_request_dispense_request.rb +60 -0
- data/app/models/fhir/medication_request_dispense_request_initial_fill.rb +33 -0
- data/app/models/fhir/medication_request_intent.rb +27 -0
- data/app/models/fhir/medication_request_priority.rb +27 -0
- data/app/models/fhir/medication_request_status.rb +27 -0
- data/app/models/fhir/medication_request_substitution.rb +40 -0
- data/app/models/fhir/medication_statement.rb +124 -0
- data/app/models/fhir/medication_statement_status.rb +27 -0
- data/app/models/fhir/medication_status.rb +27 -0
- data/app/models/fhir/medicinal_product.rb +128 -0
- data/app/models/fhir/medicinal_product_authorization.rb +111 -0
- data/app/models/fhir/medicinal_product_authorization_jurisdictional_authorization.rb +48 -0
- data/app/models/fhir/medicinal_product_authorization_procedure.rb +50 -0
- data/app/models/fhir/medicinal_product_contraindication.rb +58 -0
- data/app/models/fhir/medicinal_product_contraindication_other_therapy.rb +38 -0
- data/app/models/fhir/medicinal_product_indication.rb +68 -0
- data/app/models/fhir/medicinal_product_indication_other_therapy.rb +38 -0
- data/app/models/fhir/medicinal_product_ingredient.rb +55 -0
- data/app/models/fhir/medicinal_product_ingredient_specified_substance.rb +43 -0
- data/app/models/fhir/medicinal_product_ingredient_specified_substance_strength.rb +60 -0
- data/app/models/fhir/medicinal_product_ingredient_specified_substance_strength_reference_strength.rb +50 -0
- data/app/models/fhir/medicinal_product_ingredient_substance.rb +33 -0
- data/app/models/fhir/medicinal_product_interaction.rb +60 -0
- data/app/models/fhir/medicinal_product_interaction_interactant.rb +33 -0
- data/app/models/fhir/medicinal_product_manufactured.rb +58 -0
- data/app/models/fhir/medicinal_product_manufacturing_business_operation.rb +55 -0
- data/app/models/fhir/medicinal_product_name.rb +40 -0
- data/app/models/fhir/medicinal_product_name_country_language.rb +38 -0
- data/app/models/fhir/medicinal_product_name_name_part.rb +35 -0
- data/app/models/fhir/medicinal_product_packaged.rb +70 -0
- data/app/models/fhir/medicinal_product_packaged_batch_identifier.rb +33 -0
- data/app/models/fhir/medicinal_product_packaged_package_item.rb +83 -0
- data/app/models/fhir/medicinal_product_pharmaceutical.rb +58 -0
- data/app/models/fhir/medicinal_product_pharmaceutical_characteristics.rb +33 -0
- data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration.rb +58 -0
- data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration_target_species.rb +33 -0
- data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration_target_species_withdrawal_period.rb +40 -0
- data/app/models/fhir/medicinal_product_special_designation.rb +65 -0
- data/app/models/fhir/medicinal_product_undesirable_effect.rb +48 -0
- data/app/models/fhir/message_definition.rb +193 -0
- data/app/models/fhir/message_definition_allowed_response.rb +37 -0
- data/app/models/fhir/message_definition_focus.rb +51 -0
- data/app/models/fhir/message_header.rb +87 -0
- data/app/models/fhir/message_header_destination.rb +47 -0
- data/app/models/fhir/message_header_response.rb +42 -0
- data/app/models/fhir/message_header_source.rb +56 -0
- data/app/models/fhir/message_significance_category.rb +27 -0
- data/app/models/fhir/messageheader_response_request.rb +27 -0
- data/app/models/fhir/meta.rb +64 -0
- data/app/models/fhir/mime_type.rb +27 -0
- data/app/models/fhir/molecular_sequence.rb +111 -0
- data/app/models/fhir/molecular_sequence_quality.rb +120 -0
- data/app/models/fhir/molecular_sequence_quality_roc.rb +93 -0
- data/app/models/fhir/molecular_sequence_reference_seq.rb +80 -0
- data/app/models/fhir/molecular_sequence_repository.rb +65 -0
- data/app/models/fhir/molecular_sequence_structure_variant.rb +52 -0
- data/app/models/fhir/molecular_sequence_structure_variant_inner.rb +37 -0
- data/app/models/fhir/molecular_sequence_structure_variant_outer.rb +37 -0
- data/app/models/fhir/molecular_sequence_variant.rb +63 -0
- data/app/models/fhir/money.rb +37 -0
- data/app/models/fhir/money_quantity.rb +58 -0
- data/app/models/fhir/name_use.rb +27 -0
- data/app/models/fhir/naming_system.rb +104 -0
- data/app/models/fhir/naming_system_identifier_type.rb +27 -0
- data/app/models/fhir/naming_system_type.rb +27 -0
- data/app/models/fhir/naming_system_unique_id.rb +56 -0
- data/app/models/fhir/narrative.rb +37 -0
- data/app/models/fhir/narrative_status.rb +27 -0
- data/app/models/fhir/note_type.rb +27 -0
- data/app/models/fhir/nutritiion_order_intent.rb +27 -0
- data/app/models/fhir/nutrition_order.rb +129 -0
- data/app/models/fhir/nutrition_order_enteral_formula.rb +74 -0
- data/app/models/fhir/nutrition_order_enteral_formula_administration.rb +43 -0
- data/app/models/fhir/nutrition_order_oral_diet.rb +55 -0
- data/app/models/fhir/nutrition_order_oral_diet_nutrient.rb +33 -0
- data/app/models/fhir/nutrition_order_oral_diet_texture.rb +33 -0
- data/app/models/fhir/nutrition_order_status.rb +27 -0
- data/app/models/fhir/nutrition_order_supplement.rb +52 -0
- data/app/models/fhir/observation.rb +226 -0
- data/app/models/fhir/observation_component.rb +108 -0
- data/app/models/fhir/observation_data_type.rb +27 -0
- data/app/models/fhir/observation_definition.rb +97 -0
- data/app/models/fhir/observation_definition_qualified_interval.rb +69 -0
- data/app/models/fhir/observation_definition_quantitative_details.rb +47 -0
- data/app/models/fhir/observation_range_category.rb +27 -0
- data/app/models/fhir/observation_reference_range.rb +55 -0
- data/app/models/fhir/observation_status.rb +27 -0
- data/app/models/fhir/operation_definition.rb +198 -0
- data/app/models/fhir/operation_definition_overload.rb +40 -0
- data/app/models/fhir/operation_definition_parameter.rb +97 -0
- data/app/models/fhir/operation_definition_parameter_binding.rb +37 -0
- data/app/models/fhir/operation_definition_parameter_referenced_from.rb +37 -0
- data/app/models/fhir/operation_kind.rb +27 -0
- data/app/models/fhir/operation_outcome.rb +28 -0
- data/app/models/fhir/operation_outcome_issue.rb +69 -0
- data/app/models/fhir/operation_parameter_use.rb +27 -0
- data/app/models/fhir/organization.rb +82 -0
- data/app/models/fhir/organization_affiliation.rb +85 -0
- data/app/models/fhir/organization_contact.rb +43 -0
- data/app/models/fhir/orientation_type.rb +27 -0
- data/app/models/fhir/parameter_definition.rb +72 -0
- data/app/models/fhir/parameter_use.rb +27 -0
- data/app/models/fhir/parameters.rb +28 -0
- data/app/models/fhir/parameters_parameter.rb +328 -0
- data/app/models/fhir/participant_required.rb +27 -0
- data/app/models/fhir/participant_status.rb +27 -0
- data/app/models/fhir/participation_status.rb +27 -0
- data/app/models/fhir/patient.rb +127 -0
- data/app/models/fhir/patient_communication.rb +35 -0
- data/app/models/fhir/patient_contact.rb +60 -0
- data/app/models/fhir/patient_link.rb +35 -0
- data/app/models/fhir/payment_notice.rb +89 -0
- data/app/models/fhir/payment_notice_status.rb +27 -0
- data/app/models/fhir/payment_reconciliation.rb +108 -0
- data/app/models/fhir/payment_reconciliation_detail.rb +75 -0
- data/app/models/fhir/payment_reconciliation_process_note.rb +37 -0
- data/app/models/fhir/payment_reconciliation_status.rb +27 -0
- data/app/models/fhir/period.rb +37 -0
- data/app/models/fhir/person.rb +79 -0
- data/app/models/fhir/person_link.rb +35 -0
- data/app/models/fhir/plan_definition.rb +218 -0
- data/app/models/fhir/plan_definition_action.rb +226 -0
- data/app/models/fhir/plan_definition_action_condition.rb +35 -0
- data/app/models/fhir/plan_definition_action_dynamic_value.rb +35 -0
- data/app/models/fhir/plan_definition_action_participant.rb +35 -0
- data/app/models/fhir/plan_definition_action_related_action.rb +47 -0
- data/app/models/fhir/plan_definition_goal.rb +58 -0
- data/app/models/fhir/plan_definition_goal_target.rb +48 -0
- data/app/models/fhir/population.rb +48 -0
- data/app/models/fhir/practitioner.rb +79 -0
- data/app/models/fhir/practitioner_qualification.rb +43 -0
- data/app/models/fhir/practitioner_role.rb +97 -0
- data/app/models/fhir/practitioner_role_available_time.rb +54 -0
- data/app/models/fhir/practitioner_role_not_available.rb +35 -0
- data/app/models/fhir/primitive_base_64_binary.rb +31 -0
- data/app/models/fhir/primitive_boolean.rb +31 -0
- data/app/models/fhir/primitive_canonical.rb +27 -0
- data/app/models/fhir/primitive_code.rb +27 -0
- data/app/models/fhir/primitive_date.rb +31 -0
- data/app/models/fhir/primitive_date_time.rb +31 -0
- data/app/models/fhir/primitive_decimal.rb +31 -0
- data/app/models/fhir/primitive_id.rb +27 -0
- data/app/models/fhir/primitive_instant.rb +31 -0
- data/app/models/fhir/primitive_integer.rb +31 -0
- data/app/models/fhir/primitive_markdown.rb +27 -0
- data/app/models/fhir/primitive_oid.rb +27 -0
- data/app/models/fhir/primitive_positive_int.rb +27 -0
- data/app/models/fhir/primitive_question.rb +27 -0
- data/app/models/fhir/primitive_string.rb +31 -0
- data/app/models/fhir/primitive_time.rb +31 -0
- data/app/models/fhir/primitive_unsigned_int.rb +27 -0
- data/app/models/fhir/primitive_uri.rb +31 -0
- data/app/models/fhir/primitive_url.rb +27 -0
- data/app/models/fhir/primitive_uuid.rb +27 -0
- data/app/models/fhir/primitive_xhtml.rb +31 -0
- data/app/models/fhir/procedure.rb +199 -0
- data/app/models/fhir/procedure_focal_device.rb +33 -0
- data/app/models/fhir/procedure_performer.rb +38 -0
- data/app/models/fhir/procedure_status.rb +27 -0
- data/app/models/fhir/prod_characteristic.rb +90 -0
- data/app/models/fhir/product_shelf_life.rb +43 -0
- data/app/models/fhir/property_representation.rb +27 -0
- data/app/models/fhir/property_type.rb +27 -0
- data/app/models/fhir/provenance.rb +87 -0
- data/app/models/fhir/provenance_agent.rb +43 -0
- data/app/models/fhir/provenance_entity.rb +40 -0
- data/app/models/fhir/provenance_entity_role.rb +27 -0
- data/app/models/fhir/publication_status.rb +27 -0
- data/app/models/fhir/quality_type.rb +27 -0
- data/app/models/fhir/quantity.rb +58 -0
- data/app/models/fhir/quantity_comparator.rb +27 -0
- data/app/models/fhir/questionnaire.rb +169 -0
- data/app/models/fhir/questionnaire_item.rb +125 -0
- data/app/models/fhir/questionnaire_item_answer_option.rb +68 -0
- data/app/models/fhir/questionnaire_item_enable_when.rb +101 -0
- data/app/models/fhir/questionnaire_item_initial.rb +99 -0
- data/app/models/fhir/questionnaire_item_operator.rb +27 -0
- data/app/models/fhir/questionnaire_item_type.rb +27 -0
- data/app/models/fhir/questionnaire_response.rb +84 -0
- data/app/models/fhir/questionnaire_response_item.rb +54 -0
- data/app/models/fhir/questionnaire_response_item_answer.rb +104 -0
- data/app/models/fhir/questionnaire_response_status.rb +27 -0
- data/app/models/fhir/range.rb +33 -0
- data/app/models/fhir/ratio.rb +33 -0
- data/app/models/fhir/reference.rb +49 -0
- data/app/models/fhir/reference_handling_policy.rb +27 -0
- data/app/models/fhir/reference_version_rules.rb +27 -0
- data/app/models/fhir/referred_document_status.rb +27 -0
- data/app/models/fhir/related_artifact.rb +70 -0
- data/app/models/fhir/related_artifact_type.rb +27 -0
- data/app/models/fhir/related_person.rb +89 -0
- data/app/models/fhir/related_person_communication.rb +35 -0
- data/app/models/fhir/remittance_outcome.rb +27 -0
- data/app/models/fhir/repository_type.rb +27 -0
- data/app/models/fhir/request_group.rb +131 -0
- data/app/models/fhir/request_group_action.rb +165 -0
- data/app/models/fhir/request_group_action_condition.rb +35 -0
- data/app/models/fhir/request_group_action_related_action.rb +47 -0
- data/app/models/fhir/request_intent.rb +27 -0
- data/app/models/fhir/request_priority.rb +27 -0
- data/app/models/fhir/request_status.rb +27 -0
- data/app/models/fhir/research_definition.rb +240 -0
- data/app/models/fhir/research_element_definition.rb +239 -0
- data/app/models/fhir/research_element_definition_characteristic.rb +144 -0
- data/app/models/fhir/research_element_type.rb +27 -0
- data/app/models/fhir/research_study.rb +149 -0
- data/app/models/fhir/research_study_arm.rb +42 -0
- data/app/models/fhir/research_study_objective.rb +35 -0
- data/app/models/fhir/research_study_status.rb +27 -0
- data/app/models/fhir/research_subject.rb +69 -0
- data/app/models/fhir/research_subject_status.rb +27 -0
- data/app/models/fhir/resource.rb +59 -0
- data/app/models/fhir/resource_type.rb +27 -0
- data/app/models/fhir/resource_version_policy.rb +27 -0
- data/app/models/fhir/response_type.rb +27 -0
- data/app/models/fhir/restful_capability_mode.rb +27 -0
- data/app/models/fhir/risk_assessment.rb +119 -0
- data/app/models/fhir/risk_assessment_prediction.rb +69 -0
- data/app/models/fhir/risk_assessment_status.rb +27 -0
- data/app/models/fhir/risk_evidence_synthesis.rb +200 -0
- data/app/models/fhir/risk_evidence_synthesis_certainty.rb +38 -0
- data/app/models/fhir/risk_evidence_synthesis_certainty_certainty_subcomponent.rb +38 -0
- data/app/models/fhir/risk_evidence_synthesis_risk_estimate.rb +66 -0
- data/app/models/fhir/risk_evidence_synthesis_risk_estimate_precision_estimate.rb +49 -0
- data/app/models/fhir/risk_evidence_synthesis_sample_size.rb +44 -0
- data/app/models/fhir/sampled_data.rb +70 -0
- data/app/models/fhir/schedule.rb +67 -0
- data/app/models/fhir/search_comparator.rb +27 -0
- data/app/models/fhir/search_entry_mode.rb +27 -0
- data/app/models/fhir/search_modifier_code.rb +27 -0
- data/app/models/fhir/search_param_type.rb +27 -0
- data/app/models/fhir/search_parameter.rb +212 -0
- data/app/models/fhir/search_parameter_component.rb +37 -0
- data/app/models/fhir/section_mode.rb +27 -0
- data/app/models/fhir/sequence_type.rb +27 -0
- data/app/models/fhir/service_request.rb +239 -0
- data/app/models/fhir/service_request_intent.rb +27 -0
- data/app/models/fhir/service_request_priority.rb +27 -0
- data/app/models/fhir/service_request_status.rb +27 -0
- data/app/models/fhir/signature.rb +66 -0
- data/app/models/fhir/simple_quantity.rb +51 -0
- data/app/models/fhir/slicing_rules.rb +27 -0
- data/app/models/fhir/slot.rb +88 -0
- data/app/models/fhir/slot_status.rb +27 -0
- data/app/models/fhir/sort_direction.rb +27 -0
- data/app/models/fhir/spdx_license.rb +27 -0
- data/app/models/fhir/specimen.rb +92 -0
- data/app/models/fhir/specimen_collection.rb +70 -0
- data/app/models/fhir/specimen_contained_preference.rb +27 -0
- data/app/models/fhir/specimen_container.rb +60 -0
- data/app/models/fhir/specimen_definition.rb +55 -0
- data/app/models/fhir/specimen_definition_type_tested.rb +69 -0
- data/app/models/fhir/specimen_definition_type_tested_container.rb +74 -0
- data/app/models/fhir/specimen_definition_type_tested_container_additive.rb +33 -0
- data/app/models/fhir/specimen_definition_type_tested_handling.rb +45 -0
- data/app/models/fhir/specimen_processing.rb +52 -0
- data/app/models/fhir/specimen_status.rb +27 -0
- data/app/models/fhir/status.rb +27 -0
- data/app/models/fhir/strand_type.rb +27 -0
- data/app/models/fhir/structure_definition.rb +197 -0
- data/app/models/fhir/structure_definition_context.rb +37 -0
- data/app/models/fhir/structure_definition_differential.rb +28 -0
- data/app/models/fhir/structure_definition_kind.rb +27 -0
- data/app/models/fhir/structure_definition_mapping.rb +51 -0
- data/app/models/fhir/structure_definition_snapshot.rb +28 -0
- data/app/models/fhir/structure_map.rb +140 -0
- data/app/models/fhir/structure_map_context_type.rb +27 -0
- data/app/models/fhir/structure_map_group.rb +61 -0
- data/app/models/fhir/structure_map_group_input.rb +51 -0
- data/app/models/fhir/structure_map_group_rule.rb +57 -0
- data/app/models/fhir/structure_map_group_rule_dependent.rb +40 -0
- data/app/models/fhir/structure_map_group_rule_source.rb +381 -0
- data/app/models/fhir/structure_map_group_rule_target.rb +80 -0
- data/app/models/fhir/structure_map_group_rule_target_parameter.rb +58 -0
- data/app/models/fhir/structure_map_group_type_mode.rb +27 -0
- data/app/models/fhir/structure_map_input_mode.rb +27 -0
- data/app/models/fhir/structure_map_model_mode.rb +27 -0
- data/app/models/fhir/structure_map_source_list_mode.rb +27 -0
- data/app/models/fhir/structure_map_structure.rb +51 -0
- data/app/models/fhir/structure_map_target_list_mode.rb +27 -0
- data/app/models/fhir/structure_map_transform.rb +27 -0
- data/app/models/fhir/subscription.rb +68 -0
- data/app/models/fhir/subscription_channel.rb +54 -0
- data/app/models/fhir/subscription_channel_type.rb +27 -0
- data/app/models/fhir/subscription_status.rb +27 -0
- data/app/models/fhir/substance.rb +62 -0
- data/app/models/fhir/substance_amount.rb +57 -0
- data/app/models/fhir/substance_amount_reference_range.rb +33 -0
- data/app/models/fhir/substance_ingredient.rb +38 -0
- data/app/models/fhir/substance_instance.rb +40 -0
- data/app/models/fhir/substance_nucleic_acid.rb +52 -0
- data/app/models/fhir/substance_nucleic_acid_subunit.rb +69 -0
- data/app/models/fhir/substance_nucleic_acid_subunit_linkage.rb +49 -0
- data/app/models/fhir/substance_nucleic_acid_subunit_sugar.rb +42 -0
- data/app/models/fhir/substance_polymer.rb +58 -0
- data/app/models/fhir/substance_polymer_monomer_set.rb +33 -0
- data/app/models/fhir/substance_polymer_monomer_set_starting_material.rb +45 -0
- data/app/models/fhir/substance_polymer_repeat.rb +47 -0
- data/app/models/fhir/substance_polymer_repeat_repeat_unit.rb +50 -0
- data/app/models/fhir/substance_polymer_repeat_repeat_unit_degree_of_polymerisation.rb +33 -0
- data/app/models/fhir/substance_polymer_repeat_repeat_unit_structural_representation.rb +40 -0
- data/app/models/fhir/substance_protein.rb +50 -0
- data/app/models/fhir/substance_protein_subunit.rb +73 -0
- data/app/models/fhir/substance_reference_information.rb +50 -0
- data/app/models/fhir/substance_reference_information_classification.rb +43 -0
- data/app/models/fhir/substance_reference_information_gene.rb +38 -0
- data/app/models/fhir/substance_reference_information_gene_element.rb +38 -0
- data/app/models/fhir/substance_reference_information_target.rb +75 -0
- data/app/models/fhir/substance_source_material.rb +100 -0
- data/app/models/fhir/substance_source_material_fraction_description.rb +35 -0
- data/app/models/fhir/substance_source_material_organism.rb +65 -0
- data/app/models/fhir/substance_source_material_organism_author.rb +35 -0
- data/app/models/fhir/substance_source_material_organism_hybrid.rb +56 -0
- data/app/models/fhir/substance_source_material_organism_organism_general.rb +43 -0
- data/app/models/fhir/substance_source_material_part_description.rb +33 -0
- data/app/models/fhir/substance_specification.rb +122 -0
- data/app/models/fhir/substance_specification_code.rb +52 -0
- data/app/models/fhir/substance_specification_moiety.rb +69 -0
- data/app/models/fhir/substance_specification_name.rb +82 -0
- data/app/models/fhir/substance_specification_name_official.rb +40 -0
- data/app/models/fhir/substance_specification_property.rb +62 -0
- data/app/models/fhir/substance_specification_relationship.rb +82 -0
- data/app/models/fhir/substance_specification_structure.rb +67 -0
- data/app/models/fhir/substance_specification_structure_isotope.rb +48 -0
- data/app/models/fhir/substance_specification_structure_isotope_molecular_weight.rb +38 -0
- data/app/models/fhir/substance_specification_structure_representation.rb +40 -0
- data/app/models/fhir/supply_delivery.rb +92 -0
- data/app/models/fhir/supply_delivery_status.rb +27 -0
- data/app/models/fhir/supply_delivery_supplied_item.rb +38 -0
- data/app/models/fhir/supply_request.rb +121 -0
- data/app/models/fhir/supply_request_parameter.rb +50 -0
- data/app/models/fhir/supply_request_status.rb +27 -0
- data/app/models/fhir/system_restful_interaction.rb +27 -0
- data/app/models/fhir/task.rb +194 -0
- data/app/models/fhir/task_input.rb +316 -0
- data/app/models/fhir/task_intent.rb +27 -0
- data/app/models/fhir/task_output.rb +316 -0
- data/app/models/fhir/task_priority.rb +27 -0
- data/app/models/fhir/task_restriction.rb +40 -0
- data/app/models/fhir/task_status.rb +27 -0
- data/app/models/fhir/terminology_capabilities.rb +171 -0
- data/app/models/fhir/terminology_capabilities_closure.rb +30 -0
- data/app/models/fhir/terminology_capabilities_code_system.rb +42 -0
- data/app/models/fhir/terminology_capabilities_code_system_version.rb +69 -0
- data/app/models/fhir/terminology_capabilities_code_system_version_filter.rb +40 -0
- data/app/models/fhir/terminology_capabilities_expansion.rb +56 -0
- data/app/models/fhir/terminology_capabilities_expansion_parameter.rb +37 -0
- data/app/models/fhir/terminology_capabilities_implementation.rb +37 -0
- data/app/models/fhir/terminology_capabilities_software.rb +37 -0
- data/app/models/fhir/terminology_capabilities_translation.rb +30 -0
- data/app/models/fhir/terminology_capabilities_validate_code.rb +30 -0
- data/app/models/fhir/test_report.rb +95 -0
- data/app/models/fhir/test_report_action_result.rb +27 -0
- data/app/models/fhir/test_report_participant.rb +44 -0
- data/app/models/fhir/test_report_participant_type.rb +27 -0
- data/app/models/fhir/test_report_result.rb +27 -0
- data/app/models/fhir/test_report_setup.rb +28 -0
- data/app/models/fhir/test_report_setup_action.rb +33 -0
- data/app/models/fhir/test_report_setup_action_assert.rb +44 -0
- data/app/models/fhir/test_report_setup_action_operation.rb +44 -0
- data/app/models/fhir/test_report_status.rb +27 -0
- data/app/models/fhir/test_report_teardown.rb +28 -0
- data/app/models/fhir/test_report_teardown_action.rb +28 -0
- data/app/models/fhir/test_report_test.rb +42 -0
- data/app/models/fhir/test_report_test_action.rb +33 -0
- data/app/models/fhir/test_script.rb +165 -0
- data/app/models/fhir/test_script_destination.rb +35 -0
- data/app/models/fhir/test_script_fixture.rb +42 -0
- data/app/models/fhir/test_script_metadata.rb +33 -0
- data/app/models/fhir/test_script_metadata_capability.rb +78 -0
- data/app/models/fhir/test_script_metadata_link.rb +37 -0
- data/app/models/fhir/test_script_origin.rb +35 -0
- data/app/models/fhir/test_script_request_method_code.rb +27 -0
- data/app/models/fhir/test_script_setup.rb +28 -0
- data/app/models/fhir/test_script_setup_action.rb +33 -0
- data/app/models/fhir/test_script_setup_action_assert.rb +177 -0
- data/app/models/fhir/test_script_setup_action_operation.rb +138 -0
- data/app/models/fhir/test_script_setup_action_operation_request_header.rb +37 -0
- data/app/models/fhir/test_script_teardown.rb +28 -0
- data/app/models/fhir/test_script_teardown_action.rb +28 -0
- data/app/models/fhir/test_script_test.rb +42 -0
- data/app/models/fhir/test_script_test_action.rb +33 -0
- data/app/models/fhir/test_script_variable.rb +79 -0
- data/app/models/fhir/timing.rb +43 -0
- data/app/models/fhir/timing_repeat.rb +145 -0
- data/app/models/fhir/trigger_definition.rb +71 -0
- data/app/models/fhir/trigger_type.rb +27 -0
- data/app/models/fhir/type.rb +23 -0
- data/app/models/fhir/type_derivation_rule.rb +27 -0
- data/app/models/fhir/type_restful_interaction.rb +27 -0
- data/app/models/fhir/udi_entry_type.rb +27 -0
- data/app/models/fhir/units_of_time.rb +27 -0
- data/app/models/fhir/usage_context.rb +48 -0
- data/app/models/fhir/use.rb +27 -0
- data/app/models/fhir/value_set.rb +137 -0
- data/app/models/fhir/value_set_compose.rb +47 -0
- data/app/models/fhir/value_set_compose_include.rb +57 -0
- data/app/models/fhir/value_set_compose_include_concept.rb +42 -0
- data/app/models/fhir/value_set_compose_include_concept_designation.rb +42 -0
- data/app/models/fhir/value_set_compose_include_filter.rb +44 -0
- data/app/models/fhir/value_set_expansion.rb +61 -0
- data/app/models/fhir/value_set_expansion_contains.rb +75 -0
- data/app/models/fhir/value_set_expansion_parameter.rb +79 -0
- data/app/models/fhir/variable_type.rb +27 -0
- data/app/models/fhir/verification_result.rb +106 -0
- data/app/models/fhir/verification_result_attestation.rb +69 -0
- data/app/models/fhir/verification_result_primary_source.rb +60 -0
- data/app/models/fhir/verification_result_validator.rb +40 -0
- data/app/models/fhir/vision_base.rb +27 -0
- data/app/models/fhir/vision_eyes.rb +27 -0
- data/app/models/fhir/vision_prescription.rb +69 -0
- data/app/models/fhir/vision_prescription_lens_specification.rb +113 -0
- data/app/models/fhir/vision_prescription_lens_specification_prism.rb +37 -0
- data/app/models/fhir/vision_status.rb +27 -0
- data/app/models/fhir/x_path_usage_type.rb +27 -0
- data/app/models/models.rb +940 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/config/mongoid.yml +6 -0
- data/fhir-mongoid-models.gemspec +30 -0
- data/fhir-mongoid-models.iml +9 -0
- data/lib/ext/fhir/library.rb +23 -0
- data/lib/fhir/mongoid/models.rb +12 -0
- data/package-lock.json +110 -0
- data/package.json +30 -0
- data/resources/fhir-modelinfo-4.0.1.xml +12217 -0
- metadata +1115 -0
@@ -0,0 +1,120 @@
|
|
1
|
+
module CQM
|
2
|
+
# bonnie/measure.rb
|
3
|
+
class Measure
|
4
|
+
include Mongoid::Document
|
5
|
+
include Mongoid::Timestamps
|
6
|
+
|
7
|
+
IPP = 'IPP'.freeze
|
8
|
+
DENOM = 'DENOM'.freeze
|
9
|
+
NUMER = 'NUMER'.freeze
|
10
|
+
NUMEX = 'NUMEX'.freeze
|
11
|
+
DENEXCEP = 'DENEXCEP'.freeze
|
12
|
+
DENEX = 'DENEX'.freeze
|
13
|
+
MSRPOPL = 'MSRPOPL'.freeze
|
14
|
+
OBSERV = 'OBSERV'.freeze
|
15
|
+
MSRPOPLEX = 'MSRPOPLEX'.freeze
|
16
|
+
|
17
|
+
STRAT = 'STRAT'.freeze
|
18
|
+
|
19
|
+
ALL_POPULATION_CODES = [STRAT, IPP, DENOM, DENEX, NUMER, NUMEX, DENEXCEP, MSRPOPL, OBSERV, MSRPOPLEX].freeze
|
20
|
+
|
21
|
+
CQL_SKIP_STATEMENTS = ['SDE Ethnicity', 'SDE Payer', 'SDE Race', 'SDE Sex'].freeze
|
22
|
+
|
23
|
+
# A CMS-style string (e.g. "CMS2v4") for the measure
|
24
|
+
field :cms_id, type: String
|
25
|
+
field :title, type: String, default: ''
|
26
|
+
field :description, type: String, default: ''
|
27
|
+
|
28
|
+
# A version-specific UUID for the measure
|
29
|
+
field :set_id, type: String
|
30
|
+
field :calculation_method, type: String, default: 'PATIENT'
|
31
|
+
field :calculate_sdes, type: Boolean
|
32
|
+
|
33
|
+
embeds_one :fhir_measure, class_name: 'FHIR::Measure'
|
34
|
+
embeds_many :libraries, class_name: 'FHIR::Library'
|
35
|
+
embeds_many :value_sets, class_name: 'FHIR::ValueSet'
|
36
|
+
has_one :package, class_name: 'CQM::MeasurePackage', inverse_of: :measure, dependent: :destroy
|
37
|
+
|
38
|
+
# ELM/CQL Measure-logic related data
|
39
|
+
# Field name changed from 'cql' to 'cql_libraries' because the semantics of
|
40
|
+
# 'embeds_many :cqls' sounded weird
|
41
|
+
embeds_many :cql_libraries, class_name: 'CQM::LogicLibrary'
|
42
|
+
field :main_cql_library, type: String
|
43
|
+
|
44
|
+
embeds_many :source_data_criteria, class_name: 'CQM::DataElement'
|
45
|
+
|
46
|
+
embeds_many :population_sets, class_name: 'CQM::PopulationSet'
|
47
|
+
|
48
|
+
def as_json(*args)
|
49
|
+
result = Hash.new
|
50
|
+
unless self.id.nil?
|
51
|
+
result['id'] = self.id.to_s
|
52
|
+
end
|
53
|
+
unless self.cms_id.nil?
|
54
|
+
result['cms_id'] = self.cms_id
|
55
|
+
end
|
56
|
+
unless self.title.nil?
|
57
|
+
result['title'] = self.title
|
58
|
+
end
|
59
|
+
unless self.description.nil?
|
60
|
+
result['description'] = self.description
|
61
|
+
end
|
62
|
+
unless self.set_id.nil?
|
63
|
+
result['set_id'] = self.set_id
|
64
|
+
end
|
65
|
+
unless self.calculation_method.nil?
|
66
|
+
result['calculation_method'] = self.calculation_method
|
67
|
+
end
|
68
|
+
unless self.calculate_sdes.nil?
|
69
|
+
result['calculate_sdes'] = self.calculate_sdes
|
70
|
+
end
|
71
|
+
unless self.fhir_measure.nil?
|
72
|
+
result['fhir_measure'] = self.fhir_measure.as_json(*args)
|
73
|
+
end
|
74
|
+
unless self.libraries.nil? || !self.libraries.any?
|
75
|
+
result['libraries'] = self.libraries.map{ |x| x.as_json(*args) }
|
76
|
+
end
|
77
|
+
unless self.value_sets.nil? || !self.value_sets.any?
|
78
|
+
result['value_sets'] = self.value_sets.map{ |x| x.as_json(*args) }
|
79
|
+
end
|
80
|
+
unless self.cql_libraries.nil? || !self.cql_libraries.any?
|
81
|
+
result['cql_libraries'] = self.cql_libraries.map{ |x| x.as_json(*args) }
|
82
|
+
end
|
83
|
+
unless self.main_cql_library.nil?
|
84
|
+
result['main_cql_library'] = self.main_cql_library
|
85
|
+
end
|
86
|
+
unless self.source_data_criteria.nil? || !self.source_data_criteria.any?
|
87
|
+
result['source_data_criteria'] = self.source_data_criteria.map{ |x| x.as_json(*args) }
|
88
|
+
end
|
89
|
+
unless self.population_sets.nil? || !self.population_sets.any?
|
90
|
+
result['population_sets'] = self.population_sets.map{ |x| x.as_json(*args) }
|
91
|
+
end
|
92
|
+
result['created_at'] = self.created_at unless self.created_at.nil?
|
93
|
+
result['updated_at'] = self.updated_at unless self.updated_at.nil?
|
94
|
+
|
95
|
+
result
|
96
|
+
end
|
97
|
+
|
98
|
+
def self.transform_json(json_hash, target = Measure.new)
|
99
|
+
result = target
|
100
|
+
result['id'] = json_hash['id'] unless json_hash['id'].nil?
|
101
|
+
result['cms_id'] = json_hash['cms_id'] unless json_hash['cms_id'].nil?
|
102
|
+
result['title'] = json_hash['title'] unless json_hash['title'].nil?
|
103
|
+
result['description'] = json_hash['description'] unless json_hash['description'].nil?
|
104
|
+
result['set_id'] = json_hash['set_id'] unless json_hash['set_id'].nil?
|
105
|
+
result['calculation_method'] = json_hash['calculation_method'] unless json_hash['calculation_method'].nil?
|
106
|
+
result['calculate_sdes'] = json_hash['calculate_sdes'] unless json_hash['calculate_sdes'].nil?
|
107
|
+
result['fhir_measure'] = FHIR::Measure.transform_json(json_hash['fhir_measure']) unless json_hash['fhir_measure'].nil?
|
108
|
+
result['libraries'] = json_hash['libraries'].map { |var| FHIR::Library.transform_json(var) } unless json_hash['libraries'].nil?
|
109
|
+
result['value_sets'] = json_hash['value_sets'].map { |var| FHIR::ValueSet.transform_json(var) } unless json_hash['value_sets'].nil?
|
110
|
+
result['cql_libraries'] = json_hash['cql_libraries'].map { |var| CQM::LogicLibrary.transform_json(var) } unless json_hash['cql_libraries'].nil?
|
111
|
+
result['main_cql_library'] = json_hash['main_cql_library'] unless json_hash['main_cql_library'].nil?
|
112
|
+
result['source_data_criteria'] = json_hash['source_data_criteria'].map { |var| CQM::DataElement.transform_json(var) } unless json_hash['source_data_criteria'].nil?
|
113
|
+
result['population_sets'] = json_hash['population_sets'].map { |var| CQM::PopulationSet.transform_json(var) } unless json_hash['population_sets'].nil?
|
114
|
+
result['created_at'] = json_hash['created_at'] unless json_hash['created_at'].nil?
|
115
|
+
result['updated_at'] = json_hash['updated_at'] unless json_hash['updated_at'].nil?
|
116
|
+
result
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module CQM
|
2
|
+
# MeasurePackage stores the uploaded file for a given Measure
|
3
|
+
class MeasurePackage
|
4
|
+
include Mongoid::Document
|
5
|
+
include Mongoid::Timestamps
|
6
|
+
|
7
|
+
field :file, type: BSON::Binary
|
8
|
+
belongs_to :measure, class_name: 'CQM::Measure', inverse_of: :package
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
module CQM
|
2
|
+
# bonnie/patient.rb
|
3
|
+
class Patient
|
4
|
+
include Mongoid::Document
|
5
|
+
include Mongoid::Timestamps
|
6
|
+
|
7
|
+
field :expected_values, type: Array
|
8
|
+
field :notes, type: String
|
9
|
+
field :measure_ids, type: Array
|
10
|
+
|
11
|
+
embeds_one :fhir_patient, class_name: 'FHIR::Patient', autobuild: true
|
12
|
+
embeds_many :data_elements, class_name: 'CQM::DataElement'
|
13
|
+
|
14
|
+
def as_json(*args)
|
15
|
+
result = Hash.new
|
16
|
+
unless self.id.nil?
|
17
|
+
result['id'] = self.id.to_s
|
18
|
+
end
|
19
|
+
unless self.expected_values.nil?
|
20
|
+
result['expected_values'] = self.expected_values
|
21
|
+
end
|
22
|
+
unless self.notes.nil?
|
23
|
+
result['notes'] = self.notes
|
24
|
+
end
|
25
|
+
unless self.measure_ids.nil?
|
26
|
+
result['measure_ids'] = self.measure_ids
|
27
|
+
end
|
28
|
+
unless self.fhir_patient.nil?
|
29
|
+
result['fhir_patient'] = self.fhir_patient.as_json(*args)
|
30
|
+
end
|
31
|
+
unless self.data_elements.nil? || !self.data_elements.any?
|
32
|
+
result['data_elements'] = self.data_elements.map{ |x| x.as_json(*args) }
|
33
|
+
end
|
34
|
+
result['created_at'] = self.created_at unless self.created_at.nil?
|
35
|
+
result['updated_at'] = self.updated_at unless self.updated_at.nil?
|
36
|
+
|
37
|
+
result
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.transform_json(json_hash, target = Patient.new)
|
41
|
+
result = target
|
42
|
+
result['id'] = json_hash['id'] unless json_hash['id'].nil?
|
43
|
+
result['expected_values'] = json_hash['expected_values'] unless json_hash['expected_values'].nil?
|
44
|
+
result['notes'] = json_hash['notes'] unless json_hash['notes'].nil?
|
45
|
+
result['description'] = json_hash['description'] unless json_hash['description'].nil?
|
46
|
+
result['measure_ids'] = json_hash['measure_ids'] unless json_hash['measure_ids'].nil?
|
47
|
+
result['fhir_patient'] = FHIR::Patient.transform_json(json_hash['fhir_patient']) unless json_hash['fhir_patient'].nil?
|
48
|
+
result['data_elements'] = json_hash['data_elements'].map { |var| CQM::DataElement.transform_json(var) } unless json_hash['data_elements'].nil?
|
49
|
+
result['created_at'] = json_hash['created_at'] unless json_hash['created_at'].nil?
|
50
|
+
result['updated_at'] = json_hash['updated_at'] unless json_hash['updated_at'].nil?
|
51
|
+
result
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,311 @@
|
|
1
|
+
module CQM
|
2
|
+
# Representation of a population set (aka. PopulationCriteria)
|
3
|
+
class PopulationSet
|
4
|
+
include Mongoid::Document
|
5
|
+
|
6
|
+
embedded_in :measure
|
7
|
+
|
8
|
+
embeds_one :populations, class_name: 'CQM::PopulationMap'
|
9
|
+
embeds_many :stratifications
|
10
|
+
embeds_many :supplemental_data_elements, class_name: 'CQM::StatementReference'
|
11
|
+
embeds_many :observations
|
12
|
+
|
13
|
+
field :title, type: String
|
14
|
+
field :population_set_id, type: String
|
15
|
+
|
16
|
+
def as_json(*args)
|
17
|
+
result = Hash.new
|
18
|
+
unless self.populations.nil?
|
19
|
+
result['populations'] = self.populations.as_json(args)
|
20
|
+
end
|
21
|
+
unless self.stratifications.nil? || !self.stratifications.any?
|
22
|
+
result['stratifications'] = self.stratifications.map{ |x| x.as_json(*args) }
|
23
|
+
end
|
24
|
+
unless self.supplemental_data_elements.nil? || !self.supplemental_data_elements.any?
|
25
|
+
result['supplemental_data_elements'] = self.supplemental_data_elements.map{ |x| x.as_json(*args) }
|
26
|
+
end
|
27
|
+
unless self.observations.nil? || !self.observations.any?
|
28
|
+
result['observations'] = self.observations.map{ |x| x.as_json(*args) }
|
29
|
+
end
|
30
|
+
unless self.title.nil?
|
31
|
+
result['title'] = self.title
|
32
|
+
end
|
33
|
+
unless self.population_set_id.nil?
|
34
|
+
result['population_set_id'] = self.population_set_id
|
35
|
+
end
|
36
|
+
|
37
|
+
result
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.transform_json(json_hash, target = PopulationSet.new)
|
41
|
+
result = target
|
42
|
+
result['populations'] = CQM::PopulationMap.transform_json(json_hash['populations']) unless json_hash['populations'].nil?
|
43
|
+
result['stratifications'] = json_hash['stratifications'].map { |var| CQM::Stratification.transform_json(var) } unless json_hash['stratifications'].nil?
|
44
|
+
result['supplemental_data_elements'] = json_hash['supplemental_data_elements'].map { |var| CQM::StatementReference.transform_json(var) } unless json_hash['supplemental_data_elements'].nil?
|
45
|
+
result['observations'] = json_hash['observations'].map { |var| CQM::Observation.transform_json(var) } unless json_hash['observations'].nil?
|
46
|
+
result['title'] = json_hash['title'] unless json_hash['title'].nil?
|
47
|
+
result['population_set_id'] = json_hash['population_set_id'] unless json_hash['population_set_id'].nil?
|
48
|
+
|
49
|
+
result
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
# Stratification info
|
54
|
+
class Stratification
|
55
|
+
include Mongoid::Document
|
56
|
+
|
57
|
+
embedded_in :population_set
|
58
|
+
|
59
|
+
field :title, type: String
|
60
|
+
field :stratification_id, type: String
|
61
|
+
field :set_id, type: String
|
62
|
+
embeds_one :statement, class_name: 'CQM::StatementReference'
|
63
|
+
|
64
|
+
def as_json(*args)
|
65
|
+
result = Hash.new
|
66
|
+
unless self.title.nil?
|
67
|
+
result['title'] = self.title
|
68
|
+
end
|
69
|
+
unless self.stratification_id.nil?
|
70
|
+
result['stratification_id'] = self.stratification_id
|
71
|
+
end
|
72
|
+
unless self.set_id.nil?
|
73
|
+
result['set_id'] = self.set_id
|
74
|
+
end
|
75
|
+
unless self.statement.nil?
|
76
|
+
result['statement'] = self.statement.as_json(args)
|
77
|
+
end
|
78
|
+
|
79
|
+
result
|
80
|
+
end
|
81
|
+
|
82
|
+
def self.transform_json(json_hash, target = Stratification.new)
|
83
|
+
result = target
|
84
|
+
result['title'] = json_hash['title'] unless json_hash['title'].nil?
|
85
|
+
result['stratification_id'] = json_hash['stratification_id'] unless json_hash['stratification_id'].nil?
|
86
|
+
result['set_id'] = json_hash['set_id'] unless json_hash['set_id'].nil?
|
87
|
+
result['statement'] = CQM::StatementReference.transform_json(json_hash['statement']) unless json_hash['statement'].nil?
|
88
|
+
|
89
|
+
result
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
# Observation info
|
94
|
+
class Observation
|
95
|
+
include Mongoid::Document
|
96
|
+
|
97
|
+
embedded_in :population_set
|
98
|
+
|
99
|
+
embeds_one :observation_function, class_name: 'CQM::StatementReference'
|
100
|
+
embeds_one :observation_parameter, class_name: 'CQM::StatementReference'
|
101
|
+
field :aggregation_type, type: String
|
102
|
+
field :set_id, type: String
|
103
|
+
|
104
|
+
def as_json(*args)
|
105
|
+
result = Hash.new
|
106
|
+
unless self.observation_function.nil?
|
107
|
+
result['observation_function'] = self.observation_function.as_json(args)
|
108
|
+
end
|
109
|
+
unless self.observation_parameter.nil?
|
110
|
+
result['observation_parameter'] = self.observation_parameter.as_json(args)
|
111
|
+
end
|
112
|
+
unless self.aggregation_type.nil?
|
113
|
+
result['aggregation_type'] = self.aggregation_type
|
114
|
+
end
|
115
|
+
unless self.set_id.nil?
|
116
|
+
result['set_id'] = self.set_id
|
117
|
+
end
|
118
|
+
|
119
|
+
result
|
120
|
+
end
|
121
|
+
|
122
|
+
def self.transform_json(json_hash, target = Observation.new)
|
123
|
+
result = target
|
124
|
+
result['observation_function'] = CQM::StatementReference.transform_json(json_hash['observation_function']) unless json_hash['observation_function'].nil?
|
125
|
+
result['observation_parameter'] = CQM::StatementReference.transform_json(json_hash['observation_parameter']) unless json_hash['observation_parameter'].nil?
|
126
|
+
result['aggregation_type'] = json_hash['aggregation_type'] unless json_hash['aggregation_type'].nil?
|
127
|
+
result['set_id'] = json_hash['set_id'] unless json_hash['set_id'].nil?
|
128
|
+
|
129
|
+
result
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
# Base class for the population maps
|
134
|
+
class PopulationMap
|
135
|
+
include Mongoid::Document
|
136
|
+
|
137
|
+
embedded_in :population_set
|
138
|
+
field :resource_type, type: String
|
139
|
+
|
140
|
+
def as_json(*args)
|
141
|
+
result = Hash.new
|
142
|
+
result['resource_type'] = 'PopulationMap'
|
143
|
+
result
|
144
|
+
end
|
145
|
+
|
146
|
+
def self.transform_json(json_hash, target = PopulationMap.new)
|
147
|
+
if 'PopulationMap' != json_hash['resource_type']
|
148
|
+
return Object.const_get('CQM::' + json_hash['resource_type']).transform_json(json_hash)
|
149
|
+
end
|
150
|
+
result = target
|
151
|
+
result['resource_type'] = 'PopulationMap'
|
152
|
+
result
|
153
|
+
end
|
154
|
+
|
155
|
+
end
|
156
|
+
|
157
|
+
# The population map for a porportion population set
|
158
|
+
class ProportionPopulationMap < PopulationMap
|
159
|
+
include Mongoid::Document
|
160
|
+
|
161
|
+
embeds_one :IPP, class_name: 'CQM::StatementReference'
|
162
|
+
embeds_one :DENOM, class_name: 'CQM::StatementReference'
|
163
|
+
embeds_one :NUMER, class_name: 'CQM::StatementReference'
|
164
|
+
embeds_one :NUMEX, class_name: 'CQM::StatementReference'
|
165
|
+
embeds_one :DENEX, class_name: 'CQM::StatementReference'
|
166
|
+
embeds_one :DENEXCEP, class_name: 'CQM::StatementReference'
|
167
|
+
|
168
|
+
def as_json(*args)
|
169
|
+
result = Hash.new
|
170
|
+
result['resource_type'] = 'ProportionPopulationMap'
|
171
|
+
unless self.IPP.nil?
|
172
|
+
result['IPP'] = self.IPP.as_json(args)
|
173
|
+
end
|
174
|
+
unless self.DENOM.nil?
|
175
|
+
result['DENOM'] = self.DENOM.as_json(args)
|
176
|
+
end
|
177
|
+
unless self.NUMER.nil?
|
178
|
+
result['NUMER'] = self.NUMER.as_json(args)
|
179
|
+
end
|
180
|
+
unless self.NUMEX.nil?
|
181
|
+
result['NUMEX'] = self.NUMEX.as_json(args)
|
182
|
+
end
|
183
|
+
unless self.DENEX.nil?
|
184
|
+
result['DENEX'] = self.DENEX.as_json(args)
|
185
|
+
end
|
186
|
+
unless self.DENEXCEP.nil?
|
187
|
+
result['DENEXCEP'] = self.DENEXCEP.as_json(args)
|
188
|
+
end
|
189
|
+
|
190
|
+
result
|
191
|
+
end
|
192
|
+
|
193
|
+
def self.transform_json(json_hash, target = ProportionPopulationMap.new)
|
194
|
+
result = target
|
195
|
+
result['resource_type'] = 'ProportionPopulationMap'
|
196
|
+
result['IPP'] = CQM::StatementReference.transform_json(json_hash['IPP']) unless json_hash['IPP'].nil?
|
197
|
+
result['DENOM'] = CQM::StatementReference.transform_json(json_hash['DENOM']) unless json_hash['DENOM'].nil?
|
198
|
+
result['NUMER'] = CQM::StatementReference.transform_json(json_hash['NUMER']) unless json_hash['NUMER'].nil?
|
199
|
+
result['NUMEX'] = CQM::StatementReference.transform_json(json_hash['NUMEX']) unless json_hash['NUMEX'].nil?
|
200
|
+
result['DENEX'] = CQM::StatementReference.transform_json(json_hash['DENEX']) unless json_hash['DENEX'].nil?
|
201
|
+
result['DENEXCEP'] = CQM::StatementReference.transform_json(json_hash['DENEXCEP']) unless json_hash['DENEXCEP'].nil?
|
202
|
+
|
203
|
+
result
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
# The population map for a ratio population set
|
208
|
+
class RatioPopulationMap < PopulationMap
|
209
|
+
include Mongoid::Document
|
210
|
+
|
211
|
+
embeds_one :IPP, class_name: 'CQM::StatementReference'
|
212
|
+
embeds_one :DENOM, class_name: 'CQM::StatementReference'
|
213
|
+
embeds_one :NUMER, class_name: 'CQM::StatementReference'
|
214
|
+
embeds_one :NUMEX, class_name: 'CQM::StatementReference'
|
215
|
+
embeds_one :DENEX, class_name: 'CQM::StatementReference'
|
216
|
+
|
217
|
+
def as_json(*args)
|
218
|
+
result = Hash.new
|
219
|
+
result['resource_type'] = 'RatioPopulationMap'
|
220
|
+
unless self.IPP.nil?
|
221
|
+
result['IPP'] = self.IPP.as_json(args)
|
222
|
+
end
|
223
|
+
unless self.DENOM.nil?
|
224
|
+
result['DENOM'] = self.DENOM.as_json(args)
|
225
|
+
end
|
226
|
+
unless self.NUMER.nil?
|
227
|
+
result['NUMER'] = self.NUMER.as_json(args)
|
228
|
+
end
|
229
|
+
unless self.NUMEX.nil?
|
230
|
+
result['NUMEX'] = self.NUMEX.as_json(args)
|
231
|
+
end
|
232
|
+
unless self.DENEX.nil?
|
233
|
+
result['DENEX'] = self.DENEX.as_json(args)
|
234
|
+
end
|
235
|
+
|
236
|
+
result
|
237
|
+
end
|
238
|
+
|
239
|
+
def self.transform_json(json_hash, target = RatioPopulationMap.new)
|
240
|
+
result = target
|
241
|
+
result['resource_type'] = 'RatioPopulationMap'
|
242
|
+
result['IPP'] = CQM::StatementReference.transform_json(json_hash['IPP']) unless json_hash['IPP'].nil?
|
243
|
+
result['DENOM'] = CQM::StatementReference.transform_json(json_hash['DENOM']) unless json_hash['DENOM'].nil?
|
244
|
+
result['NUMER'] = CQM::StatementReference.transform_json(json_hash['NUMER']) unless json_hash['NUMER'].nil?
|
245
|
+
result['NUMEX'] = CQM::StatementReference.transform_json(json_hash['NUMEX']) unless json_hash['NUMEX'].nil?
|
246
|
+
result['DENEX'] = CQM::StatementReference.transform_json(json_hash['DENEX']) unless json_hash['DENEX'].nil?
|
247
|
+
|
248
|
+
result
|
249
|
+
end
|
250
|
+
end
|
251
|
+
|
252
|
+
# The population map for a continuous variable population set
|
253
|
+
class ContinuousVariablePopulationMap < PopulationMap
|
254
|
+
include Mongoid::Document
|
255
|
+
|
256
|
+
embeds_one :IPP, class_name: 'CQM::StatementReference'
|
257
|
+
embeds_one :MSRPOPL, class_name: 'CQM::StatementReference'
|
258
|
+
embeds_one :MSRPOPLEX, class_name: 'CQM::StatementReference'
|
259
|
+
|
260
|
+
def as_json(*args)
|
261
|
+
result = Hash.new
|
262
|
+
result['resource_type'] = 'ContinuousVariablePopulationMap'
|
263
|
+
unless self.IPP.nil?
|
264
|
+
result['IPP'] = self.IPP.as_json(args)
|
265
|
+
end
|
266
|
+
unless self.MSRPOPL.nil?
|
267
|
+
result['MSRPOPL'] = self.MSRPOPL.as_json(args)
|
268
|
+
end
|
269
|
+
unless self.MSRPOPLEX.nil?
|
270
|
+
result['MSRPOPLEX'] = self.MSRPOPLEX.as_json(args)
|
271
|
+
end
|
272
|
+
|
273
|
+
result
|
274
|
+
end
|
275
|
+
|
276
|
+
def self.transform_json(json_hash, target = ContinuousVariablePopulationMap.new)
|
277
|
+
result = target
|
278
|
+
result['resource_type'] = 'ContinuousVariablePopulationMap'
|
279
|
+
result['IPP'] = CQM::StatementReference.transform_json(json_hash['IPP']) unless json_hash['IPP'].nil?
|
280
|
+
result['MSRPOPL'] = CQM::StatementReference.transform_json(json_hash['MSRPOPL']) unless json_hash['MSRPOPL'].nil?
|
281
|
+
result['MSRPOPLEX'] = CQM::StatementReference.transform_json(json_hash['MSRPOPLEX']) unless json_hash['MSRPOPLEX'].nil?
|
282
|
+
|
283
|
+
result
|
284
|
+
end
|
285
|
+
end
|
286
|
+
|
287
|
+
# The population map for a cohort population set
|
288
|
+
class CohortPopulationMap < PopulationMap
|
289
|
+
include Mongoid::Document
|
290
|
+
|
291
|
+
embeds_one :IPP, class_name: 'CQM::StatementReference'
|
292
|
+
|
293
|
+
def as_json(*args)
|
294
|
+
result = Hash.new
|
295
|
+
result['resource_type'] = 'CohortPopulationMap'
|
296
|
+
unless self.IPP.nil?
|
297
|
+
result['IPP'] = self.IPP.as_json(args)
|
298
|
+
end
|
299
|
+
|
300
|
+
result
|
301
|
+
end
|
302
|
+
|
303
|
+
def self.transform_json(json_hash, target = CohortPopulationMap.new)
|
304
|
+
result = target
|
305
|
+
result['resource_type'] = 'CohortPopulationMap'
|
306
|
+
result['IPP'] = CQM::StatementReference.transform_json(json_hash['IPP']) unless json_hash['IPP'].nil?
|
307
|
+
|
308
|
+
result
|
309
|
+
end
|
310
|
+
end
|
311
|
+
end
|