openehr 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. data/.document +5 -0
  2. data/.rspec +2 -0
  3. data/.travis.yml +3 -0
  4. data/Gemfile +23 -0
  5. data/Guardfile +12 -0
  6. data/History.txt +36 -0
  7. data/PostInstall.txt +9 -0
  8. data/README.rdoc +82 -0
  9. data/Rakefile +44 -0
  10. data/VERSION +1 -0
  11. data/doc/openehr_terminology.xml +2700 -0
  12. data/lib/openehr.rb +11 -0
  13. data/lib/openehr/am.rb +8 -0
  14. data/lib/openehr/am/archetype.rb +133 -0
  15. data/lib/openehr/am/archetype/assertion.rb +190 -0
  16. data/lib/openehr/am/archetype/constraint_model.rb +328 -0
  17. data/lib/openehr/am/archetype/constraint_model/primitive.rb +327 -0
  18. data/lib/openehr/am/archetype/ontology.rb +126 -0
  19. data/lib/openehr/am/openehr_profile.rb +9 -0
  20. data/lib/openehr/am/openehr_profile/data_types.rb +13 -0
  21. data/lib/openehr/am/openehr_profile/data_types/basic.rb +114 -0
  22. data/lib/openehr/am/openehr_profile/data_types/quantity.rb +67 -0
  23. data/lib/openehr/am/openehr_profile/data_types/text.rb +22 -0
  24. data/lib/openehr/assumed_library_types.rb +691 -0
  25. data/lib/openehr/parser.rb +23 -0
  26. data/lib/openehr/parser/adl.rb +57 -0
  27. data/lib/openehr/parser/adl_grammar.tt +245 -0
  28. data/lib/openehr/parser/adl_parser.rb +52 -0
  29. data/lib/openehr/parser/cadl_grammar.tt +1527 -0
  30. data/lib/openehr/parser/cadl_node.rb +44 -0
  31. data/lib/openehr/parser/dadl.rb +13 -0
  32. data/lib/openehr/parser/dadl_grammar.tt +358 -0
  33. data/lib/openehr/parser/exception.rb +68 -0
  34. data/lib/openehr/parser/shared_token_grammar.tt +1229 -0
  35. data/lib/openehr/parser/validator.rb +19 -0
  36. data/lib/openehr/parser/xml_perser.rb +13 -0
  37. data/lib/openehr/rm.rb +15 -0
  38. data/lib/openehr/rm/common.rb +14 -0
  39. data/lib/openehr/rm/common/archetyped.rb +182 -0
  40. data/lib/openehr/rm/common/change_control.rb +332 -0
  41. data/lib/openehr/rm/common/directory.rb +29 -0
  42. data/lib/openehr/rm/common/generic.rb +216 -0
  43. data/lib/openehr/rm/common/resource.rb +154 -0
  44. data/lib/openehr/rm/composition.rb +103 -0
  45. data/lib/openehr/rm/composition/content.rb +22 -0
  46. data/lib/openehr/rm/composition/content/entry.rb +253 -0
  47. data/lib/openehr/rm/composition/content/navigation.rb +31 -0
  48. data/lib/openehr/rm/data_structures.rb +25 -0
  49. data/lib/openehr/rm/data_structures/history.rb +117 -0
  50. data/lib/openehr/rm/data_structures/item_structure.rb +218 -0
  51. data/lib/openehr/rm/data_structures/item_structure/representation.rb +63 -0
  52. data/lib/openehr/rm/data_types.rb +14 -0
  53. data/lib/openehr/rm/data_types/basic.rb +108 -0
  54. data/lib/openehr/rm/data_types/charset.lst +818 -0
  55. data/lib/openehr/rm/data_types/charset_extract.rb +24 -0
  56. data/lib/openehr/rm/data_types/encapsulated.rb +98 -0
  57. data/lib/openehr/rm/data_types/quantity.rb +402 -0
  58. data/lib/openehr/rm/data_types/quantity/date_time.rb +256 -0
  59. data/lib/openehr/rm/data_types/text.rb +169 -0
  60. data/lib/openehr/rm/data_types/time_specification.rb +75 -0
  61. data/lib/openehr/rm/data_types/uri.rb +83 -0
  62. data/lib/openehr/rm/demographic.rb +269 -0
  63. data/lib/openehr/rm/ehr.rb +162 -0
  64. data/lib/openehr/rm/integration.rb +27 -0
  65. data/lib/openehr/rm/security.rb +12 -0
  66. data/lib/openehr/rm/support.rb +14 -0
  67. data/lib/openehr/rm/support/definition.rb +15 -0
  68. data/lib/openehr/rm/support/identification.rb +412 -0
  69. data/lib/openehr/rm/support/measurement.rb +17 -0
  70. data/lib/openehr/rm/support/terminology.rb +135 -0
  71. data/lib/openehr/serializer.rb +272 -0
  72. data/lib/openehr/terminology.rb +7 -0
  73. data/lib/openehr/terminology/open_ehr_terminology.rb +41 -0
  74. data/lib/openehr/writer.rb +12 -0
  75. data/openehr.gemspec +472 -0
  76. data/spec/lib/openehr/am/archetype/archetype_spec.rb +103 -0
  77. data/spec/lib/openehr/am/archetype/assertion/assertion_spec.rb +60 -0
  78. data/spec/lib/openehr/am/archetype/assertion/assertion_variable_spec.rb +30 -0
  79. data/spec/lib/openehr/am/archetype/assertion/expr_binary_operator.rb +40 -0
  80. data/spec/lib/openehr/am/archetype/assertion/expr_item_spec.rb +28 -0
  81. data/spec/lib/openehr/am/archetype/assertion/expr_leaf_spec.rb +34 -0
  82. data/spec/lib/openehr/am/archetype/assertion/expr_operator_spec.rb +25 -0
  83. data/spec/lib/openehr/am/archetype/assertion/expr_unary_operator_spec.rb +26 -0
  84. data/spec/lib/openehr/am/archetype/assertion/operator_kind_spec.rb +114 -0
  85. data/spec/lib/openehr/am/archetype/constraint_model/archetype_constraint_spec.rb +56 -0
  86. data/spec/lib/openehr/am/archetype/constraint_model/archetype_internal_ref_spec.rb +36 -0
  87. data/spec/lib/openehr/am/archetype/constraint_model/archetype_slot_spec.rb +61 -0
  88. data/spec/lib/openehr/am/archetype/constraint_model/c_attribute_spec.rb +59 -0
  89. data/spec/lib/openehr/am/archetype/constraint_model/c_complex_object_spec.rb +39 -0
  90. data/spec/lib/openehr/am/archetype/constraint_model/c_defined_object_spec.rb +53 -0
  91. data/spec/lib/openehr/am/archetype/constraint_model/c_domain_type_spec.rb +25 -0
  92. data/spec/lib/openehr/am/archetype/constraint_model/c_multiple_attribute_spec.rb +23 -0
  93. data/spec/lib/openehr/am/archetype/constraint_model/c_object_spec.rb +61 -0
  94. data/spec/lib/openehr/am/archetype/constraint_model/c_primitive_object_spec.rb +33 -0
  95. data/spec/lib/openehr/am/archetype/constraint_model/c_reference_object_spec.rb +17 -0
  96. data/spec/lib/openehr/am/archetype/constraint_model/c_single_attribute_spec.rb +22 -0
  97. data/spec/lib/openehr/am/archetype/constraint_model/cardinality_spec.rb +68 -0
  98. data/spec/lib/openehr/am/archetype/constraint_model/constraint_ref_spec.rb +29 -0
  99. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_boolean_spec.rb +57 -0
  100. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_date_spec.rb +52 -0
  101. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_date_time_spec.rb +136 -0
  102. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_duration_spec.rb +41 -0
  103. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_integer_spec.rb +67 -0
  104. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_primitive_spec.rb +41 -0
  105. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_real_spec.rb +19 -0
  106. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_string_spec.rb +73 -0
  107. data/spec/lib/openehr/am/archetype/constraint_model/primitive/c_time_spec.rb +104 -0
  108. data/spec/lib/openehr/am/archetype/ontology/archetype_ontology_spec.rb +97 -0
  109. data/spec/lib/openehr/am/archetype/ontology/archetype_term_spec.rb +43 -0
  110. data/spec/lib/openehr/am/archetype/validity_kind_spec.rb +42 -0
  111. data/spec/lib/openehr/am/openehr_profile/data_types/basic/c_dv_state_spec.rb +34 -0
  112. data/spec/lib/openehr/am/openehr_profile/data_types/basic/non_terminal_state_spec.rb +36 -0
  113. data/spec/lib/openehr/am/openehr_profile/data_types/basic/state_machine_spec.rb +34 -0
  114. data/spec/lib/openehr/am/openehr_profile/data_types/basic/state_spec.rb +26 -0
  115. data/spec/lib/openehr/am/openehr_profile/data_types/basic/terminal_state_spec.rb +18 -0
  116. data/spec/lib/openehr/am/openehr_profile/data_types/basic/transition_spec.rb +62 -0
  117. data/spec/lib/openehr/am/openehr_profile/data_types/quantity/c_dv_ordinal_spec.rb +41 -0
  118. data/spec/lib/openehr/am/openehr_profile/data_types/quantity/c_dv_quantity_spec.rb +50 -0
  119. data/spec/lib/openehr/am/openehr_profile/data_types/quantity/c_quantity_item_spec.rb +46 -0
  120. data/spec/lib/openehr/am/openehr_profile/data_types/text/c_code_phrase_spec.rb +34 -0
  121. data/spec/lib/openehr/assumed_library_types/interval_spec.rb +145 -0
  122. data/spec/lib/openehr/assumed_library_types/iso8601_date_spec.rb +236 -0
  123. data/spec/lib/openehr/assumed_library_types/iso8601_date_time_spec.rb +47 -0
  124. data/spec/lib/openehr/assumed_library_types/iso8601_duration_spec.rb +150 -0
  125. data/spec/lib/openehr/assumed_library_types/iso8601_time_spec.rb +234 -0
  126. data/spec/lib/openehr/assumed_library_types/iso8601_timezone_spec.rb +57 -0
  127. data/spec/lib/openehr/assumed_library_types/time_definitions_spec.rb +136 -0
  128. data/spec/lib/openehr/assumed_library_types/timezone_spec.rb +42 -0
  129. data/spec/lib/openehr/parser/adl14/adl-test-ENTRY.assumed_types.v1.adl +88 -0
  130. data/spec/lib/openehr/parser/adl14/adl-test-ENTRY.basic_types.v1.adl +143 -0
  131. data/spec/lib/openehr/parser/adl14/adl-test-ENTRY.basic_types_fail.v1.adl +50 -0
  132. data/spec/lib/openehr/parser/adl14/adl-test-ENTRY.most_minimal.v1.adl +27 -0
  133. data/spec/lib/openehr/parser/adl14/adl-test-ENTRY.structure_test1.v1.adl +46 -0
  134. data/spec/lib/openehr/parser/adl14/adl-test-SOME_TYPE.generic_type_basic.draft.adl +56 -0
  135. data/spec/lib/openehr/parser/adl14/adl-test-SOME_TYPE.generic_type_use_node.draft.adl +63 -0
  136. data/spec/lib/openehr/parser/adl14/adl-test-car.paths.test.adl +80 -0
  137. data/spec/lib/openehr/parser/adl14/adl-test-car.use_node.test.adl +87 -0
  138. data/spec/lib/openehr/parser/adl14/adl-test-composition.dv_coded_text.test.adl +29 -0
  139. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_bindings.test.adl +47 -0
  140. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_desc_missing_purpose.test.adl +45 -0
  141. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_description.test.adl +61 -0
  142. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_description2.test.adl +45 -0
  143. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_identification.test.adl +26 -0
  144. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_internal_ref.test.adl +36 -0
  145. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_internal_ref2.test.adl +36 -0
  146. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_language.test.adl +47 -0
  147. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_language_no_accreditation.test.adl +38 -0
  148. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_language_order_of_translation_details.test.adl +40 -0
  149. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_ontology.test.adl +25 -0
  150. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_slot.test.adl +40 -0
  151. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_slot.test2.adl +37 -0
  152. data/spec/lib/openehr/parser/adl14/adl-test-entry.archetype_uncommonkeys.test.adl +29 -0
  153. data/spec/lib/openehr/parser/adl14/adl-test-entry.basic_types.test.adl +272 -0
  154. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_code_phrase.test.adl +77 -0
  155. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_ordinal.test.adl +66 -0
  156. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_empty.test.adl +46 -0
  157. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_full.test.adl +64 -0
  158. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_full2.test.adl +64 -0
  159. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_full3.test.adl +64 -0
  160. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_item_units_only.test.adl +55 -0
  161. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_list.test.adl +58 -0
  162. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_property.test.adl +47 -0
  163. data/spec/lib/openehr/parser/adl14/adl-test-entry.c_dv_quantity_reversed.test.adl +59 -0
  164. data/spec/lib/openehr/parser/adl14/adl-test-entry.constraint_binding.test.adl +37 -0
  165. data/spec/lib/openehr/parser/adl14/adl-test-entry.constraint_ref.test.adl +43 -0
  166. data/spec/lib/openehr/parser/adl14/adl-test-entry.datetime.test.adl +183 -0
  167. data/spec/lib/openehr/parser/adl14/adl-test-entry.domain_types.test.adl +97 -0
  168. data/spec/lib/openehr/parser/adl14/adl-test-entry.durations.test.adl +109 -0
  169. data/spec/lib/openehr/parser/adl14/adl-test-entry.empty_other_contributors.test.adl +42 -0
  170. data/spec/lib/openehr/parser/adl14/adl-test-entry.missing_language.test.adl +23 -0
  171. data/spec/lib/openehr/parser/adl14/adl-test-entry.mixed_node_types.draft.adl +61 -0
  172. data/spec/lib/openehr/parser/adl14/adl-test-entry.most_minimal.test.adl +23 -0
  173. data/spec/lib/openehr/parser/adl14/adl-test-entry.multi_language.test.adl +52 -0
  174. data/spec/lib/openehr/parser/adl14/adl-test-entry.special_string.test.adl +88 -0
  175. data/spec/lib/openehr/parser/adl14/adl-test-entry.structure_test1.test.adl +45 -0
  176. data/spec/lib/openehr/parser/adl14/adl-test-entry.structure_test2.test.adl +45 -0
  177. data/spec/lib/openehr/parser/adl14/adl-test-entry.term_binding.test.adl +37 -0
  178. data/spec/lib/openehr/parser/adl14/adl-test-entry.term_binding2.test.adl +32 -0
  179. data/spec/lib/openehr/parser/adl14/adl-test-entry.testtranslations.test.adl +83 -0
  180. data/spec/lib/openehr/parser/adl14/adl-test-entry.translations_author_language.test.adl +34 -0
  181. data/spec/lib/openehr/parser/adl14/adl-test-entry.translations_language_author.test.adl +34 -0
  182. data/spec/lib/openehr/parser/adl14/adl-test-entry.unicode_BOM_support.test.adl +41 -0
  183. data/spec/lib/openehr/parser/adl14/adl-test-entry.unicode_support.test.adl +41 -0
  184. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ACTION.imaging.v1.adl +275 -0
  185. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ACTION.referral.v1.adl +351 -0
  186. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.auscultation-chest.v1.adl +765 -0
  187. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.auscultation.v1.adl +48 -0
  188. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl +134 -0
  189. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.dimensions.v1.adl +241 -0
  190. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-abdomen.v1.adl +321 -0
  191. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-chest.v1.adl +379 -0
  192. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-fetus.v1.adl +577 -0
  193. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl +146 -0
  194. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl +176 -0
  195. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl +221 -0
  196. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-generic.v1.adl +139 -0
  197. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl +116 -0
  198. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl +420 -0
  199. data/spec/lib/openehr/parser/adl14/openEHR-EHR-CLUSTER.exam-uterus.v1.adl +293 -0
  200. data/spec/lib/openehr/parser/adl14/openEHR-EHR-COMPOSITION.discharge.v1draft.adl +53 -0
  201. data/spec/lib/openehr/parser/adl14/openEHR-EHR-COMPOSITION.encounter.v1draft.adl +45 -0
  202. data/spec/lib/openehr/parser/adl14/openEHR-EHR-EVALUATION.adverse.v1.adl +411 -0
  203. data/spec/lib/openehr/parser/adl14/openEHR-EHR-EVALUATION.columna_vertebral.v1.adl +85 -0
  204. data/spec/lib/openehr/parser/adl14/openEHR-EHR-INSTRUCTION.medication.v1.adl +88 -0
  205. data/spec/lib/openehr/parser/adl14/openEHR-EHR-INSTRUCTION.referral.v1.adl +84 -0
  206. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl +492 -0
  207. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.follow_up.v1draft.adl +94 -0
  208. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.imaging.v1.adl +127 -0
  209. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.medication-formulation.v1.adl +457 -0
  210. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.medication.v1.adl +869 -0
  211. data/spec/lib/openehr/parser/adl14/openEHR-EHR-ITEM_TREE.referral.v1.adl +494 -0
  212. data/spec/lib/openehr/parser/adl14/openEHR-EHR-OBSERVATION.apgar.v1.adl +545 -0
  213. data/spec/lib/openehr/parser/adl14/openEHR-EHR-OBSERVATION.blood_pressure.v1.adl +673 -0
  214. data/spec/lib/openehr/parser/adl14/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl +166 -0
  215. data/spec/lib/openehr/parser/adl14/openEHR-EHR-OBSERVATION.lab_test.v1.adl +376 -0
  216. data/spec/lib/openehr/parser/adl14/openEHR-EHR-OBSERVATION.testassumedvalue.v1.adl +99 -0
  217. data/spec/lib/openehr/parser/adl14/openEHR-EHR-SECTION.findings.v1.adl +47 -0
  218. data/spec/lib/openehr/parser/adl14/openEHR-EHR-SECTION.reason_for_encounter.v1.adl +51 -0
  219. data/spec/lib/openehr/parser/adl14/openEHR-EHR-SECTION.summary.v1.adl +52 -0
  220. data/spec/lib/openehr/parser/adl14/openEHR-EHR-SECTION.vital_signs.v1.adl +54 -0
  221. data/spec/lib/openehr/parser/adl_archetype_internal_ref2_spec.rb +42 -0
  222. data/spec/lib/openehr/parser/adl_archetype_internal_ref_spec.rb +125 -0
  223. data/spec/lib/openehr/parser/adl_archetype_internal_ref_with_generics_spec.rb +258 -0
  224. data/spec/lib/openehr/parser/adl_archetype_ontology_binding_spec.rb +98 -0
  225. data/spec/lib/openehr/parser/adl_archetype_ontology_spec.rb +42 -0
  226. data/spec/lib/openehr/parser/adl_archetype_slot_cluster_spec.rb +101 -0
  227. data/spec/lib/openehr/parser/adl_archetype_slot_spec.rb +193 -0
  228. data/spec/lib/openehr/parser/adl_archetype_uncommon_term_keys_spec.rb +25 -0
  229. data/spec/lib/openehr/parser/adl_description_spec.rb +164 -0
  230. data/spec/lib/openehr/parser/adl_identification_spec.rb +18 -0
  231. data/spec/lib/openehr/parser/adl_language_no_accreditation_spec.rb +66 -0
  232. data/spec/lib/openehr/parser/adl_language_order_spec.rb +68 -0
  233. data/spec/lib/openehr/parser/adl_language_spec.rb +119 -0
  234. data/spec/lib/openehr/parser/adl_language_translation_author_language_spec.rb +50 -0
  235. data/spec/lib/openehr/parser/adl_language_translation_language_author_spec.rb +46 -0
  236. data/spec/lib/openehr/parser/adl_parser_spec.rb +347 -0
  237. data/spec/lib/openehr/parser/adl_path_spec.rb +176 -0
  238. data/spec/lib/openehr/parser/base_spec.rb +19 -0
  239. data/spec/lib/openehr/parser/basic_generic_type_spec.rb +18 -0
  240. data/spec/lib/openehr/parser/basic_type_spec.rb +2922 -0
  241. data/spec/lib/openehr/parser/c_dv_quantity_any_allowed_spec.rb +34 -0
  242. data/spec/lib/openehr/parser/c_dv_quantity_shared_example_for_lacked_items_spec.rb +36 -0
  243. data/spec/lib/openehr/parser/c_dv_quantity_shared_example_spec.rb +146 -0
  244. data/spec/lib/openehr/parser/cdv_ordinal_parse_spec.rb +231 -0
  245. data/spec/lib/openehr/parser/code_phrase_spec.rb +96 -0
  246. data/spec/lib/openehr/parser/constraint_binding_spec.rb +26 -0
  247. data/spec/lib/openehr/parser/constraint_ref_spec.rb +32 -0
  248. data/spec/lib/openehr/parser/date_time_spec.rb +1953 -0
  249. data/spec/lib/openehr/parser/duration_spec.rb +475 -0
  250. data/spec/lib/openehr/parser/dv_coded_text_parse_spec.rb +27 -0
  251. data/spec/lib/openehr/parser/empty_other_contributors_spec.rb +19 -0
  252. data/spec/lib/openehr/parser/lab_test_parser_spec.rb +14 -0
  253. data/spec/lib/openehr/parser/missing_language_spec.rb +20 -0
  254. data/spec/lib/openehr/parser/missing_purpose_spec.rb +23 -0
  255. data/spec/lib/openehr/parser/mixed_node_types_spec.rb +16 -0
  256. data/spec/lib/openehr/parser/most_minimal_adl_spec.rb +19 -0
  257. data/spec/lib/openehr/parser/multi_language_spec.rb +58 -0
  258. data/spec/lib/openehr/parser/parser_spec_helper.rb +7 -0
  259. data/spec/lib/openehr/parser/path_based_terminology_binding_spec.rb +30 -0
  260. data/spec/lib/openehr/parser/special_string_spec.rb +20 -0
  261. data/spec/lib/openehr/parser/structure_comment_spec.rb +21 -0
  262. data/spec/lib/openehr/parser/structure_nested_comments_spec.rb +22 -0
  263. data/spec/lib/openehr/parser/structure_spec.rb +202 -0
  264. data/spec/lib/openehr/parser/term_binding_spec.rb +54 -0
  265. data/spec/lib/openehr/parser/unicode_bom_spec.rb +17 -0
  266. data/spec/lib/openehr/parser/unicode_support_spec.rb +46 -0
  267. data/spec/lib/openehr/rm/common/archetyped/archetyped_spec.rb +50 -0
  268. data/spec/lib/openehr/rm/common/archetyped/feeder_audit_details_spec.rb +60 -0
  269. data/spec/lib/openehr/rm/common/archetyped/feeder_audit_spec.rb +51 -0
  270. data/spec/lib/openehr/rm/common/archetyped/link_spec.rb +42 -0
  271. data/spec/lib/openehr/rm/common/archetyped/locatable_spec.rb +89 -0
  272. data/spec/lib/openehr/rm/common/archetyped/pathable_spec.rb +42 -0
  273. data/spec/lib/openehr/rm/common/change_control/contribution_spec.rb +56 -0
  274. data/spec/lib/openehr/rm/common/change_control/imported_version_spec.rb +62 -0
  275. data/spec/lib/openehr/rm/common/change_control/original_version_spec.rb +71 -0
  276. data/spec/lib/openehr/rm/common/change_control/version_spec.rb +91 -0
  277. data/spec/lib/openehr/rm/common/change_control/versioned_object_spec.rb +284 -0
  278. data/spec/lib/openehr/rm/common/directory/folder_spec.rb +26 -0
  279. data/spec/lib/openehr/rm/common/generic/attestation_spec.rb +62 -0
  280. data/spec/lib/openehr/rm/common/generic/audit_details_spec.rb +51 -0
  281. data/spec/lib/openehr/rm/common/generic/participation_spec.rb +36 -0
  282. data/spec/lib/openehr/rm/common/generic/party_identified_spec.rb +64 -0
  283. data/spec/lib/openehr/rm/common/generic/party_proxy_spec.rb +18 -0
  284. data/spec/lib/openehr/rm/common/generic/party_related_spec.rb +24 -0
  285. data/spec/lib/openehr/rm/common/generic/revision_history_item_spec.rb +43 -0
  286. data/spec/lib/openehr/rm/common/generic/revision_history_spec.rb +45 -0
  287. data/spec/lib/openehr/rm/common/resource/authored_resource_spec.rb +68 -0
  288. data/spec/lib/openehr/rm/common/resource/resource_description_item_spec.rb +105 -0
  289. data/spec/lib/openehr/rm/common/resource/resource_description_spec.rb +74 -0
  290. data/spec/lib/openehr/rm/common/resource/translation_details_spec.rb +35 -0
  291. data/spec/lib/openehr/rm/composition/composition_spec.rb +92 -0
  292. data/spec/lib/openehr/rm/composition/content/content_item_spec.rb +14 -0
  293. data/spec/lib/openehr/rm/composition/content/entry/action_spec.rb +69 -0
  294. data/spec/lib/openehr/rm/composition/content/entry/activity_spec.rb +61 -0
  295. data/spec/lib/openehr/rm/composition/content/entry/admin_entry_spec.rb +38 -0
  296. data/spec/lib/openehr/rm/composition/content/entry/care_entry_spec.rb +37 -0
  297. data/spec/lib/openehr/rm/composition/content/entry/entry_spec.rb +98 -0
  298. data/spec/lib/openehr/rm/composition/content/entry/evaluation_spec.rb +37 -0
  299. data/spec/lib/openehr/rm/composition/content/entry/instruction_details_spec.rb +51 -0
  300. data/spec/lib/openehr/rm/composition/content/entry/instruction_spec.rb +62 -0
  301. data/spec/lib/openehr/rm/composition/content/entry/ism_transition_spec.rb +46 -0
  302. data/spec/lib/openehr/rm/composition/content/entry/observation_spec.rb +45 -0
  303. data/spec/lib/openehr/rm/composition/content/navigation/section_spec.rb +32 -0
  304. data/spec/lib/openehr/rm/composition/event_context_spec.rb +88 -0
  305. data/spec/lib/openehr/rm/data_structures/data_structure_spec.rb +21 -0
  306. data/spec/lib/openehr/rm/data_structures/history/event_spec.rb +44 -0
  307. data/spec/lib/openehr/rm/data_structures/history/history_spec.rb +67 -0
  308. data/spec/lib/openehr/rm/data_structures/history/interval_event_spec.rb +43 -0
  309. data/spec/lib/openehr/rm/data_structures/item_structure/item_list_spec.rb +53 -0
  310. data/spec/lib/openehr/rm/data_structures/item_structure/item_single_spec.rb +29 -0
  311. data/spec/lib/openehr/rm/data_structures/item_structure/item_table_spec.rb +147 -0
  312. data/spec/lib/openehr/rm/data_structures/item_structure/item_tree_spec.rb +48 -0
  313. data/spec/lib/openehr/rm/data_structures/item_structure/representation/cluster_spec.rb +26 -0
  314. data/spec/lib/openehr/rm/data_structures/item_structure/representation/element_spec.rb +22 -0
  315. data/spec/lib/openehr/rm/data_types/basic/data_value_spec.rb +17 -0
  316. data/spec/lib/openehr/rm/data_types/basic/dv_boolean_spec.rb +29 -0
  317. data/spec/lib/openehr/rm/data_types/basic/dv_identifier_spec.rb +108 -0
  318. data/spec/lib/openehr/rm/data_types/basic/dv_state_spec.rb +44 -0
  319. data/spec/lib/openehr/rm/data_types/encapsulated/dv_encapsulated_spec.rb +42 -0
  320. data/spec/lib/openehr/rm/data_types/encapsulated/dv_multimedia_spec.rb +79 -0
  321. data/spec/lib/openehr/rm/data_types/encapsulated/dv_parsable_spec.rb +34 -0
  322. data/spec/lib/openehr/rm/data_types/quantity/date_time/dv_date_spec.rb +64 -0
  323. data/spec/lib/openehr/rm/data_types/quantity/date_time/dv_date_time_spec.rb +26 -0
  324. data/spec/lib/openehr/rm/data_types/quantity/date_time/dv_duration_spec.rb +44 -0
  325. data/spec/lib/openehr/rm/data_types/quantity/date_time/dv_temporal_spec.rb +25 -0
  326. data/spec/lib/openehr/rm/data_types/quantity/date_time/dv_time_spec.rb +41 -0
  327. data/spec/lib/openehr/rm/data_types/quantity/dv_absolute_quantity_spec.rb +35 -0
  328. data/spec/lib/openehr/rm/data_types/quantity/dv_amount_spec.rb +105 -0
  329. data/spec/lib/openehr/rm/data_types/quantity/dv_count_spec.rb +12 -0
  330. data/spec/lib/openehr/rm/data_types/quantity/dv_interval_spec.rb +17 -0
  331. data/spec/lib/openehr/rm/data_types/quantity/dv_ordered_spec.rb +60 -0
  332. data/spec/lib/openehr/rm/data_types/quantity/dv_ordinal_spec.rb +74 -0
  333. data/spec/lib/openehr/rm/data_types/quantity/dv_proportion_spec.rb +162 -0
  334. data/spec/lib/openehr/rm/data_types/quantity/dv_quantified_spec.rb +36 -0
  335. data/spec/lib/openehr/rm/data_types/quantity/dv_quantity_spec.rb +78 -0
  336. data/spec/lib/openehr/rm/data_types/quantity/proportion_kind_spec.rb +24 -0
  337. data/spec/lib/openehr/rm/data_types/quantity/reference_range_spec.rb +43 -0
  338. data/spec/lib/openehr/rm/data_types/text/code_phrase_spec.rb +23 -0
  339. data/spec/lib/openehr/rm/data_types/text/dv_paragraph_spec.rb +13 -0
  340. data/spec/lib/openehr/rm/data_types/text/dv_text_spec.rb +79 -0
  341. data/spec/lib/openehr/rm/data_types/text/term_mapping_spec.rb +59 -0
  342. data/spec/lib/openehr/rm/data_types/uri/dv_ehr_uri_spec.rb +21 -0
  343. data/spec/lib/openehr/rm/data_types/uri/dv_uri_spec.rb +36 -0
  344. data/spec/lib/openehr/rm/demographic/actor_spec.rb +79 -0
  345. data/spec/lib/openehr/rm/demographic/address_spec.rb +33 -0
  346. data/spec/lib/openehr/rm/demographic/capability_spec.rb +37 -0
  347. data/spec/lib/openehr/rm/demographic/contact_spec.rb +45 -0
  348. data/spec/lib/openehr/rm/demographic/party_identity_spec.rb +32 -0
  349. data/spec/lib/openehr/rm/demographic/party_relationship_spec.rb +84 -0
  350. data/spec/lib/openehr/rm/demographic/party_spec.rb +131 -0
  351. data/spec/lib/openehr/rm/demographic/role_spec.rb +58 -0
  352. data/spec/lib/openehr/rm/ehr/ehr_access_spec.rb +33 -0
  353. data/spec/lib/openehr/rm/ehr/ehr_spec.rb +139 -0
  354. data/spec/lib/openehr/rm/ehr/ehr_status_spec.rb +52 -0
  355. data/spec/lib/openehr/rm/ehr/versioned_composition_spec.rb +33 -0
  356. data/spec/lib/openehr/rm/integration/generic_entry_spec.rb +31 -0
  357. data/spec/lib/openehr/rm/support/identification/access_group_ref_spec.rb +19 -0
  358. data/spec/lib/openehr/rm/support/identification/archetype_id_spec.rb +152 -0
  359. data/spec/lib/openehr/rm/support/identification/generic_id_spec.rb +33 -0
  360. data/spec/lib/openehr/rm/support/identification/hier_object_id_spec.rb +12 -0
  361. data/spec/lib/openehr/rm/support/identification/internet_id_spec.rb +12 -0
  362. data/spec/lib/openehr/rm/support/identification/iso_oid_spec.rb +12 -0
  363. data/spec/lib/openehr/rm/support/identification/locatable_ref_spec.rb +34 -0
  364. data/spec/lib/openehr/rm/support/identification/object_id_spec.rb +24 -0
  365. data/spec/lib/openehr/rm/support/identification/object_ref_spec.rb +33 -0
  366. data/spec/lib/openehr/rm/support/identification/object_version_id_spec.rb +59 -0
  367. data/spec/lib/openehr/rm/support/identification/party_ref_spec.rb +29 -0
  368. data/spec/lib/openehr/rm/support/identification/template_id_spec.rb +12 -0
  369. data/spec/lib/openehr/rm/support/identification/terminology_id_spec.rb +33 -0
  370. data/spec/lib/openehr/rm/support/identification/uid_based_id_spec.rb +50 -0
  371. data/spec/lib/openehr/rm/support/identification/uid_spec.rb +29 -0
  372. data/spec/lib/openehr/rm/support/identification/version_tree_id_spec.rb +104 -0
  373. data/spec/lib/openehr/rm/support/measurement_service_spec.rb +7 -0
  374. data/spec/lib/openehr/rm/support/terminology_service_spec.rb +24 -0
  375. data/spec/lib/openehr/serializer/adl-test-entry.most_minimal.test.adl +20 -0
  376. data/spec/lib/openehr/serializer/adl_serializer_spec.rb +47 -0
  377. data/spec/lib/openehr/serializer/openEHR-EHR-SECTION.test.v1.adl +38 -0
  378. data/spec/lib/openehr/serializer/openEHR-EHR-SECTION.test.v1.xml +58 -0
  379. data/spec/lib/openehr/serializer/sample_archetype_spec.rb +44 -0
  380. data/spec/lib/openehr/serializer/xml_serializer_spec.rb +49 -0
  381. data/spec/lib/openehr/terminology/open_ehr_terminology_spec.rb +40 -0
  382. data/spec/spec.opts +6 -0
  383. data/spec/spec_helper.rb +58 -0
  384. metadata +631 -0
@@ -0,0 +1,48 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-CLUSTER.auscultation.v1
3
+
4
+ concept
5
+ [at0000] -- Auscultation
6
+ language
7
+ original_language = <[ISO_639-1::en]>
8
+
9
+ definition
10
+ CLUSTER[at0000] matches { -- Auscultation
11
+ items cardinality matches {0..*; unordered} matches {
12
+ CLUSTER[at0002] occurrences matches {0..1} matches { -- Findings
13
+ items cardinality matches {0..*; unordered} matches {
14
+ CLUSTER[at0009] occurrences matches {0..1} matches { -- Bowel sounds
15
+ items cardinality matches {0..*; unordered} matches {
16
+ ELEMENT[at0074] occurrences matches {0..*} matches { -- Specific Findings
17
+ value matches {
18
+ DV_CODED_TEXT matches {
19
+ defining_code matches {
20
+ [local::
21
+ at0078, -- Absent bowel sounds
22
+ at0079, -- Decreased bowel sounds
23
+ at0080, -- Increased bowel sounds
24
+ at0081] -- Tinkling bowel sounds
25
+ }
26
+ }
27
+ }
28
+ }
29
+ use_node ELEMENT /items[at0004] -- /items[Clinical Description]
30
+ }
31
+ }
32
+
33
+ }
34
+ }
35
+ }
36
+ }
37
+
38
+ ontology
39
+ term_definitions = <
40
+ ["en"] = <
41
+ items = <
42
+ ["at0000"] = <
43
+ text = <"Auscultation">
44
+ description = <"Findings on Auscultation">
45
+ >
46
+ >
47
+ >
48
+ >
@@ -0,0 +1,134 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-CLUSTER.dimensions-circumference.v1
3
+ specialize
4
+ openEHR-EHR-CLUSTER.dimensions.v1
5
+
6
+ concept
7
+ [at0000.1] -- Circumference
8
+ language
9
+ original_language = <[ISO_639-1::en]>
10
+ translations = <
11
+ ["de"] = <
12
+ language = <[ISO_639-1::de]>
13
+ author = <
14
+ ["name"] = <"Jasmin Buck, Sebastian Garde">
15
+ ["organisation"] = <"University of Heidelberg, Central Queensland University">
16
+ >
17
+ >
18
+ >
19
+ description
20
+ original_author = <
21
+ ["name"] = <"unknown">
22
+ >
23
+ details = <
24
+ ["de"] = <
25
+ language = <[ISO_639-1::de]>
26
+ purpose = <"Zur Beschreibung der Umfangs eines betrachteten K�rperteils.">
27
+ use = <"Zur Messung des Umfangs von K�rperteilen, wie Taille oder Kopfumfang">
28
+ keywords = <"Umfang", ...>
29
+ misuse = <"">
30
+ >
31
+ ["en"] = <
32
+ language = <[ISO_639-1::en]>
33
+ purpose = <"To describe the circumference of a body part examined">
34
+ use = <"For use when measuring the circumference of body parts such as waist, head circumference">
35
+ keywords = <"circumference", ...>
36
+ misuse = <"">
37
+ >
38
+ >
39
+ lifecycle_state = <"OrganisationDraft">
40
+ other_contributors = <>
41
+
42
+ definition
43
+ CLUSTER[at0000.1] matches { -- Circumference
44
+ items cardinality matches {0..*; unordered} matches {
45
+ ELEMENT[at0001] occurrences matches {0..1} matches { -- Circumference
46
+ value matches {
47
+ C_DV_QUANTITY <
48
+ property = <[openehr::122]>
49
+ list = <
50
+ ["1"] = <
51
+ units = <"cm">
52
+ >
53
+ >
54
+ >
55
+ }
56
+ }
57
+ }
58
+ }
59
+
60
+ ontology
61
+ term_definitions = <
62
+ ["de"] = <
63
+ items = <
64
+ ["at0000"] = <
65
+ description = <"Die Ausma�e eines betrachteten Teils">
66
+ text = <"Ausma�e">
67
+ >
68
+ ["at0000.1"] = <
69
+ description = <"Der Umfang des betrachteten K�rperteils">
70
+ text = <"Umfang">
71
+ >
72
+ ["at0001"] = <
73
+ description = <"Der Umfang des betrachteten Teils">
74
+ text = <"Umfang">
75
+ >
76
+ ["at0002"] = <
77
+ description = <"Die L�nge des betrachteten Teils (longidudinale K�rperachse)">
78
+ text = <"L�nge">
79
+ >
80
+ ["at0003"] = <
81
+ description = <"Die Breite oder Weite (transversale K�rperachse)">
82
+ text = <"Breite">
83
+ >
84
+ ["at0004"] = <
85
+ description = <"Die Tiefe des betrachteten Teils (dorsal-ventrale K�rperachse)">
86
+ text = <"Tiefe">
87
+ >
88
+ ["at0005"] = <
89
+ description = <"Die Fl�che des betrachteten Teils">
90
+ text = <"Fl�che">
91
+ >
92
+ ["at0006"] = <
93
+ description = <"Das Volumen des betrachteten Teils">
94
+ text = <"Volumen">
95
+ >
96
+ >
97
+ >
98
+ ["en"] = <
99
+ items = <
100
+ ["at0000"] = <
101
+ description = <"The physical dimensions of a part examined">
102
+ text = <"Dimensions">
103
+ >
104
+ ["at0000.1"] = <
105
+ description = <"The circumference of the body part examined">
106
+ text = <"Circumference">
107
+ >
108
+ ["at0001"] = <
109
+ description = <"The circumference of the part examined">
110
+ text = <"Circumference">
111
+ >
112
+ ["at0002"] = <
113
+ description = <"The length of the part examined (longitudinal anatomical axis)">
114
+ text = <"Length">
115
+ >
116
+ ["at0003"] = <
117
+ description = <"The width or breadth (transverse anatomical axis)">
118
+ text = <"Breadth">
119
+ >
120
+ ["at0004"] = <
121
+ description = <"The depth of the part examined (dorso-ventral anatomical axis)">
122
+ text = <"Depth">
123
+ >
124
+ ["at0005"] = <
125
+ description = <"The area of the part examined">
126
+ text = <"Area">
127
+ >
128
+ ["at0006"] = <
129
+ description = <"The volume of the part examined">
130
+ text = <"Volume">
131
+ >
132
+ >
133
+ >
134
+ >
@@ -0,0 +1,241 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-CLUSTER.dimensions.v1
3
+
4
+ concept
5
+ [at0000] -- Dimensions
6
+ language
7
+ original_language = <[ISO_639-1::en]>
8
+ translations = <
9
+ ["de"] = <
10
+ language = <[ISO_639-1::de]>
11
+ author = <
12
+ ["name"] = <"Jasmin Buck, Sebastian Garde">
13
+ ["organisation"] = <"University of Heidelberg, Central Queensland University">
14
+ >
15
+ >
16
+ >
17
+ description
18
+ original_author = <
19
+ ["name"] = <"unknown">
20
+ >
21
+ details = <
22
+ ["de"] = <
23
+ language = <[ISO_639-1::de]>
24
+ purpose = <"Zur Beschreibung der Ausma�e eines betrachteten Teils.">
25
+ use = <"">
26
+ keywords = <"Gr��e", "Volumen">
27
+ misuse = <"">
28
+ >
29
+ ["en"] = <
30
+ language = <[ISO_639-1::en]>
31
+ purpose = <"To describe the dimensions of a part examined or viewed">
32
+ use = <"">
33
+ keywords = <"size", "volume">
34
+ misuse = <"">
35
+ >
36
+ >
37
+ lifecycle_state = <"Initial">
38
+ other_contributors = <>
39
+
40
+ definition
41
+ CLUSTER[at0000] matches { -- Dimensions
42
+ items cardinality matches {0..*; unordered} matches {
43
+ ELEMENT[at0001] occurrences matches {0..1} matches { -- Circumference
44
+ value matches {
45
+ C_DV_QUANTITY <
46
+ property = <[openehr::122]>
47
+ list = <
48
+ ["1"] = <
49
+ units = <"�m">
50
+ >
51
+ ["2"] = <
52
+ units = <"mm">
53
+ >
54
+ ["3"] = <
55
+ units = <"cm">
56
+ >
57
+ ["4"] = <
58
+ units = <"m">
59
+ >
60
+ >
61
+ >
62
+ }
63
+ }
64
+ ELEMENT[at0002] occurrences matches {0..1} matches { -- Length
65
+ value matches {
66
+ C_DV_QUANTITY <
67
+ property = <[openehr::122]>
68
+ list = <
69
+ ["1"] = <
70
+ units = <"�m">
71
+ >
72
+ ["2"] = <
73
+ units = <"mm">
74
+ >
75
+ ["3"] = <
76
+ units = <"cm">
77
+ >
78
+ ["4"] = <
79
+ units = <"m">
80
+ >
81
+ >
82
+ >
83
+ }
84
+ }
85
+ ELEMENT[at0003] occurrences matches {0..1} matches { -- Breadth
86
+ value matches {
87
+ C_DV_QUANTITY <
88
+ property = <[openehr::122]>
89
+ list = <
90
+ ["1"] = <
91
+ units = <"�m">
92
+ >
93
+ ["2"] = <
94
+ units = <"mm">
95
+ >
96
+ ["3"] = <
97
+ units = <"cm">
98
+ >
99
+ ["4"] = <
100
+ units = <"m">
101
+ >
102
+ >
103
+ >
104
+ }
105
+ }
106
+ ELEMENT[at0004] occurrences matches {0..1} matches { -- Depth
107
+ value matches {
108
+ C_DV_QUANTITY <
109
+ property = <[openehr::122]>
110
+ list = <
111
+ ["1"] = <
112
+ units = <"�m">
113
+ >
114
+ ["2"] = <
115
+ units = <"mm">
116
+ >
117
+ ["3"] = <
118
+ units = <"cm">
119
+ >
120
+ ["4"] = <
121
+ units = <"m">
122
+ >
123
+ >
124
+ >
125
+ }
126
+ }
127
+ ELEMENT[at0005] occurrences matches {0..1} matches { -- Area
128
+ value matches {
129
+ C_DV_QUANTITY <
130
+ property = <[openehr::335]>
131
+ list = <
132
+ ["1"] = <
133
+ units = <"mm2">
134
+ >
135
+ ["2"] = <
136
+ units = <"cm2">
137
+ >
138
+ ["3"] = <
139
+ units = <"% body">
140
+ >
141
+ ["4"] = <
142
+ units = <"% head, neck">
143
+ >
144
+ ["5"] = <
145
+ units = <"% lower limb">
146
+ >
147
+ ["6"] = <
148
+ units = <"% trunk">
149
+ >
150
+ ["7"] = <
151
+ units = <"% upper limb">
152
+ >
153
+ >
154
+ >
155
+ }
156
+ }
157
+ ELEMENT[at0006] occurrences matches {0..1} matches { -- Volume
158
+ value matches {
159
+ C_DV_QUANTITY <
160
+ property = <[openehr::129]>
161
+ list = <
162
+ ["1"] = <
163
+ units = <"mm3">
164
+ >
165
+ ["2"] = <
166
+ units = <"ml">
167
+ >
168
+ >
169
+ >
170
+ }
171
+ }
172
+ }
173
+ }
174
+
175
+ ontology
176
+ term_definitions = <
177
+ ["de"] = <
178
+ items = <
179
+ ["at0000"] = <
180
+ description = <"Die Ausma�e eines betrachteten Teils">
181
+ text = <"Ausma�e">
182
+ >
183
+ ["at0001"] = <
184
+ description = <"Der Umfang des betrachteten Teils">
185
+ text = <"Umfang">
186
+ >
187
+ ["at0002"] = <
188
+ description = <"Die L�nge des betrachteten Teils (longidudinale K�rperachse)">
189
+ text = <"L�nge">
190
+ >
191
+ ["at0003"] = <
192
+ description = <"Die Breite oder Weite (transversale K�rperachse)">
193
+ text = <"Breite">
194
+ >
195
+ ["at0004"] = <
196
+ description = <"Die Tiefe des betrachteten Teils (dorsal-ventrale K�rperachse)">
197
+ text = <"Tiefe">
198
+ >
199
+ ["at0005"] = <
200
+ description = <"Die Fl�che des betrachteten Teils">
201
+ text = <"Fl�che">
202
+ >
203
+ ["at0006"] = <
204
+ description = <"Das Volumen des betrachteten Teils">
205
+ text = <"Volumen">
206
+ >
207
+ >
208
+ >
209
+ ["en"] = <
210
+ items = <
211
+ ["at0000"] = <
212
+ description = <"The physical dimensions of a part examined">
213
+ text = <"Dimensions">
214
+ >
215
+ ["at0001"] = <
216
+ description = <"The circumference of the part examined">
217
+ text = <"Circumference">
218
+ >
219
+ ["at0002"] = <
220
+ description = <"The length of the part examined (longitudinal anatomical axis)">
221
+ text = <"Length">
222
+ >
223
+ ["at0003"] = <
224
+ description = <"The width or breadth (transverse anatomical axis)">
225
+ text = <"Breadth">
226
+ >
227
+ ["at0004"] = <
228
+ description = <"The depth of the part examined (dorso-ventral anatomical axis)">
229
+ text = <"Depth">
230
+ >
231
+ ["at0005"] = <
232
+ description = <"The area of the part examined">
233
+ text = <"Area">
234
+ >
235
+ ["at0006"] = <
236
+ description = <"The volume of the part examined">
237
+ text = <"Volume">
238
+ >
239
+ >
240
+ >
241
+ >
@@ -0,0 +1,321 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-CLUSTER.exam-abdomen.v1
3
+ specialize
4
+ openEHR-EHR-CLUSTER.exam.v1
5
+
6
+ concept
7
+ [at0000.1] -- Examination of the abdomen
8
+ language
9
+ original_language = <[ISO_639-1::en]>
10
+ description
11
+ original_author = <
12
+ ["name"] = <"Heather Leslie">
13
+ ["organisation"] = <"Ocean Informatics">
14
+ ["date"] = <"11/04/2007">
15
+ ["email"] = <"heather.leslie@oceaninformatics.biz">
16
+ >
17
+ details = <
18
+ ["en"] = <
19
+ language = <[ISO_639-1::en]>
20
+ purpose = <"A cluster for recording findings on physical examination of the abdomen">
21
+ use = <"">
22
+ keywords = <"examination", "physical">
23
+ misuse = <"">
24
+ >
25
+ >
26
+ lifecycle_state = <"Initial">
27
+ other_contributors = <>
28
+
29
+ definition
30
+ CLUSTER[at0000.1] matches { -- Examination of the abdomen
31
+ items cardinality matches {0..*; unordered} matches {
32
+ CLUSTER[at0004] occurrences matches {0..1} matches { -- Normal statements
33
+ items cardinality matches {0..*; unordered} matches {
34
+ ELEMENT[at0005] occurrences matches {0..*} matches { -- Normal statement
35
+ value matches {
36
+ DV_TEXT matches {*}
37
+ }
38
+ }
39
+ }
40
+ }
41
+ ELEMENT[at0002] occurrences matches {0..1} matches { -- Clinical description
42
+ value matches {
43
+ DV_TEXT matches {*}
44
+ }
45
+ }
46
+ CLUSTER[at0008] occurrences matches {0..1} matches { -- Findings
47
+ items cardinality matches {0..*; unordered} matches {
48
+ CLUSTER[at0.2] occurrences matches {0..1} matches { -- Abdominal wall
49
+ items cardinality matches {0..*; unordered} matches {
50
+ ELEMENT[at0.3] occurrences matches {0..1} matches { -- Description
51
+ value matches {
52
+ DV_CODED_TEXT matches {
53
+ defining_code matches {[local::]}
54
+ }
55
+ }
56
+ }
57
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
58
+ include
59
+ archetype_id/value matches {/inspection\.v1draft/}
60
+ archetype_id/value matches {/exam-generic-mass\.v1/}
61
+ archetype_id/value matches {/palpation\.v1/}
62
+ archetype_id/value matches {/inspection-skin\.v1draft/}
63
+ archetype_id/value matches {/exam-generic-lymphnode\.v1/}
64
+ }
65
+ }
66
+ }
67
+ CLUSTER[at0.9] occurrences matches {0..1} matches { -- Abdominal Region
68
+ items cardinality matches {0..*; unordered} matches {
69
+ ELEMENT[at0.10] occurrences matches {0..1} matches { -- Region
70
+ value matches {
71
+ DV_CODED_TEXT matches {
72
+ defining_code matches {
73
+ [local::
74
+ at0.11, -- Left upper quadrant
75
+ at0.12, -- Epigastrium
76
+ at0.16, -- Left upper quadrant
77
+ at0.17, -- Right loin
78
+ at0.18, -- Central/peri-umbilical
79
+ at0.19, -- Left loin
80
+ at0.20, -- Right iliac fossa
81
+ at0.21] -- Left iliac fossa
82
+ }
83
+ }
84
+ }
85
+ }
86
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
87
+ include
88
+ archetype_id/value matches {/palpation\.v1/}
89
+ archetype_id/value matches {/percussion\.v1/}
90
+ }
91
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
92
+ }
93
+ }
94
+ CLUSTER[at0.5] occurrences matches {0..1} matches { -- Abdomen Contents
95
+ items cardinality matches {0..*; unordered} matches {
96
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
97
+ include
98
+ archetype_id/value matches {/exam-generic-mass\.v1/}
99
+ archetype_id/value matches {/exam-generic-lympnode\.v1/}
100
+ archetype_id/value matches {/exam-generic\.v1/}
101
+ archetype_id/value matches {/exam\.v1/}
102
+ archetype_id/value matches {/auscultation\.v1/}
103
+ }
104
+ CLUSTER[at0.13] occurrences matches {0..1} matches { -- Organs
105
+ items cardinality matches {0..*; unordered} matches {
106
+ CLUSTER[at0.14] occurrences matches {0..1} matches { -- Liver
107
+ items cardinality matches {0..*; unordered} matches {
108
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
109
+ include
110
+ archetype_id/value matches {/palpation\.v1/}
111
+ archetype_id/value matches {/percussion\.v1/}
112
+ archetype_id/value matches {/dimensions\.v1/}
113
+ archetype_id/value matches {/relative_position_abdomen\.v1draft/}
114
+ archetype_id/value matches {/size\.v1/}
115
+ archetype_id/value matches {/exam-generic-mass\.v1/}
116
+ }
117
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
118
+ }
119
+ }
120
+ CLUSTER[at0.7] occurrences matches {0..1} matches { -- Spleen
121
+ items cardinality matches {0..*; unordered} matches {
122
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
123
+ include
124
+ archetype_id/value matches {/dimensions\.v1/}
125
+ archetype_id/value matches {/exam-generic-mass\.v1/}
126
+ archetype_id/value matches {/exam-generic\.v1/}
127
+ archetype_id/value matches {/exam\.v1/}
128
+ archetype_id/value matches {/palpation\.v1/}
129
+ archetype_id/value matches {/percussion\.v1/}
130
+ archetype_id/value matches {/relative_position_abdomen\.v1draft/}
131
+ archetype_id/value matches {/size\.v1/}
132
+ }
133
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
134
+ }
135
+ }
136
+ CLUSTER[at0.8] occurrences matches {0..1} matches { -- Kidney
137
+ items cardinality matches {0..*; unordered} matches {
138
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
139
+ include
140
+ archetype_id/value matches {/dimensions\.v1/}
141
+ archetype_id/value matches {/exam-generic-mass\.v1/}
142
+ archetype_id/value matches {/exam-generic\.v1/}
143
+ archetype_id/value matches {/exam\.v1/}
144
+ archetype_id/value matches {/palpation\.v1/}
145
+ archetype_id/value matches {/percussion\.v1/}
146
+ archetype_id/value matches {/relative_position_abdomen\.v1draft/}
147
+ }
148
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
149
+ }
150
+ }
151
+ CLUSTER[at0.15] occurrences matches {0..1} matches { -- Bowel
152
+ items cardinality matches {0..*; unordered} matches {
153
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
154
+ include
155
+ archetype_id/value matches {/palpation\.v1/}
156
+ archetype_id/value matches {/exam-generic-mass\.v1/}
157
+ archetype_id/value matches {/exam-generic\.v1/}
158
+ archetype_id/value matches {/exam\.v1/}
159
+ archetype_id/value matches {/percussion\.v1/}
160
+ archetype_id/value matches {/relative_position_abdomen\.v1draft/}
161
+ }
162
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
163
+ }
164
+ }
165
+ }
166
+ }
167
+ use_node ELEMENT /items[at0008]/items[at0.2]/items[at0.3]
168
+ }
169
+ }
170
+ CLUSTER[at0003] occurrences matches {0..1} matches { -- Detail
171
+ items cardinality matches {0..*; unordered} matches {
172
+ allow_archetype CLUSTER occurrences matches {0..1} matches {
173
+ include
174
+ archetype_id/value matches {/exam-generic\.v1/}
175
+ }
176
+ }
177
+ }
178
+ }
179
+ }
180
+ ELEMENT[at0006] occurrences matches {0..*} matches { -- Image
181
+ value matches {
182
+ DV_MULTIMEDIA matches {
183
+ media_type matches {
184
+ [openEHR::
185
+ 426,
186
+ 427,
187
+ 429]
188
+ }
189
+ }
190
+ }
191
+ }
192
+ }
193
+ }
194
+
195
+ ontology
196
+ term_definitions = <
197
+ ["en"] = <
198
+ items = <
199
+ ["at0.10"] = <
200
+ description = <"*">
201
+ text = <"Region">
202
+ >
203
+ ["at0.11"] = <
204
+ description = <"*">
205
+ text = <"Left upper quadrant">
206
+ >
207
+ ["at0.12"] = <
208
+ description = <"*">
209
+ text = <"Epigastrium">
210
+ >
211
+ ["at0.13"] = <
212
+ description = <"*">
213
+ text = <"Organs">
214
+ >
215
+ ["at0.14"] = <
216
+ description = <"*">
217
+ text = <"Liver">
218
+ >
219
+ ["at0.15"] = <
220
+ description = <"*">
221
+ text = <"Bowel">
222
+ >
223
+ ["at0.16"] = <
224
+ description = <"*">
225
+ text = <"Left upper quadrant">
226
+ >
227
+ ["at0.17"] = <
228
+ description = <"*">
229
+ text = <"Right loin">
230
+ >
231
+ ["at0.18"] = <
232
+ description = <"*">
233
+ text = <"Central/peri-umbilical">
234
+ >
235
+ ["at0.19"] = <
236
+ description = <"*">
237
+ text = <"Left loin">
238
+ >
239
+ ["at0.2"] = <
240
+ description = <"*">
241
+ text = <"Abdominal wall">
242
+ >
243
+ ["at0.20"] = <
244
+ description = <"*">
245
+ text = <"Right iliac fossa">
246
+ >
247
+ ["at0.21"] = <
248
+ description = <"*">
249
+ text = <"Left iliac fossa">
250
+ >
251
+ ["at0.22"] = <
252
+ description = <"*">
253
+ text = <"New element">
254
+ >
255
+ ["at0.23"] = <
256
+ description = <"Clinical description of finding">
257
+ text = <"Description">
258
+ >
259
+ ["at0.3"] = <
260
+ description = <"Clincial description of findings">
261
+ text = <"Description">
262
+ >
263
+ ["at0.4"] = <
264
+ description = <"Shape of abdomen">
265
+ text = <"Shape">
266
+ >
267
+ ["at0.5"] = <
268
+ description = <"*">
269
+ text = <"Abdomen Contents">
270
+ >
271
+ ["at0.6"] = <
272
+ description = <"Clinical description">
273
+ text = <"Description">
274
+ >
275
+ ["at0.7"] = <
276
+ description = <"*">
277
+ text = <"Spleen">
278
+ >
279
+ ["at0.8"] = <
280
+ description = <"*">
281
+ text = <"Kidney">
282
+ >
283
+ ["at0.9"] = <
284
+ description = <"*">
285
+ text = <"Abdominal Region">
286
+ >
287
+ ["at0000"] = <
288
+ description = <"Basic examination cluster for describing findings on physical examination when there is no named focus of examination">
289
+ text = <"Examination">
290
+ >
291
+ ["at0000.1"] = <
292
+ description = <"For recording findings on physical examination of the abdomen">
293
+ text = <"Examination of the abdomen">
294
+ >
295
+ ["at0002"] = <
296
+ description = <"Textural description of the part examined">
297
+ text = <"Clinical description">
298
+ >
299
+ ["at0003"] = <
300
+ description = <"More focused examination findings">
301
+ text = <"Detail">
302
+ >
303
+ ["at0004"] = <
304
+ description = <"A group of statements about the normality of the examination">
305
+ text = <"Normal statements">
306
+ >
307
+ ["at0005"] = <
308
+ description = <"A specific statement of normality">
309
+ text = <"Normal statement">
310
+ >
311
+ ["at0006"] = <
312
+ description = <"Drawing or image of the area examined">
313
+ text = <"Image">
314
+ >
315
+ ["at0008"] = <
316
+ description = <"Clinical findings">
317
+ text = <"Findings">
318
+ >
319
+ >
320
+ >
321
+ >