fhir-mongoid-models 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (963) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +8 -0
  3. data/.github/CODEOWNERS +2 -0
  4. data/.github/workflows/build.yml +54 -0
  5. data/.gitignore +15 -0
  6. data/.rspec +3 -0
  7. data/.rubocop.yml +20 -0
  8. data/Gemfile +6 -0
  9. data/LICENSE +121 -0
  10. data/README.md +23 -0
  11. data/Rakefile +6 -0
  12. data/app/models/cqm/cql_statement_dependency.rb +63 -0
  13. data/app/models/cqm/data_element.rb +41 -0
  14. data/app/models/cqm/logic_library.rb +62 -0
  15. data/app/models/cqm/measure.rb +120 -0
  16. data/app/models/cqm/measure_package.rb +10 -0
  17. data/app/models/cqm/patient.rb +54 -0
  18. data/app/models/cqm/population_set.rb +311 -0
  19. data/app/models/fhir/account.rb +84 -0
  20. data/app/models/fhir/account_coverage.rb +35 -0
  21. data/app/models/fhir/account_guarantor.rb +40 -0
  22. data/app/models/fhir/account_status.rb +27 -0
  23. data/app/models/fhir/action_cardinality_behavior.rb +27 -0
  24. data/app/models/fhir/action_condition_kind.rb +27 -0
  25. data/app/models/fhir/action_grouping_behavior.rb +27 -0
  26. data/app/models/fhir/action_participant_type.rb +27 -0
  27. data/app/models/fhir/action_precheck_behavior.rb +27 -0
  28. data/app/models/fhir/action_relationship_type.rb +27 -0
  29. data/app/models/fhir/action_required_behavior.rb +27 -0
  30. data/app/models/fhir/action_selection_behavior.rb +27 -0
  31. data/app/models/fhir/activity_definition.rb +337 -0
  32. data/app/models/fhir/activity_definition_dynamic_value.rb +35 -0
  33. data/app/models/fhir/activity_definition_kind.rb +27 -0
  34. data/app/models/fhir/activity_definition_participant.rb +35 -0
  35. data/app/models/fhir/activity_participant_type.rb +27 -0
  36. data/app/models/fhir/address.rb +94 -0
  37. data/app/models/fhir/address_type.rb +27 -0
  38. data/app/models/fhir/address_use.rb +27 -0
  39. data/app/models/fhir/administrative_gender.rb +27 -0
  40. data/app/models/fhir/adverse_event.rb +131 -0
  41. data/app/models/fhir/adverse_event_actuality.rb +27 -0
  42. data/app/models/fhir/adverse_event_suspect_entity.rb +33 -0
  43. data/app/models/fhir/adverse_event_suspect_entity_causality.rb +45 -0
  44. data/app/models/fhir/age.rb +23 -0
  45. data/app/models/fhir/aggregation_mode.rb +27 -0
  46. data/app/models/fhir/allergy_intolerance.rb +140 -0
  47. data/app/models/fhir/allergy_intolerance_category.rb +27 -0
  48. data/app/models/fhir/allergy_intolerance_criticality.rb +27 -0
  49. data/app/models/fhir/allergy_intolerance_reaction.rb +64 -0
  50. data/app/models/fhir/allergy_intolerance_severity.rb +27 -0
  51. data/app/models/fhir/allergy_intolerance_type.rb +27 -0
  52. data/app/models/fhir/annotation.rb +49 -0
  53. data/app/models/fhir/appointment.rb +151 -0
  54. data/app/models/fhir/appointment_participant.rb +52 -0
  55. data/app/models/fhir/appointment_response.rb +71 -0
  56. data/app/models/fhir/appointment_status.rb +27 -0
  57. data/app/models/fhir/assertion_direction_type.rb +27 -0
  58. data/app/models/fhir/assertion_operator_type.rb +27 -0
  59. data/app/models/fhir/assertion_response_types.rb +27 -0
  60. data/app/models/fhir/attachment.rb +79 -0
  61. data/app/models/fhir/audit_event.rb +86 -0
  62. data/app/models/fhir/audit_event_action.rb +27 -0
  63. data/app/models/fhir/audit_event_agent.rb +89 -0
  64. data/app/models/fhir/audit_event_agent_network.rb +37 -0
  65. data/app/models/fhir/audit_event_agent_network_type.rb +27 -0
  66. data/app/models/fhir/audit_event_entity.rb +74 -0
  67. data/app/models/fhir/audit_event_entity_detail.rb +44 -0
  68. data/app/models/fhir/audit_event_outcome.rb +27 -0
  69. data/app/models/fhir/audit_event_source.rb +40 -0
  70. data/app/models/fhir/backbone_element.rb +28 -0
  71. data/app/models/fhir/basic.rb +50 -0
  72. data/app/models/fhir/binary.rb +42 -0
  73. data/app/models/fhir/binding_strength.rb +27 -0
  74. data/app/models/fhir/biologically_derived_product.rb +84 -0
  75. data/app/models/fhir/biologically_derived_product_category.rb +27 -0
  76. data/app/models/fhir/biologically_derived_product_collection.rb +45 -0
  77. data/app/models/fhir/biologically_derived_product_manipulation.rb +42 -0
  78. data/app/models/fhir/biologically_derived_product_processing.rb +52 -0
  79. data/app/models/fhir/biologically_derived_product_status.rb +27 -0
  80. data/app/models/fhir/biologically_derived_product_storage.rb +49 -0
  81. data/app/models/fhir/biologically_derived_product_storage_scale.rb +27 -0
  82. data/app/models/fhir/body_structure.rb +67 -0
  83. data/app/models/fhir/bundle.rb +64 -0
  84. data/app/models/fhir/bundle_entry.rb +55 -0
  85. data/app/models/fhir/bundle_entry_request.rb +65 -0
  86. data/app/models/fhir/bundle_entry_response.rb +56 -0
  87. data/app/models/fhir/bundle_entry_search.rb +37 -0
  88. data/app/models/fhir/bundle_link.rb +37 -0
  89. data/app/models/fhir/bundle_type.rb +27 -0
  90. data/app/models/fhir/capability_statement.rb +204 -0
  91. data/app/models/fhir/capability_statement_document.rb +44 -0
  92. data/app/models/fhir/capability_statement_implementation.rb +42 -0
  93. data/app/models/fhir/capability_statement_kind.rb +27 -0
  94. data/app/models/fhir/capability_statement_messaging.rb +47 -0
  95. data/app/models/fhir/capability_statement_messaging_endpoint.rb +35 -0
  96. data/app/models/fhir/capability_statement_messaging_supported_message.rb +37 -0
  97. data/app/models/fhir/capability_statement_rest.rb +72 -0
  98. data/app/models/fhir/capability_statement_rest_interaction.rb +37 -0
  99. data/app/models/fhir/capability_statement_rest_resource.rb +148 -0
  100. data/app/models/fhir/capability_statement_rest_resource_interaction.rb +37 -0
  101. data/app/models/fhir/capability_statement_rest_resource_operation.rb +44 -0
  102. data/app/models/fhir/capability_statement_rest_resource_search_param.rb +51 -0
  103. data/app/models/fhir/capability_statement_rest_security.rb +42 -0
  104. data/app/models/fhir/capability_statement_software.rb +44 -0
  105. data/app/models/fhir/care_plan.rb +158 -0
  106. data/app/models/fhir/care_plan_activity.rb +48 -0
  107. data/app/models/fhir/care_plan_activity_detail.rb +143 -0
  108. data/app/models/fhir/care_plan_activity_kind.rb +27 -0
  109. data/app/models/fhir/care_plan_activity_status.rb +27 -0
  110. data/app/models/fhir/care_plan_intent.rb +27 -0
  111. data/app/models/fhir/care_plan_status.rb +27 -0
  112. data/app/models/fhir/care_team.rb +92 -0
  113. data/app/models/fhir/care_team_participant.rb +43 -0
  114. data/app/models/fhir/care_team_status.rb +27 -0
  115. data/app/models/fhir/catalog_entry.rb +96 -0
  116. data/app/models/fhir/catalog_entry_related_entry.rb +35 -0
  117. data/app/models/fhir/catalog_entry_relation_type.rb +27 -0
  118. data/app/models/fhir/charge_item.rb +188 -0
  119. data/app/models/fhir/charge_item_definition.rb +175 -0
  120. data/app/models/fhir/charge_item_definition_applicability.rb +44 -0
  121. data/app/models/fhir/charge_item_definition_price_component_type.rb +27 -0
  122. data/app/models/fhir/charge_item_definition_property_group.rb +33 -0
  123. data/app/models/fhir/charge_item_definition_property_group_price_component.rb +47 -0
  124. data/app/models/fhir/charge_item_performer.rb +33 -0
  125. data/app/models/fhir/charge_item_status.rb +27 -0
  126. data/app/models/fhir/claim.rb +164 -0
  127. data/app/models/fhir/claim_accident.rb +45 -0
  128. data/app/models/fhir/claim_care_team.rb +52 -0
  129. data/app/models/fhir/claim_diagnosis.rb +55 -0
  130. data/app/models/fhir/claim_insurance.rb +69 -0
  131. data/app/models/fhir/claim_item.rb +169 -0
  132. data/app/models/fhir/claim_item_detail.rb +87 -0
  133. data/app/models/fhir/claim_item_detail_sub_detail.rb +82 -0
  134. data/app/models/fhir/claim_payee.rb +33 -0
  135. data/app/models/fhir/claim_procedure.rb +57 -0
  136. data/app/models/fhir/claim_related.rb +38 -0
  137. data/app/models/fhir/claim_response.rb +170 -0
  138. data/app/models/fhir/claim_response_add_item.rb +152 -0
  139. data/app/models/fhir/claim_response_add_item_detail.rb +75 -0
  140. data/app/models/fhir/claim_response_add_item_detail_sub_detail.rb +70 -0
  141. data/app/models/fhir/claim_response_error.rb +49 -0
  142. data/app/models/fhir/claim_response_insurance.rb +54 -0
  143. data/app/models/fhir/claim_response_item.rb +50 -0
  144. data/app/models/fhir/claim_response_item_adjudication.rb +45 -0
  145. data/app/models/fhir/claim_response_item_detail.rb +50 -0
  146. data/app/models/fhir/claim_response_item_detail_sub_detail.rb +45 -0
  147. data/app/models/fhir/claim_response_payment.rb +55 -0
  148. data/app/models/fhir/claim_response_process_note.rb +49 -0
  149. data/app/models/fhir/claim_response_status.rb +27 -0
  150. data/app/models/fhir/claim_response_total.rb +33 -0
  151. data/app/models/fhir/claim_status.rb +27 -0
  152. data/app/models/fhir/claim_supporting_info.rb +86 -0
  153. data/app/models/fhir/clinical_impression.rb +143 -0
  154. data/app/models/fhir/clinical_impression_finding.rb +40 -0
  155. data/app/models/fhir/clinical_impression_investigation.rb +33 -0
  156. data/app/models/fhir/clinical_impression_status.rb +27 -0
  157. data/app/models/fhir/code_search_support.rb +27 -0
  158. data/app/models/fhir/code_system.rb +191 -0
  159. data/app/models/fhir/code_system_concept.rb +59 -0
  160. data/app/models/fhir/code_system_concept_designation.rb +42 -0
  161. data/app/models/fhir/code_system_concept_property.rb +77 -0
  162. data/app/models/fhir/code_system_content_mode.rb +27 -0
  163. data/app/models/fhir/code_system_filter.rb +54 -0
  164. data/app/models/fhir/code_system_hierarchy_meaning.rb +27 -0
  165. data/app/models/fhir/code_system_property.rb +51 -0
  166. data/app/models/fhir/codeable_concept.rb +35 -0
  167. data/app/models/fhir/coding.rb +58 -0
  168. data/app/models/fhir/communication.rb +156 -0
  169. data/app/models/fhir/communication_payload.rb +40 -0
  170. data/app/models/fhir/communication_priority.rb +27 -0
  171. data/app/models/fhir/communication_request.rb +148 -0
  172. data/app/models/fhir/communication_request_payload.rb +40 -0
  173. data/app/models/fhir/communication_request_status.rb +27 -0
  174. data/app/models/fhir/communication_status.rb +27 -0
  175. data/app/models/fhir/compartment_code.rb +27 -0
  176. data/app/models/fhir/compartment_definition.rb +115 -0
  177. data/app/models/fhir/compartment_definition_resource.rb +47 -0
  178. data/app/models/fhir/compartment_type.rb +27 -0
  179. data/app/models/fhir/composition.rb +106 -0
  180. data/app/models/fhir/composition_attestation_mode.rb +27 -0
  181. data/app/models/fhir/composition_attester.rb +42 -0
  182. data/app/models/fhir/composition_event.rb +38 -0
  183. data/app/models/fhir/composition_relates_to.rb +40 -0
  184. data/app/models/fhir/composition_section.rb +77 -0
  185. data/app/models/fhir/composition_status.rb +27 -0
  186. data/app/models/fhir/concept_map.rb +153 -0
  187. data/app/models/fhir/concept_map_equivalence.rb +27 -0
  188. data/app/models/fhir/concept_map_group.rb +61 -0
  189. data/app/models/fhir/concept_map_group_element.rb +42 -0
  190. data/app/models/fhir/concept_map_group_element_target.rb +61 -0
  191. data/app/models/fhir/concept_map_group_element_target_depends_on.rb +51 -0
  192. data/app/models/fhir/concept_map_group_unmapped.rb +51 -0
  193. data/app/models/fhir/concept_map_group_unmapped_mode.rb +27 -0
  194. data/app/models/fhir/condition.rb +158 -0
  195. data/app/models/fhir/condition_evidence.rb +33 -0
  196. data/app/models/fhir/condition_stage.rb +38 -0
  197. data/app/models/fhir/conditional_delete_status.rb +27 -0
  198. data/app/models/fhir/conditional_read_status.rb +27 -0
  199. data/app/models/fhir/consent.rb +97 -0
  200. data/app/models/fhir/consent_data_meaning.rb +27 -0
  201. data/app/models/fhir/consent_policy.rb +37 -0
  202. data/app/models/fhir/consent_provision.rb +80 -0
  203. data/app/models/fhir/consent_provision_actor.rb +33 -0
  204. data/app/models/fhir/consent_provision_data.rb +35 -0
  205. data/app/models/fhir/consent_provision_type.rb +27 -0
  206. data/app/models/fhir/consent_state.rb +27 -0
  207. data/app/models/fhir/consent_verification.rb +42 -0
  208. data/app/models/fhir/constraint_severity.rb +27 -0
  209. data/app/models/fhir/contact_detail.rb +35 -0
  210. data/app/models/fhir/contact_point.rb +56 -0
  211. data/app/models/fhir/contact_point_system.rb +27 -0
  212. data/app/models/fhir/contact_point_use.rb +27 -0
  213. data/app/models/fhir/contract.rb +219 -0
  214. data/app/models/fhir/contract_content_definition.rb +59 -0
  215. data/app/models/fhir/contract_friendly.rb +33 -0
  216. data/app/models/fhir/contract_legal.rb +33 -0
  217. data/app/models/fhir/contract_publication_status.rb +27 -0
  218. data/app/models/fhir/contract_rule.rb +33 -0
  219. data/app/models/fhir/contract_signer.rb +38 -0
  220. data/app/models/fhir/contract_status.rb +27 -0
  221. data/app/models/fhir/contract_term.rb +92 -0
  222. data/app/models/fhir/contract_term_action.rb +177 -0
  223. data/app/models/fhir/contract_term_action_subject.rb +33 -0
  224. data/app/models/fhir/contract_term_asset.rb +112 -0
  225. data/app/models/fhir/contract_term_asset_context.rb +40 -0
  226. data/app/models/fhir/contract_term_asset_valued_item.rb +118 -0
  227. data/app/models/fhir/contract_term_offer.rb +85 -0
  228. data/app/models/fhir/contract_term_offer_answer.rb +99 -0
  229. data/app/models/fhir/contract_term_offer_party.rb +33 -0
  230. data/app/models/fhir/contract_term_security_label.rb +48 -0
  231. data/app/models/fhir/contributor.rb +42 -0
  232. data/app/models/fhir/contributor_type.rb +27 -0
  233. data/app/models/fhir/count.rb +23 -0
  234. data/app/models/fhir/coverage.rb +120 -0
  235. data/app/models/fhir/coverage_class.rb +42 -0
  236. data/app/models/fhir/coverage_cost_to_beneficiary.rb +43 -0
  237. data/app/models/fhir/coverage_cost_to_beneficiary_exception.rb +33 -0
  238. data/app/models/fhir/coverage_eligibility_request.rb +109 -0
  239. data/app/models/fhir/coverage_eligibility_request_insurance.rb +42 -0
  240. data/app/models/fhir/coverage_eligibility_request_item.rb +78 -0
  241. data/app/models/fhir/coverage_eligibility_request_item_diagnosis.rb +33 -0
  242. data/app/models/fhir/coverage_eligibility_request_supporting_info.rb +42 -0
  243. data/app/models/fhir/coverage_eligibility_response.rb +120 -0
  244. data/app/models/fhir/coverage_eligibility_response_error.rb +28 -0
  245. data/app/models/fhir/coverage_eligibility_response_insurance.rb +45 -0
  246. data/app/models/fhir/coverage_eligibility_response_insurance_item.rb +103 -0
  247. data/app/models/fhir/coverage_eligibility_response_insurance_item_benefit.rb +66 -0
  248. data/app/models/fhir/coverage_status.rb +27 -0
  249. data/app/models/fhir/currency_code.rb +27 -0
  250. data/app/models/fhir/data_requirement.rb +82 -0
  251. data/app/models/fhir/data_requirement_code_filter.rb +49 -0
  252. data/app/models/fhir/data_requirement_date_filter.rb +54 -0
  253. data/app/models/fhir/data_requirement_sort.rb +37 -0
  254. data/app/models/fhir/day_of_week.rb +27 -0
  255. data/app/models/fhir/days_of_week.rb +27 -0
  256. data/app/models/fhir/detected_issue.rb +98 -0
  257. data/app/models/fhir/detected_issue_evidence.rb +33 -0
  258. data/app/models/fhir/detected_issue_mitigation.rb +40 -0
  259. data/app/models/fhir/detected_issue_severity.rb +27 -0
  260. data/app/models/fhir/detected_issue_status.rb +27 -0
  261. data/app/models/fhir/device.rb +173 -0
  262. data/app/models/fhir/device_definition.rb +151 -0
  263. data/app/models/fhir/device_definition_capability.rb +33 -0
  264. data/app/models/fhir/device_definition_device_name.rb +37 -0
  265. data/app/models/fhir/device_definition_material.rb +42 -0
  266. data/app/models/fhir/device_definition_property.rb +38 -0
  267. data/app/models/fhir/device_definition_specialization.rb +37 -0
  268. data/app/models/fhir/device_definition_udi_device_identifier.rb +44 -0
  269. data/app/models/fhir/device_device_name.rb +37 -0
  270. data/app/models/fhir/device_metric.rb +79 -0
  271. data/app/models/fhir/device_metric_calibration.rb +44 -0
  272. data/app/models/fhir/device_metric_calibration_state.rb +27 -0
  273. data/app/models/fhir/device_metric_calibration_type.rb +27 -0
  274. data/app/models/fhir/device_metric_category.rb +27 -0
  275. data/app/models/fhir/device_metric_color.rb +27 -0
  276. data/app/models/fhir/device_metric_operational_status.rb +27 -0
  277. data/app/models/fhir/device_name_type.rb +27 -0
  278. data/app/models/fhir/device_property.rb +38 -0
  279. data/app/models/fhir/device_request.rb +178 -0
  280. data/app/models/fhir/device_request_parameter.rb +50 -0
  281. data/app/models/fhir/device_request_status.rb +27 -0
  282. data/app/models/fhir/device_specialization.rb +35 -0
  283. data/app/models/fhir/device_udi_carrier.rb +65 -0
  284. data/app/models/fhir/device_use_statement.rb +104 -0
  285. data/app/models/fhir/device_use_statement_status.rb +27 -0
  286. data/app/models/fhir/device_version.rb +40 -0
  287. data/app/models/fhir/diagnostic_report.rb +126 -0
  288. data/app/models/fhir/diagnostic_report_media.rb +35 -0
  289. data/app/models/fhir/diagnostic_report_status.rb +27 -0
  290. data/app/models/fhir/discriminator_type.rb +27 -0
  291. data/app/models/fhir/distance.rb +23 -0
  292. data/app/models/fhir/document_confidentiality.rb +27 -0
  293. data/app/models/fhir/document_manifest.rb +91 -0
  294. data/app/models/fhir/document_manifest_related.rb +33 -0
  295. data/app/models/fhir/document_mode.rb +27 -0
  296. data/app/models/fhir/document_reference.rb +111 -0
  297. data/app/models/fhir/document_reference_content.rb +33 -0
  298. data/app/models/fhir/document_reference_context.rb +58 -0
  299. data/app/models/fhir/document_reference_relates_to.rb +35 -0
  300. data/app/models/fhir/document_reference_status.rb +27 -0
  301. data/app/models/fhir/document_relationship_type.rb +27 -0
  302. data/app/models/fhir/domain_resource.rb +43 -0
  303. data/app/models/fhir/dosage.rb +101 -0
  304. data/app/models/fhir/dosage_dose_and_rate.rb +53 -0
  305. data/app/models/fhir/duration.rb +23 -0
  306. data/app/models/fhir/effect_evidence_synthesis.rb +210 -0
  307. data/app/models/fhir/effect_evidence_synthesis_certainty.rb +38 -0
  308. data/app/models/fhir/effect_evidence_synthesis_certainty_certainty_subcomponent.rb +38 -0
  309. data/app/models/fhir/effect_evidence_synthesis_effect_estimate.rb +57 -0
  310. data/app/models/fhir/effect_evidence_synthesis_effect_estimate_precision_estimate.rb +49 -0
  311. data/app/models/fhir/effect_evidence_synthesis_results_by_exposure.rb +47 -0
  312. data/app/models/fhir/effect_evidence_synthesis_sample_size.rb +44 -0
  313. data/app/models/fhir/element.rb +37 -0
  314. data/app/models/fhir/element_definition.rb +1205 -0
  315. data/app/models/fhir/element_definition_base.rb +44 -0
  316. data/app/models/fhir/element_definition_binding.rb +44 -0
  317. data/app/models/fhir/element_definition_constraint.rb +72 -0
  318. data/app/models/fhir/element_definition_example.rb +318 -0
  319. data/app/models/fhir/element_definition_mapping.rb +51 -0
  320. data/app/models/fhir/element_definition_slicing.rb +49 -0
  321. data/app/models/fhir/element_definition_slicing_discriminator.rb +37 -0
  322. data/app/models/fhir/element_definition_type.rb +47 -0
  323. data/app/models/fhir/eligibility_request_purpose.rb +27 -0
  324. data/app/models/fhir/eligibility_request_status.rb +27 -0
  325. data/app/models/fhir/eligibility_response_purpose.rb +27 -0
  326. data/app/models/fhir/eligibility_response_status.rb +27 -0
  327. data/app/models/fhir/enable_when_behavior.rb +27 -0
  328. data/app/models/fhir/encounter.rb +140 -0
  329. data/app/models/fhir/encounter_class_history.rb +33 -0
  330. data/app/models/fhir/encounter_diagnosis.rb +40 -0
  331. data/app/models/fhir/encounter_hospitalization.rb +68 -0
  332. data/app/models/fhir/encounter_location.rb +45 -0
  333. data/app/models/fhir/encounter_location_status.rb +27 -0
  334. data/app/models/fhir/encounter_participant.rb +38 -0
  335. data/app/models/fhir/encounter_status.rb +27 -0
  336. data/app/models/fhir/encounter_status_history.rb +35 -0
  337. data/app/models/fhir/endpoint.rb +94 -0
  338. data/app/models/fhir/endpoint_status.rb +27 -0
  339. data/app/models/fhir/enrollment_request.rb +62 -0
  340. data/app/models/fhir/enrollment_request_status.rb +27 -0
  341. data/app/models/fhir/enrollment_response.rb +71 -0
  342. data/app/models/fhir/enrollment_response_status.rb +27 -0
  343. data/app/models/fhir/episode_of_care.rb +85 -0
  344. data/app/models/fhir/episode_of_care_diagnosis.rb +40 -0
  345. data/app/models/fhir/episode_of_care_status.rb +27 -0
  346. data/app/models/fhir/episode_of_care_status_history.rb +35 -0
  347. data/app/models/fhir/event_capability_mode.rb +27 -0
  348. data/app/models/fhir/event_definition.rb +198 -0
  349. data/app/models/fhir/event_timing.rb +27 -0
  350. data/app/models/fhir/evidence.rb +189 -0
  351. data/app/models/fhir/evidence_variable.rb +186 -0
  352. data/app/models/fhir/evidence_variable_characteristic.rb +108 -0
  353. data/app/models/fhir/evidence_variable_type.rb +27 -0
  354. data/app/models/fhir/example_scenario.rb +131 -0
  355. data/app/models/fhir/example_scenario_actor.rb +51 -0
  356. data/app/models/fhir/example_scenario_actor_type.rb +27 -0
  357. data/app/models/fhir/example_scenario_instance.rb +61 -0
  358. data/app/models/fhir/example_scenario_instance_contained_instance.rb +37 -0
  359. data/app/models/fhir/example_scenario_instance_version.rb +37 -0
  360. data/app/models/fhir/example_scenario_process.rb +56 -0
  361. data/app/models/fhir/example_scenario_process_step.rb +45 -0
  362. data/app/models/fhir/example_scenario_process_step_alternative.rb +42 -0
  363. data/app/models/fhir/example_scenario_process_step_operation.rb +89 -0
  364. data/app/models/fhir/explanation_of_benefit.rb +255 -0
  365. data/app/models/fhir/explanation_of_benefit_accident.rb +45 -0
  366. data/app/models/fhir/explanation_of_benefit_add_item.rb +152 -0
  367. data/app/models/fhir/explanation_of_benefit_add_item_detail.rb +75 -0
  368. data/app/models/fhir/explanation_of_benefit_add_item_detail_sub_detail.rb +70 -0
  369. data/app/models/fhir/explanation_of_benefit_benefit_balance.rb +69 -0
  370. data/app/models/fhir/explanation_of_benefit_benefit_balance_financial.rb +59 -0
  371. data/app/models/fhir/explanation_of_benefit_care_team.rb +52 -0
  372. data/app/models/fhir/explanation_of_benefit_diagnosis.rb +55 -0
  373. data/app/models/fhir/explanation_of_benefit_insurance.rb +45 -0
  374. data/app/models/fhir/explanation_of_benefit_item.rb +184 -0
  375. data/app/models/fhir/explanation_of_benefit_item_adjudication.rb +45 -0
  376. data/app/models/fhir/explanation_of_benefit_item_detail.rb +102 -0
  377. data/app/models/fhir/explanation_of_benefit_item_detail_sub_detail.rb +97 -0
  378. data/app/models/fhir/explanation_of_benefit_payee.rb +33 -0
  379. data/app/models/fhir/explanation_of_benefit_payment.rb +55 -0
  380. data/app/models/fhir/explanation_of_benefit_procedure.rb +57 -0
  381. data/app/models/fhir/explanation_of_benefit_process_note.rb +49 -0
  382. data/app/models/fhir/explanation_of_benefit_related.rb +38 -0
  383. data/app/models/fhir/explanation_of_benefit_status.rb +27 -0
  384. data/app/models/fhir/explanation_of_benefit_supporting_info.rb +86 -0
  385. data/app/models/fhir/explanation_of_benefit_total.rb +33 -0
  386. data/app/models/fhir/exposure_state.rb +27 -0
  387. data/app/models/fhir/expression.rb +58 -0
  388. data/app/models/fhir/extension.rb +337 -0
  389. data/app/models/fhir/extension_context_type.rb +27 -0
  390. data/app/models/fhir/family_history_status.rb +27 -0
  391. data/app/models/fhir/family_member_history.rb +183 -0
  392. data/app/models/fhir/family_member_history_condition.rb +67 -0
  393. data/app/models/fhir/fhir_all_types.rb +27 -0
  394. data/app/models/fhir/fhir_defined_type.rb +27 -0
  395. data/app/models/fhir/fhir_device_status.rb +27 -0
  396. data/app/models/fhir/fhir_resource_type.rb +27 -0
  397. data/app/models/fhir/fhir_substance_status.rb +27 -0
  398. data/app/models/fhir/fhir_version.rb +27 -0
  399. data/app/models/fhir/filter_operator.rb +27 -0
  400. data/app/models/fhir/flag.rb +65 -0
  401. data/app/models/fhir/flag_status.rb +27 -0
  402. data/app/models/fhir/goal.rb +116 -0
  403. data/app/models/fhir/goal_lifecycle_status.rb +27 -0
  404. data/app/models/fhir/goal_target.rb +81 -0
  405. data/app/models/fhir/graph_compartment_rule.rb +27 -0
  406. data/app/models/fhir/graph_compartment_use.rb +27 -0
  407. data/app/models/fhir/graph_definition.rb +120 -0
  408. data/app/models/fhir/graph_definition_link.rb +63 -0
  409. data/app/models/fhir/graph_definition_link_target.rb +54 -0
  410. data/app/models/fhir/graph_definition_link_target_compartment.rb +58 -0
  411. data/app/models/fhir/group.rb +83 -0
  412. data/app/models/fhir/group_characteristic.rb +67 -0
  413. data/app/models/fhir/group_measure.rb +27 -0
  414. data/app/models/fhir/group_member.rb +40 -0
  415. data/app/models/fhir/group_type.rb +27 -0
  416. data/app/models/fhir/guidance_response.rb +116 -0
  417. data/app/models/fhir/guidance_response_status.rb +27 -0
  418. data/app/models/fhir/guide_page_generation.rb +27 -0
  419. data/app/models/fhir/guide_parameter_code.rb +27 -0
  420. data/app/models/fhir/healthcare_service.rb +155 -0
  421. data/app/models/fhir/healthcare_service_available_time.rb +54 -0
  422. data/app/models/fhir/healthcare_service_eligibility.rb +35 -0
  423. data/app/models/fhir/healthcare_service_not_available.rb +35 -0
  424. data/app/models/fhir/http_verb.rb +27 -0
  425. data/app/models/fhir/human_name.rb +79 -0
  426. data/app/models/fhir/identifier.rb +59 -0
  427. data/app/models/fhir/identifier_use.rb +27 -0
  428. data/app/models/fhir/identity_assurance_level.rb +27 -0
  429. data/app/models/fhir/imaging_study.rb +133 -0
  430. data/app/models/fhir/imaging_study_series.rb +93 -0
  431. data/app/models/fhir/imaging_study_series_instance.rb +49 -0
  432. data/app/models/fhir/imaging_study_series_performer.rb +33 -0
  433. data/app/models/fhir/imaging_study_status.rb +27 -0
  434. data/app/models/fhir/immunization.rb +184 -0
  435. data/app/models/fhir/immunization_education.rb +51 -0
  436. data/app/models/fhir/immunization_evaluation.rb +114 -0
  437. data/app/models/fhir/immunization_evaluation_status.rb +27 -0
  438. data/app/models/fhir/immunization_performer.rb +33 -0
  439. data/app/models/fhir/immunization_protocol_applied.rb +68 -0
  440. data/app/models/fhir/immunization_reaction.rb +42 -0
  441. data/app/models/fhir/immunization_recommendation.rb +50 -0
  442. data/app/models/fhir/immunization_recommendation_recommendation.rb +105 -0
  443. data/app/models/fhir/immunization_recommendation_recommendation_date_criterion.rb +35 -0
  444. data/app/models/fhir/immunization_status.rb +27 -0
  445. data/app/models/fhir/implementation_guide.rb +152 -0
  446. data/app/models/fhir/implementation_guide_definition.rb +48 -0
  447. data/app/models/fhir/implementation_guide_definition_grouping.rb +37 -0
  448. data/app/models/fhir/implementation_guide_definition_page.rb +54 -0
  449. data/app/models/fhir/implementation_guide_definition_parameter.rb +37 -0
  450. data/app/models/fhir/implementation_guide_definition_resource.rb +73 -0
  451. data/app/models/fhir/implementation_guide_definition_template.rb +44 -0
  452. data/app/models/fhir/implementation_guide_depends_on.rb +44 -0
  453. data/app/models/fhir/implementation_guide_global.rb +37 -0
  454. data/app/models/fhir/implementation_guide_manifest.rb +60 -0
  455. data/app/models/fhir/implementation_guide_manifest_page.rb +47 -0
  456. data/app/models/fhir/implementation_guide_manifest_resource.rb +49 -0
  457. data/app/models/fhir/insurance_plan.rb +102 -0
  458. data/app/models/fhir/insurance_plan_contact.rb +43 -0
  459. data/app/models/fhir/insurance_plan_coverage.rb +38 -0
  460. data/app/models/fhir/insurance_plan_coverage_benefit.rb +40 -0
  461. data/app/models/fhir/insurance_plan_coverage_benefit_limit.rb +33 -0
  462. data/app/models/fhir/insurance_plan_plan.rb +53 -0
  463. data/app/models/fhir/insurance_plan_plan_general_cost.rb +47 -0
  464. data/app/models/fhir/insurance_plan_plan_specific_cost.rb +33 -0
  465. data/app/models/fhir/insurance_plan_plan_specific_cost_benefit.rb +33 -0
  466. data/app/models/fhir/insurance_plan_plan_specific_cost_benefit_cost.rb +43 -0
  467. data/app/models/fhir/invoice.rb +111 -0
  468. data/app/models/fhir/invoice_line_item.rb +45 -0
  469. data/app/models/fhir/invoice_line_item_price_component.rb +47 -0
  470. data/app/models/fhir/invoice_participant.rb +33 -0
  471. data/app/models/fhir/invoice_price_component_type.rb +27 -0
  472. data/app/models/fhir/invoice_status.rb +27 -0
  473. data/app/models/fhir/issue_severity.rb +27 -0
  474. data/app/models/fhir/issue_type.rb +27 -0
  475. data/app/models/fhir/library.rb +213 -0
  476. data/app/models/fhir/link_type.rb +27 -0
  477. data/app/models/fhir/linkage.rb +40 -0
  478. data/app/models/fhir/linkage_item.rb +35 -0
  479. data/app/models/fhir/linkage_type.rb +27 -0
  480. data/app/models/fhir/list.rb +96 -0
  481. data/app/models/fhir/list_entry.rb +47 -0
  482. data/app/models/fhir/list_mode.rb +27 -0
  483. data/app/models/fhir/list_status.rb +27 -0
  484. data/app/models/fhir/location.rb +123 -0
  485. data/app/models/fhir/location_hours_of_operation.rb +54 -0
  486. data/app/models/fhir/location_mode.rb +27 -0
  487. data/app/models/fhir/location_position.rb +44 -0
  488. data/app/models/fhir/location_status.rb +27 -0
  489. data/app/models/fhir/marketing_status.rb +50 -0
  490. data/app/models/fhir/measure.rb +295 -0
  491. data/app/models/fhir/measure_group.rb +45 -0
  492. data/app/models/fhir/measure_group_population.rb +40 -0
  493. data/app/models/fhir/measure_group_stratifier.rb +45 -0
  494. data/app/models/fhir/measure_group_stratifier_component.rb +40 -0
  495. data/app/models/fhir/measure_report.rb +86 -0
  496. data/app/models/fhir/measure_report_group.rb +43 -0
  497. data/app/models/fhir/measure_report_group_population.rb +40 -0
  498. data/app/models/fhir/measure_report_group_stratifier.rb +33 -0
  499. data/app/models/fhir/measure_report_group_stratifier_stratum.rb +43 -0
  500. data/app/models/fhir/measure_report_group_stratifier_stratum_component.rb +33 -0
  501. data/app/models/fhir/measure_report_group_stratifier_stratum_population.rb +40 -0
  502. data/app/models/fhir/measure_report_status.rb +27 -0
  503. data/app/models/fhir/measure_report_type.rb +27 -0
  504. data/app/models/fhir/measure_supplemental_data.rb +45 -0
  505. data/app/models/fhir/media.rb +154 -0
  506. data/app/models/fhir/media_status.rb +27 -0
  507. data/app/models/fhir/medication.rb +65 -0
  508. data/app/models/fhir/medication_administration.rb +137 -0
  509. data/app/models/fhir/medication_administration_dosage.rb +60 -0
  510. data/app/models/fhir/medication_administration_performer.rb +33 -0
  511. data/app/models/fhir/medication_administration_status.rb +27 -0
  512. data/app/models/fhir/medication_batch.rb +37 -0
  513. data/app/models/fhir/medication_dispense.rb +159 -0
  514. data/app/models/fhir/medication_dispense_performer.rb +33 -0
  515. data/app/models/fhir/medication_dispense_status.rb +27 -0
  516. data/app/models/fhir/medication_dispense_substitution.rb +45 -0
  517. data/app/models/fhir/medication_ingredient.rb +45 -0
  518. data/app/models/fhir/medication_knowledge.rb +142 -0
  519. data/app/models/fhir/medication_knowledge_administration_guidelines.rb +43 -0
  520. data/app/models/fhir/medication_knowledge_administration_guidelines_dosage.rb +33 -0
  521. data/app/models/fhir/medication_knowledge_administration_guidelines_patient_characteristics.rb +43 -0
  522. data/app/models/fhir/medication_knowledge_cost.rb +40 -0
  523. data/app/models/fhir/medication_knowledge_drug_characteristic.rb +52 -0
  524. data/app/models/fhir/medication_knowledge_ingredient.rb +45 -0
  525. data/app/models/fhir/medication_knowledge_kinetics.rb +38 -0
  526. data/app/models/fhir/medication_knowledge_medicine_classification.rb +33 -0
  527. data/app/models/fhir/medication_knowledge_monitoring_program.rb +35 -0
  528. data/app/models/fhir/medication_knowledge_monograph.rb +33 -0
  529. data/app/models/fhir/medication_knowledge_packaging.rb +33 -0
  530. data/app/models/fhir/medication_knowledge_regulatory.rb +43 -0
  531. data/app/models/fhir/medication_knowledge_regulatory_max_dispense.rb +33 -0
  532. data/app/models/fhir/medication_knowledge_regulatory_schedule.rb +28 -0
  533. data/app/models/fhir/medication_knowledge_regulatory_substitution.rb +35 -0
  534. data/app/models/fhir/medication_knowledge_related_medication_knowledge.rb +33 -0
  535. data/app/models/fhir/medication_knowledge_status.rb +27 -0
  536. data/app/models/fhir/medication_request.rb +215 -0
  537. data/app/models/fhir/medication_request_dispense_request.rb +60 -0
  538. data/app/models/fhir/medication_request_dispense_request_initial_fill.rb +33 -0
  539. data/app/models/fhir/medication_request_intent.rb +27 -0
  540. data/app/models/fhir/medication_request_priority.rb +27 -0
  541. data/app/models/fhir/medication_request_status.rb +27 -0
  542. data/app/models/fhir/medication_request_substitution.rb +40 -0
  543. data/app/models/fhir/medication_statement.rb +124 -0
  544. data/app/models/fhir/medication_statement_status.rb +27 -0
  545. data/app/models/fhir/medication_status.rb +27 -0
  546. data/app/models/fhir/medicinal_product.rb +128 -0
  547. data/app/models/fhir/medicinal_product_authorization.rb +111 -0
  548. data/app/models/fhir/medicinal_product_authorization_jurisdictional_authorization.rb +48 -0
  549. data/app/models/fhir/medicinal_product_authorization_procedure.rb +50 -0
  550. data/app/models/fhir/medicinal_product_contraindication.rb +58 -0
  551. data/app/models/fhir/medicinal_product_contraindication_other_therapy.rb +38 -0
  552. data/app/models/fhir/medicinal_product_indication.rb +68 -0
  553. data/app/models/fhir/medicinal_product_indication_other_therapy.rb +38 -0
  554. data/app/models/fhir/medicinal_product_ingredient.rb +55 -0
  555. data/app/models/fhir/medicinal_product_ingredient_specified_substance.rb +43 -0
  556. data/app/models/fhir/medicinal_product_ingredient_specified_substance_strength.rb +60 -0
  557. data/app/models/fhir/medicinal_product_ingredient_specified_substance_strength_reference_strength.rb +50 -0
  558. data/app/models/fhir/medicinal_product_ingredient_substance.rb +33 -0
  559. data/app/models/fhir/medicinal_product_interaction.rb +60 -0
  560. data/app/models/fhir/medicinal_product_interaction_interactant.rb +33 -0
  561. data/app/models/fhir/medicinal_product_manufactured.rb +58 -0
  562. data/app/models/fhir/medicinal_product_manufacturing_business_operation.rb +55 -0
  563. data/app/models/fhir/medicinal_product_name.rb +40 -0
  564. data/app/models/fhir/medicinal_product_name_country_language.rb +38 -0
  565. data/app/models/fhir/medicinal_product_name_name_part.rb +35 -0
  566. data/app/models/fhir/medicinal_product_packaged.rb +70 -0
  567. data/app/models/fhir/medicinal_product_packaged_batch_identifier.rb +33 -0
  568. data/app/models/fhir/medicinal_product_packaged_package_item.rb +83 -0
  569. data/app/models/fhir/medicinal_product_pharmaceutical.rb +58 -0
  570. data/app/models/fhir/medicinal_product_pharmaceutical_characteristics.rb +33 -0
  571. data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration.rb +58 -0
  572. data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration_target_species.rb +33 -0
  573. data/app/models/fhir/medicinal_product_pharmaceutical_route_of_administration_target_species_withdrawal_period.rb +40 -0
  574. data/app/models/fhir/medicinal_product_special_designation.rb +65 -0
  575. data/app/models/fhir/medicinal_product_undesirable_effect.rb +48 -0
  576. data/app/models/fhir/message_definition.rb +193 -0
  577. data/app/models/fhir/message_definition_allowed_response.rb +37 -0
  578. data/app/models/fhir/message_definition_focus.rb +51 -0
  579. data/app/models/fhir/message_header.rb +87 -0
  580. data/app/models/fhir/message_header_destination.rb +47 -0
  581. data/app/models/fhir/message_header_response.rb +42 -0
  582. data/app/models/fhir/message_header_source.rb +56 -0
  583. data/app/models/fhir/message_significance_category.rb +27 -0
  584. data/app/models/fhir/messageheader_response_request.rb +27 -0
  585. data/app/models/fhir/meta.rb +64 -0
  586. data/app/models/fhir/mime_type.rb +27 -0
  587. data/app/models/fhir/molecular_sequence.rb +111 -0
  588. data/app/models/fhir/molecular_sequence_quality.rb +120 -0
  589. data/app/models/fhir/molecular_sequence_quality_roc.rb +93 -0
  590. data/app/models/fhir/molecular_sequence_reference_seq.rb +80 -0
  591. data/app/models/fhir/molecular_sequence_repository.rb +65 -0
  592. data/app/models/fhir/molecular_sequence_structure_variant.rb +52 -0
  593. data/app/models/fhir/molecular_sequence_structure_variant_inner.rb +37 -0
  594. data/app/models/fhir/molecular_sequence_structure_variant_outer.rb +37 -0
  595. data/app/models/fhir/molecular_sequence_variant.rb +63 -0
  596. data/app/models/fhir/money.rb +37 -0
  597. data/app/models/fhir/money_quantity.rb +58 -0
  598. data/app/models/fhir/name_use.rb +27 -0
  599. data/app/models/fhir/naming_system.rb +104 -0
  600. data/app/models/fhir/naming_system_identifier_type.rb +27 -0
  601. data/app/models/fhir/naming_system_type.rb +27 -0
  602. data/app/models/fhir/naming_system_unique_id.rb +56 -0
  603. data/app/models/fhir/narrative.rb +37 -0
  604. data/app/models/fhir/narrative_status.rb +27 -0
  605. data/app/models/fhir/note_type.rb +27 -0
  606. data/app/models/fhir/nutritiion_order_intent.rb +27 -0
  607. data/app/models/fhir/nutrition_order.rb +129 -0
  608. data/app/models/fhir/nutrition_order_enteral_formula.rb +74 -0
  609. data/app/models/fhir/nutrition_order_enteral_formula_administration.rb +43 -0
  610. data/app/models/fhir/nutrition_order_oral_diet.rb +55 -0
  611. data/app/models/fhir/nutrition_order_oral_diet_nutrient.rb +33 -0
  612. data/app/models/fhir/nutrition_order_oral_diet_texture.rb +33 -0
  613. data/app/models/fhir/nutrition_order_status.rb +27 -0
  614. data/app/models/fhir/nutrition_order_supplement.rb +52 -0
  615. data/app/models/fhir/observation.rb +226 -0
  616. data/app/models/fhir/observation_component.rb +108 -0
  617. data/app/models/fhir/observation_data_type.rb +27 -0
  618. data/app/models/fhir/observation_definition.rb +97 -0
  619. data/app/models/fhir/observation_definition_qualified_interval.rb +69 -0
  620. data/app/models/fhir/observation_definition_quantitative_details.rb +47 -0
  621. data/app/models/fhir/observation_range_category.rb +27 -0
  622. data/app/models/fhir/observation_reference_range.rb +55 -0
  623. data/app/models/fhir/observation_status.rb +27 -0
  624. data/app/models/fhir/operation_definition.rb +198 -0
  625. data/app/models/fhir/operation_definition_overload.rb +40 -0
  626. data/app/models/fhir/operation_definition_parameter.rb +97 -0
  627. data/app/models/fhir/operation_definition_parameter_binding.rb +37 -0
  628. data/app/models/fhir/operation_definition_parameter_referenced_from.rb +37 -0
  629. data/app/models/fhir/operation_kind.rb +27 -0
  630. data/app/models/fhir/operation_outcome.rb +28 -0
  631. data/app/models/fhir/operation_outcome_issue.rb +69 -0
  632. data/app/models/fhir/operation_parameter_use.rb +27 -0
  633. data/app/models/fhir/organization.rb +82 -0
  634. data/app/models/fhir/organization_affiliation.rb +85 -0
  635. data/app/models/fhir/organization_contact.rb +43 -0
  636. data/app/models/fhir/orientation_type.rb +27 -0
  637. data/app/models/fhir/parameter_definition.rb +72 -0
  638. data/app/models/fhir/parameter_use.rb +27 -0
  639. data/app/models/fhir/parameters.rb +28 -0
  640. data/app/models/fhir/parameters_parameter.rb +328 -0
  641. data/app/models/fhir/participant_required.rb +27 -0
  642. data/app/models/fhir/participant_status.rb +27 -0
  643. data/app/models/fhir/participation_status.rb +27 -0
  644. data/app/models/fhir/patient.rb +127 -0
  645. data/app/models/fhir/patient_communication.rb +35 -0
  646. data/app/models/fhir/patient_contact.rb +60 -0
  647. data/app/models/fhir/patient_link.rb +35 -0
  648. data/app/models/fhir/payment_notice.rb +89 -0
  649. data/app/models/fhir/payment_notice_status.rb +27 -0
  650. data/app/models/fhir/payment_reconciliation.rb +108 -0
  651. data/app/models/fhir/payment_reconciliation_detail.rb +75 -0
  652. data/app/models/fhir/payment_reconciliation_process_note.rb +37 -0
  653. data/app/models/fhir/payment_reconciliation_status.rb +27 -0
  654. data/app/models/fhir/period.rb +37 -0
  655. data/app/models/fhir/person.rb +79 -0
  656. data/app/models/fhir/person_link.rb +35 -0
  657. data/app/models/fhir/plan_definition.rb +218 -0
  658. data/app/models/fhir/plan_definition_action.rb +226 -0
  659. data/app/models/fhir/plan_definition_action_condition.rb +35 -0
  660. data/app/models/fhir/plan_definition_action_dynamic_value.rb +35 -0
  661. data/app/models/fhir/plan_definition_action_participant.rb +35 -0
  662. data/app/models/fhir/plan_definition_action_related_action.rb +47 -0
  663. data/app/models/fhir/plan_definition_goal.rb +58 -0
  664. data/app/models/fhir/plan_definition_goal_target.rb +48 -0
  665. data/app/models/fhir/population.rb +48 -0
  666. data/app/models/fhir/practitioner.rb +79 -0
  667. data/app/models/fhir/practitioner_qualification.rb +43 -0
  668. data/app/models/fhir/practitioner_role.rb +97 -0
  669. data/app/models/fhir/practitioner_role_available_time.rb +54 -0
  670. data/app/models/fhir/practitioner_role_not_available.rb +35 -0
  671. data/app/models/fhir/primitive_base_64_binary.rb +31 -0
  672. data/app/models/fhir/primitive_boolean.rb +31 -0
  673. data/app/models/fhir/primitive_canonical.rb +27 -0
  674. data/app/models/fhir/primitive_code.rb +27 -0
  675. data/app/models/fhir/primitive_date.rb +31 -0
  676. data/app/models/fhir/primitive_date_time.rb +31 -0
  677. data/app/models/fhir/primitive_decimal.rb +31 -0
  678. data/app/models/fhir/primitive_id.rb +27 -0
  679. data/app/models/fhir/primitive_instant.rb +31 -0
  680. data/app/models/fhir/primitive_integer.rb +31 -0
  681. data/app/models/fhir/primitive_markdown.rb +27 -0
  682. data/app/models/fhir/primitive_oid.rb +27 -0
  683. data/app/models/fhir/primitive_positive_int.rb +27 -0
  684. data/app/models/fhir/primitive_question.rb +27 -0
  685. data/app/models/fhir/primitive_string.rb +31 -0
  686. data/app/models/fhir/primitive_time.rb +31 -0
  687. data/app/models/fhir/primitive_unsigned_int.rb +27 -0
  688. data/app/models/fhir/primitive_uri.rb +31 -0
  689. data/app/models/fhir/primitive_url.rb +27 -0
  690. data/app/models/fhir/primitive_uuid.rb +27 -0
  691. data/app/models/fhir/primitive_xhtml.rb +31 -0
  692. data/app/models/fhir/procedure.rb +199 -0
  693. data/app/models/fhir/procedure_focal_device.rb +33 -0
  694. data/app/models/fhir/procedure_performer.rb +38 -0
  695. data/app/models/fhir/procedure_status.rb +27 -0
  696. data/app/models/fhir/prod_characteristic.rb +90 -0
  697. data/app/models/fhir/product_shelf_life.rb +43 -0
  698. data/app/models/fhir/property_representation.rb +27 -0
  699. data/app/models/fhir/property_type.rb +27 -0
  700. data/app/models/fhir/provenance.rb +87 -0
  701. data/app/models/fhir/provenance_agent.rb +43 -0
  702. data/app/models/fhir/provenance_entity.rb +40 -0
  703. data/app/models/fhir/provenance_entity_role.rb +27 -0
  704. data/app/models/fhir/publication_status.rb +27 -0
  705. data/app/models/fhir/quality_type.rb +27 -0
  706. data/app/models/fhir/quantity.rb +58 -0
  707. data/app/models/fhir/quantity_comparator.rb +27 -0
  708. data/app/models/fhir/questionnaire.rb +169 -0
  709. data/app/models/fhir/questionnaire_item.rb +125 -0
  710. data/app/models/fhir/questionnaire_item_answer_option.rb +68 -0
  711. data/app/models/fhir/questionnaire_item_enable_when.rb +101 -0
  712. data/app/models/fhir/questionnaire_item_initial.rb +99 -0
  713. data/app/models/fhir/questionnaire_item_operator.rb +27 -0
  714. data/app/models/fhir/questionnaire_item_type.rb +27 -0
  715. data/app/models/fhir/questionnaire_response.rb +84 -0
  716. data/app/models/fhir/questionnaire_response_item.rb +54 -0
  717. data/app/models/fhir/questionnaire_response_item_answer.rb +104 -0
  718. data/app/models/fhir/questionnaire_response_status.rb +27 -0
  719. data/app/models/fhir/range.rb +33 -0
  720. data/app/models/fhir/ratio.rb +33 -0
  721. data/app/models/fhir/reference.rb +49 -0
  722. data/app/models/fhir/reference_handling_policy.rb +27 -0
  723. data/app/models/fhir/reference_version_rules.rb +27 -0
  724. data/app/models/fhir/referred_document_status.rb +27 -0
  725. data/app/models/fhir/related_artifact.rb +70 -0
  726. data/app/models/fhir/related_artifact_type.rb +27 -0
  727. data/app/models/fhir/related_person.rb +89 -0
  728. data/app/models/fhir/related_person_communication.rb +35 -0
  729. data/app/models/fhir/remittance_outcome.rb +27 -0
  730. data/app/models/fhir/repository_type.rb +27 -0
  731. data/app/models/fhir/request_group.rb +131 -0
  732. data/app/models/fhir/request_group_action.rb +165 -0
  733. data/app/models/fhir/request_group_action_condition.rb +35 -0
  734. data/app/models/fhir/request_group_action_related_action.rb +47 -0
  735. data/app/models/fhir/request_intent.rb +27 -0
  736. data/app/models/fhir/request_priority.rb +27 -0
  737. data/app/models/fhir/request_status.rb +27 -0
  738. data/app/models/fhir/research_definition.rb +240 -0
  739. data/app/models/fhir/research_element_definition.rb +239 -0
  740. data/app/models/fhir/research_element_definition_characteristic.rb +144 -0
  741. data/app/models/fhir/research_element_type.rb +27 -0
  742. data/app/models/fhir/research_study.rb +149 -0
  743. data/app/models/fhir/research_study_arm.rb +42 -0
  744. data/app/models/fhir/research_study_objective.rb +35 -0
  745. data/app/models/fhir/research_study_status.rb +27 -0
  746. data/app/models/fhir/research_subject.rb +69 -0
  747. data/app/models/fhir/research_subject_status.rb +27 -0
  748. data/app/models/fhir/resource.rb +59 -0
  749. data/app/models/fhir/resource_type.rb +27 -0
  750. data/app/models/fhir/resource_version_policy.rb +27 -0
  751. data/app/models/fhir/response_type.rb +27 -0
  752. data/app/models/fhir/restful_capability_mode.rb +27 -0
  753. data/app/models/fhir/risk_assessment.rb +119 -0
  754. data/app/models/fhir/risk_assessment_prediction.rb +69 -0
  755. data/app/models/fhir/risk_assessment_status.rb +27 -0
  756. data/app/models/fhir/risk_evidence_synthesis.rb +200 -0
  757. data/app/models/fhir/risk_evidence_synthesis_certainty.rb +38 -0
  758. data/app/models/fhir/risk_evidence_synthesis_certainty_certainty_subcomponent.rb +38 -0
  759. data/app/models/fhir/risk_evidence_synthesis_risk_estimate.rb +66 -0
  760. data/app/models/fhir/risk_evidence_synthesis_risk_estimate_precision_estimate.rb +49 -0
  761. data/app/models/fhir/risk_evidence_synthesis_sample_size.rb +44 -0
  762. data/app/models/fhir/sampled_data.rb +70 -0
  763. data/app/models/fhir/schedule.rb +67 -0
  764. data/app/models/fhir/search_comparator.rb +27 -0
  765. data/app/models/fhir/search_entry_mode.rb +27 -0
  766. data/app/models/fhir/search_modifier_code.rb +27 -0
  767. data/app/models/fhir/search_param_type.rb +27 -0
  768. data/app/models/fhir/search_parameter.rb +212 -0
  769. data/app/models/fhir/search_parameter_component.rb +37 -0
  770. data/app/models/fhir/section_mode.rb +27 -0
  771. data/app/models/fhir/sequence_type.rb +27 -0
  772. data/app/models/fhir/service_request.rb +239 -0
  773. data/app/models/fhir/service_request_intent.rb +27 -0
  774. data/app/models/fhir/service_request_priority.rb +27 -0
  775. data/app/models/fhir/service_request_status.rb +27 -0
  776. data/app/models/fhir/signature.rb +66 -0
  777. data/app/models/fhir/simple_quantity.rb +51 -0
  778. data/app/models/fhir/slicing_rules.rb +27 -0
  779. data/app/models/fhir/slot.rb +88 -0
  780. data/app/models/fhir/slot_status.rb +27 -0
  781. data/app/models/fhir/sort_direction.rb +27 -0
  782. data/app/models/fhir/spdx_license.rb +27 -0
  783. data/app/models/fhir/specimen.rb +92 -0
  784. data/app/models/fhir/specimen_collection.rb +70 -0
  785. data/app/models/fhir/specimen_contained_preference.rb +27 -0
  786. data/app/models/fhir/specimen_container.rb +60 -0
  787. data/app/models/fhir/specimen_definition.rb +55 -0
  788. data/app/models/fhir/specimen_definition_type_tested.rb +69 -0
  789. data/app/models/fhir/specimen_definition_type_tested_container.rb +74 -0
  790. data/app/models/fhir/specimen_definition_type_tested_container_additive.rb +33 -0
  791. data/app/models/fhir/specimen_definition_type_tested_handling.rb +45 -0
  792. data/app/models/fhir/specimen_processing.rb +52 -0
  793. data/app/models/fhir/specimen_status.rb +27 -0
  794. data/app/models/fhir/status.rb +27 -0
  795. data/app/models/fhir/strand_type.rb +27 -0
  796. data/app/models/fhir/structure_definition.rb +197 -0
  797. data/app/models/fhir/structure_definition_context.rb +37 -0
  798. data/app/models/fhir/structure_definition_differential.rb +28 -0
  799. data/app/models/fhir/structure_definition_kind.rb +27 -0
  800. data/app/models/fhir/structure_definition_mapping.rb +51 -0
  801. data/app/models/fhir/structure_definition_snapshot.rb +28 -0
  802. data/app/models/fhir/structure_map.rb +140 -0
  803. data/app/models/fhir/structure_map_context_type.rb +27 -0
  804. data/app/models/fhir/structure_map_group.rb +61 -0
  805. data/app/models/fhir/structure_map_group_input.rb +51 -0
  806. data/app/models/fhir/structure_map_group_rule.rb +57 -0
  807. data/app/models/fhir/structure_map_group_rule_dependent.rb +40 -0
  808. data/app/models/fhir/structure_map_group_rule_source.rb +381 -0
  809. data/app/models/fhir/structure_map_group_rule_target.rb +80 -0
  810. data/app/models/fhir/structure_map_group_rule_target_parameter.rb +58 -0
  811. data/app/models/fhir/structure_map_group_type_mode.rb +27 -0
  812. data/app/models/fhir/structure_map_input_mode.rb +27 -0
  813. data/app/models/fhir/structure_map_model_mode.rb +27 -0
  814. data/app/models/fhir/structure_map_source_list_mode.rb +27 -0
  815. data/app/models/fhir/structure_map_structure.rb +51 -0
  816. data/app/models/fhir/structure_map_target_list_mode.rb +27 -0
  817. data/app/models/fhir/structure_map_transform.rb +27 -0
  818. data/app/models/fhir/subscription.rb +68 -0
  819. data/app/models/fhir/subscription_channel.rb +54 -0
  820. data/app/models/fhir/subscription_channel_type.rb +27 -0
  821. data/app/models/fhir/subscription_status.rb +27 -0
  822. data/app/models/fhir/substance.rb +62 -0
  823. data/app/models/fhir/substance_amount.rb +57 -0
  824. data/app/models/fhir/substance_amount_reference_range.rb +33 -0
  825. data/app/models/fhir/substance_ingredient.rb +38 -0
  826. data/app/models/fhir/substance_instance.rb +40 -0
  827. data/app/models/fhir/substance_nucleic_acid.rb +52 -0
  828. data/app/models/fhir/substance_nucleic_acid_subunit.rb +69 -0
  829. data/app/models/fhir/substance_nucleic_acid_subunit_linkage.rb +49 -0
  830. data/app/models/fhir/substance_nucleic_acid_subunit_sugar.rb +42 -0
  831. data/app/models/fhir/substance_polymer.rb +58 -0
  832. data/app/models/fhir/substance_polymer_monomer_set.rb +33 -0
  833. data/app/models/fhir/substance_polymer_monomer_set_starting_material.rb +45 -0
  834. data/app/models/fhir/substance_polymer_repeat.rb +47 -0
  835. data/app/models/fhir/substance_polymer_repeat_repeat_unit.rb +50 -0
  836. data/app/models/fhir/substance_polymer_repeat_repeat_unit_degree_of_polymerisation.rb +33 -0
  837. data/app/models/fhir/substance_polymer_repeat_repeat_unit_structural_representation.rb +40 -0
  838. data/app/models/fhir/substance_protein.rb +50 -0
  839. data/app/models/fhir/substance_protein_subunit.rb +73 -0
  840. data/app/models/fhir/substance_reference_information.rb +50 -0
  841. data/app/models/fhir/substance_reference_information_classification.rb +43 -0
  842. data/app/models/fhir/substance_reference_information_gene.rb +38 -0
  843. data/app/models/fhir/substance_reference_information_gene_element.rb +38 -0
  844. data/app/models/fhir/substance_reference_information_target.rb +75 -0
  845. data/app/models/fhir/substance_source_material.rb +100 -0
  846. data/app/models/fhir/substance_source_material_fraction_description.rb +35 -0
  847. data/app/models/fhir/substance_source_material_organism.rb +65 -0
  848. data/app/models/fhir/substance_source_material_organism_author.rb +35 -0
  849. data/app/models/fhir/substance_source_material_organism_hybrid.rb +56 -0
  850. data/app/models/fhir/substance_source_material_organism_organism_general.rb +43 -0
  851. data/app/models/fhir/substance_source_material_part_description.rb +33 -0
  852. data/app/models/fhir/substance_specification.rb +122 -0
  853. data/app/models/fhir/substance_specification_code.rb +52 -0
  854. data/app/models/fhir/substance_specification_moiety.rb +69 -0
  855. data/app/models/fhir/substance_specification_name.rb +82 -0
  856. data/app/models/fhir/substance_specification_name_official.rb +40 -0
  857. data/app/models/fhir/substance_specification_property.rb +62 -0
  858. data/app/models/fhir/substance_specification_relationship.rb +82 -0
  859. data/app/models/fhir/substance_specification_structure.rb +67 -0
  860. data/app/models/fhir/substance_specification_structure_isotope.rb +48 -0
  861. data/app/models/fhir/substance_specification_structure_isotope_molecular_weight.rb +38 -0
  862. data/app/models/fhir/substance_specification_structure_representation.rb +40 -0
  863. data/app/models/fhir/supply_delivery.rb +92 -0
  864. data/app/models/fhir/supply_delivery_status.rb +27 -0
  865. data/app/models/fhir/supply_delivery_supplied_item.rb +38 -0
  866. data/app/models/fhir/supply_request.rb +121 -0
  867. data/app/models/fhir/supply_request_parameter.rb +50 -0
  868. data/app/models/fhir/supply_request_status.rb +27 -0
  869. data/app/models/fhir/system_restful_interaction.rb +27 -0
  870. data/app/models/fhir/task.rb +194 -0
  871. data/app/models/fhir/task_input.rb +316 -0
  872. data/app/models/fhir/task_intent.rb +27 -0
  873. data/app/models/fhir/task_output.rb +316 -0
  874. data/app/models/fhir/task_priority.rb +27 -0
  875. data/app/models/fhir/task_restriction.rb +40 -0
  876. data/app/models/fhir/task_status.rb +27 -0
  877. data/app/models/fhir/terminology_capabilities.rb +171 -0
  878. data/app/models/fhir/terminology_capabilities_closure.rb +30 -0
  879. data/app/models/fhir/terminology_capabilities_code_system.rb +42 -0
  880. data/app/models/fhir/terminology_capabilities_code_system_version.rb +69 -0
  881. data/app/models/fhir/terminology_capabilities_code_system_version_filter.rb +40 -0
  882. data/app/models/fhir/terminology_capabilities_expansion.rb +56 -0
  883. data/app/models/fhir/terminology_capabilities_expansion_parameter.rb +37 -0
  884. data/app/models/fhir/terminology_capabilities_implementation.rb +37 -0
  885. data/app/models/fhir/terminology_capabilities_software.rb +37 -0
  886. data/app/models/fhir/terminology_capabilities_translation.rb +30 -0
  887. data/app/models/fhir/terminology_capabilities_validate_code.rb +30 -0
  888. data/app/models/fhir/test_report.rb +95 -0
  889. data/app/models/fhir/test_report_action_result.rb +27 -0
  890. data/app/models/fhir/test_report_participant.rb +44 -0
  891. data/app/models/fhir/test_report_participant_type.rb +27 -0
  892. data/app/models/fhir/test_report_result.rb +27 -0
  893. data/app/models/fhir/test_report_setup.rb +28 -0
  894. data/app/models/fhir/test_report_setup_action.rb +33 -0
  895. data/app/models/fhir/test_report_setup_action_assert.rb +44 -0
  896. data/app/models/fhir/test_report_setup_action_operation.rb +44 -0
  897. data/app/models/fhir/test_report_status.rb +27 -0
  898. data/app/models/fhir/test_report_teardown.rb +28 -0
  899. data/app/models/fhir/test_report_teardown_action.rb +28 -0
  900. data/app/models/fhir/test_report_test.rb +42 -0
  901. data/app/models/fhir/test_report_test_action.rb +33 -0
  902. data/app/models/fhir/test_script.rb +165 -0
  903. data/app/models/fhir/test_script_destination.rb +35 -0
  904. data/app/models/fhir/test_script_fixture.rb +42 -0
  905. data/app/models/fhir/test_script_metadata.rb +33 -0
  906. data/app/models/fhir/test_script_metadata_capability.rb +78 -0
  907. data/app/models/fhir/test_script_metadata_link.rb +37 -0
  908. data/app/models/fhir/test_script_origin.rb +35 -0
  909. data/app/models/fhir/test_script_request_method_code.rb +27 -0
  910. data/app/models/fhir/test_script_setup.rb +28 -0
  911. data/app/models/fhir/test_script_setup_action.rb +33 -0
  912. data/app/models/fhir/test_script_setup_action_assert.rb +177 -0
  913. data/app/models/fhir/test_script_setup_action_operation.rb +138 -0
  914. data/app/models/fhir/test_script_setup_action_operation_request_header.rb +37 -0
  915. data/app/models/fhir/test_script_teardown.rb +28 -0
  916. data/app/models/fhir/test_script_teardown_action.rb +28 -0
  917. data/app/models/fhir/test_script_test.rb +42 -0
  918. data/app/models/fhir/test_script_test_action.rb +33 -0
  919. data/app/models/fhir/test_script_variable.rb +79 -0
  920. data/app/models/fhir/timing.rb +43 -0
  921. data/app/models/fhir/timing_repeat.rb +145 -0
  922. data/app/models/fhir/trigger_definition.rb +71 -0
  923. data/app/models/fhir/trigger_type.rb +27 -0
  924. data/app/models/fhir/type.rb +23 -0
  925. data/app/models/fhir/type_derivation_rule.rb +27 -0
  926. data/app/models/fhir/type_restful_interaction.rb +27 -0
  927. data/app/models/fhir/udi_entry_type.rb +27 -0
  928. data/app/models/fhir/units_of_time.rb +27 -0
  929. data/app/models/fhir/usage_context.rb +48 -0
  930. data/app/models/fhir/use.rb +27 -0
  931. data/app/models/fhir/value_set.rb +137 -0
  932. data/app/models/fhir/value_set_compose.rb +47 -0
  933. data/app/models/fhir/value_set_compose_include.rb +57 -0
  934. data/app/models/fhir/value_set_compose_include_concept.rb +42 -0
  935. data/app/models/fhir/value_set_compose_include_concept_designation.rb +42 -0
  936. data/app/models/fhir/value_set_compose_include_filter.rb +44 -0
  937. data/app/models/fhir/value_set_expansion.rb +61 -0
  938. data/app/models/fhir/value_set_expansion_contains.rb +75 -0
  939. data/app/models/fhir/value_set_expansion_parameter.rb +79 -0
  940. data/app/models/fhir/variable_type.rb +27 -0
  941. data/app/models/fhir/verification_result.rb +106 -0
  942. data/app/models/fhir/verification_result_attestation.rb +69 -0
  943. data/app/models/fhir/verification_result_primary_source.rb +60 -0
  944. data/app/models/fhir/verification_result_validator.rb +40 -0
  945. data/app/models/fhir/vision_base.rb +27 -0
  946. data/app/models/fhir/vision_eyes.rb +27 -0
  947. data/app/models/fhir/vision_prescription.rb +69 -0
  948. data/app/models/fhir/vision_prescription_lens_specification.rb +113 -0
  949. data/app/models/fhir/vision_prescription_lens_specification_prism.rb +37 -0
  950. data/app/models/fhir/vision_status.rb +27 -0
  951. data/app/models/fhir/x_path_usage_type.rb +27 -0
  952. data/app/models/models.rb +940 -0
  953. data/bin/console +14 -0
  954. data/bin/setup +8 -0
  955. data/config/mongoid.yml +6 -0
  956. data/fhir-mongoid-models.gemspec +30 -0
  957. data/fhir-mongoid-models.iml +9 -0
  958. data/lib/ext/fhir/library.rb +23 -0
  959. data/lib/fhir/mongoid/models.rb +12 -0
  960. data/package-lock.json +110 -0
  961. data/package.json +30 -0
  962. data/resources/fhir-modelinfo-4.0.1.xml +12217 -0
  963. metadata +1115 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 16a41240f3c38234ccc841170d5ee573b1698c6e0351cec0354db3deeacfb621
4
+ data.tar.gz: 6e69cf73af1582df6cde162f894e563d6df1f090a95468fdebc8aee62b777146
5
+ SHA512:
6
+ metadata.gz: 857ab5e0188a9fe30b46272664d4b90f7091073d00102227fa0ab9372f180053da88e2d7f2dd8a8d7b86d15b6e15929511c4dc14ae570009354990fadb27a61d
7
+ data.tar.gz: 2669d8ac8b70a720188550fa50c928e0606d79a01e08e8e5433ea8a8efbe831aabcc917f87dea5ac597d80fec7a74c6d0734908846ca837601dab66e10db7294
@@ -0,0 +1,8 @@
1
+ root = true
2
+
3
+ [*]
4
+ charset = utf-8
5
+ end_of_line = lf
6
+ insert_final_newline = true
7
+ indent_size = 2
8
+ indent_style = space
@@ -0,0 +1,2 @@
1
+ # Code owners:
2
+ * @AndrewBird81 @adongare @jkotanchik-SB @serhii-ilin @mattg @danmee10
@@ -0,0 +1,54 @@
1
+ name: Build
2
+
3
+ on:
4
+ push:
5
+ branches: [main, develop]
6
+ pull_request:
7
+ branches: [main, develop]
8
+
9
+ jobs:
10
+ build:
11
+
12
+ runs-on: ubuntu-latest
13
+
14
+ services:
15
+ mongodb:
16
+ image: mongo:3.4.23
17
+ ports:
18
+ - 27017:27017
19
+
20
+ steps:
21
+ - uses: actions/checkout@v2
22
+ - name: Set up Ruby 2.4
23
+ uses: actions/setup-ruby@v1
24
+ with:
25
+ ruby-version: 2.4
26
+
27
+ - name: Install bundler & bundle-audit
28
+ run: |
29
+ gem install bundler -v 2.1.4
30
+ gem install bundle-audit
31
+
32
+ - name: Install ruby gems
33
+ run: bundle install --jobs 4 --retry 3
34
+
35
+ - name: Build and test with Rake
36
+ env:
37
+ RAILS_ENV: test
38
+ run: |
39
+ bundle exec rubocop
40
+ bundle exec bundle-audit update && bundle exec bundle-audit check
41
+ bundle exec rake
42
+
43
+ - name: Upload coverage results
44
+ uses: actions/upload-artifact@master
45
+ if: always()
46
+ with:
47
+ name: coverage-report
48
+ path: coverage
49
+
50
+ - name: Upload coverage to Codecov
51
+ uses: codecov/codecov-action@v1
52
+ with:
53
+ file: coverage/lcov.info
54
+ fail_ci_if_error: true
@@ -0,0 +1,15 @@
1
+ node_modules
2
+ coverage
3
+ /Gemfile.lock
4
+ /.bundle/
5
+ /.yardoc
6
+ /_yardoc/
7
+ /coverage/
8
+ /doc/
9
+ /pkg/
10
+ /spec/reports/
11
+ /tmp/
12
+ /.idea/
13
+ .DS_Store
14
+ # rspec failure tracking
15
+ .rspec_status
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format documentation
2
+ --color
3
+ --require spec_helper
@@ -0,0 +1,20 @@
1
+ AllCops:
2
+ Exclude:
3
+ - 'bin/**/*'
4
+ - 'lib/ext/**/*'
5
+ - 'vendor/**/*'
6
+ - 'spec/**/*'
7
+ #TODO: enable this once we have models in fully working state
8
+ - 'app/models/**/*'
9
+ TargetRubyVersion: 2.4
10
+
11
+ Style/FrozenStringLiteralComment:
12
+ Enabled: false
13
+ Layout/TrailingWhitespace:
14
+ Enabled: false
15
+ Metrics/LineLength:
16
+ Enabled: false
17
+ Style/GuardClause:
18
+ Enabled: false
19
+ Metrics/BlockLength:
20
+ Enabled: false
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ source 'https://rubygems.org'
2
+
3
+ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
4
+
5
+ # Specify your gem's dependencies in fhir-mongoid-models.gemspec
6
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,121 @@
1
+ Creative Commons Legal Code
2
+
3
+ CC0 1.0 Universal
4
+
5
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6
+ LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9
+ REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10
+ PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11
+ THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12
+ HEREUNDER.
13
+
14
+ Statement of Purpose
15
+
16
+ The laws of most jurisdictions throughout the world automatically confer
17
+ exclusive Copyright and Related Rights (defined below) upon the creator
18
+ and subsequent owner(s) (each and all, an "owner") of an original work of
19
+ authorship and/or a database (each, a "Work").
20
+
21
+ Certain owners wish to permanently relinquish those rights to a Work for
22
+ the purpose of contributing to a commons of creative, cultural and
23
+ scientific works ("Commons") that the public can reliably and without fear
24
+ of later claims of infringement build upon, modify, incorporate in other
25
+ works, reuse and redistribute as freely as possible in any form whatsoever
26
+ and for any purposes, including without limitation commercial purposes.
27
+ These owners may contribute to the Commons to promote the ideal of a free
28
+ culture and the further production of creative, cultural and scientific
29
+ works, or to gain reputation or greater distribution for their Work in
30
+ part through the use and efforts of others.
31
+
32
+ For these and/or other purposes and motivations, and without any
33
+ expectation of additional consideration or compensation, the person
34
+ associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35
+ is an owner of Copyright and Related Rights in the Work, voluntarily
36
+ elects to apply CC0 to the Work and publicly distribute the Work under its
37
+ terms, with knowledge of his or her Copyright and Related Rights in the
38
+ Work and the meaning and intended legal effect of CC0 on those rights.
39
+
40
+ 1. Copyright and Related Rights. A Work made available under CC0 may be
41
+ protected by copyright and related or neighboring rights ("Copyright and
42
+ Related Rights"). Copyright and Related Rights include, but are not
43
+ limited to, the following:
44
+
45
+ i. the right to reproduce, adapt, distribute, perform, display,
46
+ communicate, and translate a Work;
47
+ ii. moral rights retained by the original author(s) and/or performer(s);
48
+ iii. publicity and privacy rights pertaining to a person's image or
49
+ likeness depicted in a Work;
50
+ iv. rights protecting against unfair competition in regards to a Work,
51
+ subject to the limitations in paragraph 4(a), below;
52
+ v. rights protecting the extraction, dissemination, use and reuse of data
53
+ in a Work;
54
+ vi. database rights (such as those arising under Directive 96/9/EC of the
55
+ European Parliament and of the Council of 11 March 1996 on the legal
56
+ protection of databases, and under any national implementation
57
+ thereof, including any amended or successor version of such
58
+ directive); and
59
+ vii. other similar, equivalent or corresponding rights throughout the
60
+ world based on applicable law or treaty, and any national
61
+ implementations thereof.
62
+
63
+ 2. Waiver. To the greatest extent permitted by, but not in contravention
64
+ of, applicable law, Affirmer hereby overtly, fully, permanently,
65
+ irrevocably and unconditionally waives, abandons, and surrenders all of
66
+ Affirmer's Copyright and Related Rights and associated claims and causes
67
+ of action, whether now known or unknown (including existing as well as
68
+ future claims and causes of action), in the Work (i) in all territories
69
+ worldwide, (ii) for the maximum duration provided by applicable law or
70
+ treaty (including future time extensions), (iii) in any current or future
71
+ medium and for any number of copies, and (iv) for any purpose whatsoever,
72
+ including without limitation commercial, advertising or promotional
73
+ purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74
+ member of the public at large and to the detriment of Affirmer's heirs and
75
+ successors, fully intending that such Waiver shall not be subject to
76
+ revocation, rescission, cancellation, termination, or any other legal or
77
+ equitable action to disrupt the quiet enjoyment of the Work by the public
78
+ as contemplated by Affirmer's express Statement of Purpose.
79
+
80
+ 3. Public License Fallback. Should any part of the Waiver for any reason
81
+ be judged legally invalid or ineffective under applicable law, then the
82
+ Waiver shall be preserved to the maximum extent permitted taking into
83
+ account Affirmer's express Statement of Purpose. In addition, to the
84
+ extent the Waiver is so judged Affirmer hereby grants to each affected
85
+ person a royalty-free, non transferable, non sublicensable, non exclusive,
86
+ irrevocable and unconditional license to exercise Affirmer's Copyright and
87
+ Related Rights in the Work (i) in all territories worldwide, (ii) for the
88
+ maximum duration provided by applicable law or treaty (including future
89
+ time extensions), (iii) in any current or future medium and for any number
90
+ of copies, and (iv) for any purpose whatsoever, including without
91
+ limitation commercial, advertising or promotional purposes (the
92
+ "License"). The License shall be deemed effective as of the date CC0 was
93
+ applied by Affirmer to the Work. Should any part of the License for any
94
+ reason be judged legally invalid or ineffective under applicable law, such
95
+ partial invalidity or ineffectiveness shall not invalidate the remainder
96
+ of the License, and in such case Affirmer hereby affirms that he or she
97
+ will not (i) exercise any of his or her remaining Copyright and Related
98
+ Rights in the Work or (ii) assert any associated claims and causes of
99
+ action with respect to the Work, in either case contrary to Affirmer's
100
+ express Statement of Purpose.
101
+
102
+ 4. Limitations and Disclaimers.
103
+
104
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
105
+ surrendered, licensed or otherwise affected by this document.
106
+ b. Affirmer offers the Work as-is and makes no representations or
107
+ warranties of any kind concerning the Work, express, implied,
108
+ statutory or otherwise, including without limitation warranties of
109
+ title, merchantability, fitness for a particular purpose, non
110
+ infringement, or the absence of latent or other defects, accuracy, or
111
+ the present or absence of errors, whether or not discoverable, all to
112
+ the greatest extent permissible under applicable law.
113
+ c. Affirmer disclaims responsibility for clearing rights of other persons
114
+ that may apply to the Work or any use thereof, including without
115
+ limitation any person's Copyright and Related Rights in the Work.
116
+ Further, Affirmer disclaims responsibility for obtaining any necessary
117
+ consents, permissions or other rights required for any use of the
118
+ Work.
119
+ d. Affirmer understands and acknowledges that Creative Commons is not a
120
+ party to this document and has no duty or obligation with respect to
121
+ this CC0 or use of the Work.
@@ -0,0 +1,23 @@
1
+ ![Build](https://github.com/MeasureAuthoringTool/fhir-mongoid-models/workflows/Build/badge.svg)
2
+ [![codecov](https://codecov.io/gh/MeasureAuthoringTool/fhir-mongoid-models/branch/develop/graph/badge.svg)](https://codecov.io/gh/MeasureAuthoringTool/fhir-mongoid-models)
3
+ [![Codacy Badge](https://api.codacy.com/project/badge/Grade/c2b57082ef9040e9aea16bbe778cd269)](https://app.codacy.com/gh/MeasureAuthoringTool/fhir-mongoid-models?utm_source=github.com&utm_medium=referral&utm_content=MeasureAuthoringTool/fhir-mongoid-models&utm_campaign=Badge_Grade_Dashboard)
4
+ # fhir-mongoid-models
5
+ This is a library containing Ruby Mongoid models that conform to the FHIR specification. Its code is generated using the model-info-parser utility
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'fhir-mongoid-models'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle install
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install fhir-mongoid-models
22
+
23
+ This work is in progress...
@@ -0,0 +1,6 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
@@ -0,0 +1,63 @@
1
+ module CQM
2
+ # Statement is a given CQL Statement within a CQL Library, which has many dependencies
3
+ class StatementDependency
4
+ include Mongoid::Document
5
+ embedded_in :cql_library
6
+
7
+ field :statement_name, type: String
8
+ embeds_many :statement_references
9
+
10
+ def as_json(*args)
11
+ result = Hash.new
12
+ unless self.statement_name.nil?
13
+ result['statement_name'] = self.statement_name
14
+ end
15
+ unless self.statement_references.nil? || !self.statement_references.any?
16
+ result['statement_references'] = self.statement_references.map{ |x| x.as_json(*args) }
17
+ end
18
+
19
+ result
20
+ end
21
+
22
+ def self.transform_json(json_hash, target = StatementDependency.new)
23
+ result = target
24
+ result['statement_name'] = json_hash['statement_name'] unless json_hash['statement_name'].nil?
25
+ result['statement_references'] = json_hash['statement_references'].map { |var| CQM::StatementReference.transform_json(var) } unless json_hash['statement_references'].nil?
26
+
27
+ result
28
+ end
29
+ end
30
+
31
+ # StatementReference notes a CQL Library/Statement which a given Statement (in which it is embedded) relies upon. This
32
+ # is also used for populations/stratifications/SDEs to reference their defining statement.
33
+ class StatementReference
34
+ include Mongoid::Document
35
+ embedded_in :statement_dependency
36
+ # embedded_in :population_set
37
+ # embedded_in :population_map
38
+ # embedded_in :stratification
39
+
40
+ field :library_name, type: String
41
+ field :statement_name, type: String
42
+
43
+ def as_json(*args)
44
+ result = Hash.new
45
+ unless self.library_name.nil?
46
+ result['library_name'] = self.library_name
47
+ end
48
+ unless self.statement_name.nil?
49
+ result['statement_name'] = self.statement_name
50
+ end
51
+
52
+ result
53
+ end
54
+
55
+ def self.transform_json(json_hash, target = StatementReference.new)
56
+ result = target
57
+ result['library_name'] = json_hash['library_name'] unless json_hash['library_name'].nil?
58
+ result['statement_name'] = json_hash['statement_name'] unless json_hash['statement_name'].nil?
59
+
60
+ result
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,41 @@
1
+ module CQM
2
+ class DataElement
3
+ include Mongoid::Document
4
+ embedded_in :patient, class_name: "CQM::Patient"
5
+ embedded_in :measure, class_name: "CQM::Measure"
6
+
7
+ # ValueSet oid of the specific type.
8
+ field :codeListId, type: String # OID of this element
9
+ field :valueSetTitle, type: String # display label for this resource
10
+ field :description, type: String # Optional description. This is class_name: valueSetTitle
11
+ embeds_one :fhir_resource, class_name: "FHIR::DomainResource"
12
+
13
+ def as_json(*args)
14
+ result = Hash.new
15
+ unless self.codeListId.nil?
16
+ result['codeListId'] = self.codeListId
17
+ end
18
+ unless self.valueSetTitle.nil?
19
+ result['valueSetTitle'] = self.valueSetTitle
20
+ end
21
+ unless self.description.nil?
22
+ result['description'] = self.description
23
+ end
24
+ unless self.fhir_resource.nil?
25
+ result['fhir_resource'] = self.fhir_resource.as_json(args)
26
+ end
27
+
28
+ result
29
+ end
30
+
31
+ def self.transform_json(json_hash, target = DataElement.new)
32
+ result = target
33
+ result['codeListId'] = json_hash['codeListId'] unless json_hash['codeListId'].nil?
34
+ result['valueSetTitle'] = json_hash['valueSetTitle'] unless json_hash['valueSetTitle'].nil?
35
+ result['description'] = json_hash['description'] unless json_hash['description'].nil?
36
+ result['fhir_resource'] = FHIR::Resource.transform_json(json_hash['fhir_resource']) unless json_hash['fhir_resource'].nil?
37
+
38
+ result
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,62 @@
1
+ module CQM
2
+ # CqlElmLibrary encapsulates what used to be a Hash in Ruby, by explicitly specifying
3
+ # a library ID, and the CQL string for that library
4
+ class LogicLibrary
5
+ include Mongoid::Document
6
+ embedded_in :measure
7
+
8
+ field :library_name, type: String
9
+ field :library_version, type: String
10
+ field :cql, type: String
11
+ field :elm, type: Hash
12
+ field :elm_annotations, type: Hash
13
+ field :is_main_library, type: Boolean, default: false
14
+
15
+ # Currently this is only relevant for cql libraries that are included in composite measures,
16
+ # true indicates the library files are in the "top level" folder of the measure package, rather
17
+ # than coming from a component measure folder.
18
+ # field :is_top_level, type: Boolean, default: true
19
+
20
+ embeds_many :statement_dependencies, class_name: 'CQM::StatementDependency'
21
+
22
+ def as_json(*args)
23
+ result = Hash.new
24
+ unless self.library_name.nil?
25
+ result['library_name'] = self.library_name
26
+ end
27
+ unless self.library_version.nil?
28
+ result['library_version'] = self.library_version
29
+ end
30
+ unless self.cql.nil?
31
+ result['cql'] = self.cql
32
+ end
33
+ unless self.elm.nil?
34
+ result['elm'] = self.elm
35
+ end
36
+ unless self.elm_annotations.nil?
37
+ result['elm_annotations'] = self.elm_annotations
38
+ end
39
+ unless self.is_main_library.nil?
40
+ result['is_main_library'] = self.is_main_library
41
+ end
42
+ unless self.statement_dependencies.nil? || !self.statement_dependencies.any?
43
+ result['statement_dependencies'] = self.statement_dependencies.map{ |x| x.as_json(*args) }
44
+ end
45
+
46
+ result
47
+ end
48
+
49
+ def self.transform_json(json_hash, target = LogicLibrary.new)
50
+ result = target
51
+ result['library_name'] = json_hash['library_name'] unless json_hash['library_name'].nil?
52
+ result['library_version'] = json_hash['library_version'] unless json_hash['library_version'].nil?
53
+ result['cql'] = json_hash['cql'] unless json_hash['cql'].nil?
54
+ result['elm'] = json_hash['elm'] unless json_hash['elm'].nil?
55
+ result['elm_annotations'] = json_hash['elm_annotations'] unless json_hash['elm_annotations'].nil?
56
+ result['is_main_library'] = json_hash['is_main_library'] unless json_hash['is_main_library'].nil?
57
+ result['statement_dependencies'] = json_hash['statement_dependencies'].map { |var| CQM::StatementDependency.transform_json(var) } unless json_hash['statement_dependencies'].nil?
58
+
59
+ result
60
+ end
61
+ end
62
+ end