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,85 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-EVALUATION.columna_vertebral.v1
3
+
4
+ concept
5
+ [at0000] -- Columna vertebral
6
+ language
7
+ original_language = <[ISO_639-1::es]>
8
+ description
9
+ original_author = <
10
+ ["name"] = <"">
11
+ >
12
+ details = <
13
+ ["es"] = <
14
+ language = <[ISO_639-1::es]>
15
+ purpose = <"Evaluacion de columna vertebral">
16
+ use = <"Evaluacion de columna vertebral">
17
+ misuse = <"">
18
+ >
19
+ >
20
+ lifecycle_state = <"0">
21
+ other_contributors = <>
22
+ other_details = <
23
+ ["references"] = <"">
24
+ ["MD5-CAM-1.0.1"] = <"0CD148BEA5220C93A938A3038D526998">
25
+ >
26
+
27
+ definition
28
+ EVALUATION[at0000] matches { -- Columna vertebral
29
+ data matches {
30
+ ITEM_LIST[at0001] matches { -- Lista
31
+ items cardinality matches {0..*; unordered} matches {
32
+ ELEMENT[at0002] occurrences matches {0..1} matches { -- Exploracion clinica cervical anormal
33
+ value matches {
34
+ DV_BOOLEAN matches {
35
+ value matches {True, False; True}
36
+ }
37
+ }
38
+ }
39
+ ELEMENT[at0003] occurrences matches {0..1} matches { -- Indicacion de collar cervical
40
+ value matches {
41
+ DV_CODED_TEXT matches {
42
+ defining_code matches {
43
+ [local::
44
+ at0004, -- Si
45
+ at0005] -- No
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ }
53
+ }
54
+
55
+ ontology
56
+ term_definitions = <
57
+ ["es"] = <
58
+ items = <
59
+ ["at0000"] = <
60
+ text = <"Columna vertebral">
61
+ description = <"Columna vertebral">
62
+ >
63
+ ["at0001"] = <
64
+ text = <"Lista">
65
+ description = <"@ internal @">
66
+ >
67
+ ["at0002"] = <
68
+ text = <"Exploracion clinica cervical anormal">
69
+ description = <"Exploracion clinica cervical anormal">
70
+ >
71
+ ["at0003"] = <
72
+ text = <"Indicacion de collar cervical">
73
+ description = <"Indicacion de collar cervical">
74
+ >
75
+ ["at0004"] = <
76
+ text = <"Si">
77
+ description = <"hay indicacion de collar cervical">
78
+ >
79
+ ["at0005"] = <
80
+ text = <"No">
81
+ description = <"no hay indicacion de collar cervical">
82
+ >
83
+ >
84
+ >
85
+ >
@@ -0,0 +1,88 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-INSTRUCTION.medication.v1
3
+
4
+ concept
5
+ [at0000] -- Medication order
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"] = <"Sam Heard">
20
+ ["organisation"] = <"Ocean Informatics">
21
+ ["date"] = <"21/04/2006">
22
+ ["email"] = <"sam.heard@oceaninformatics.biz">
23
+ >
24
+ details = <
25
+ ["de"] = <
26
+ language = <[ISO_639-1::de]>
27
+ purpose = <"Zur Dokumentation einer Medikationsverordnung, kann mehr als eine Aktivit�t enthalten, aber immer mit der selben Struktur">
28
+ use = <"Zur Dokumentation von Anweisungen bez�glich eines Medikaments">
29
+ keywords = <"Verschreibung", "Medikationsverordnung", "Verordnung">
30
+ misuse = <"Nicht zur Dokumentation der Verabreichung, der Gabe usw. benutzen. F�r diese Dokumentation openEHR-EHR-ACTION.medication benutzen.">
31
+ >
32
+ ["en"] = <
33
+ language = <[ISO_639-1::en]>
34
+ purpose = <"For recording a medication order, which may involve more than one activity, but all have the same structure.">
35
+ use = <"For recording an instruction about medication.">
36
+ keywords = <"prescribe", "medication order", "order">
37
+ misuse = <"Do not use for recording administration, dispensing etc. Use openEHR-EHR-ACTION.medication for these recordings.">
38
+ >
39
+ >
40
+ lifecycle_state = <"AuthorDraft">
41
+ other_contributors = <"NEHTA (Australia) data groups", ...>
42
+
43
+ definition
44
+ INSTRUCTION[at0000] matches { -- Medication order
45
+ activities cardinality matches {0..*; unordered} matches {
46
+ ACTIVITY[at0001] occurrences matches {0..*} matches { -- Medication activity
47
+ action_archetype_id matches {/medication\.v1/}
48
+ description matches {
49
+ allow_archetype ITEM_TREE occurrences matches {0..1} matches {
50
+ include
51
+ archetype_id/value matches {/medication\.v1/}
52
+ archetype_id/value matches {/medication-formulation\.v1/}
53
+ archetype_id/value matches {/medication-vaccine\.v1/}
54
+ exclude
55
+ archetype_id/value matches {/.*/}
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }
61
+
62
+ ontology
63
+ term_definitions = <
64
+ ["de"] = <
65
+ items = <
66
+ ["at0000"] = <
67
+ description = <"Eine von einem Klinikarzt verfasste Verordnung oder Anweisung, die beschreibt welches Medikament wann, f�r wie lange usw. eingenommen werden soll">
68
+ text = <"Medikationsverordnung">
69
+ >
70
+ ["at0001"] = <
71
+ description = <"Informationen �ber die auszuf�hrende Medikationshandlung">
72
+ text = <"Medikationshandlung">
73
+ >
74
+ >
75
+ >
76
+ ["en"] = <
77
+ items = <
78
+ ["at0000"] = <
79
+ description = <"An order or instruction created by a clinician which specifies which medication to take, when, for how long etc.">
80
+ text = <"Medication order">
81
+ >
82
+ ["at0001"] = <
83
+ description = <"Information about the medication action(s) to be carried out">
84
+ text = <"Medication activity">
85
+ >
86
+ >
87
+ >
88
+ >
@@ -0,0 +1,84 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-INSTRUCTION.referral.v1
3
+
4
+ concept
5
+ [at0000] -- Referral to second provider
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"] = <"Sam Heard">
20
+ ["email"] = <"sam.heard@oceaninformatics.biz">
21
+ >
22
+ details = <
23
+ ["de"] = <
24
+ language = <[ISO_639-1::de]>
25
+ purpose = <"Zur Dokumentation einer Bitte nach Behandlung (�berweisung) durch einen zweiten Gesundheitsdienstleister.">
26
+ use = <"">
27
+ keywords = <"�berweisung", "Anfrage", "Anordnung">
28
+ misuse = <"">
29
+ >
30
+ ["en"] = <
31
+ language = <[ISO_639-1::en]>
32
+ purpose = <"For recording a request for care (referral to) a second health provider">
33
+ use = <"">
34
+ keywords = <"refer", "request", "order">
35
+ misuse = <"">
36
+ >
37
+ >
38
+ lifecycle_state = <"AuthorDraft">
39
+ other_contributors = <>
40
+
41
+ definition
42
+ INSTRUCTION[at0000] matches { -- Referral to second provider
43
+ activities cardinality matches {0..*; unordered} matches {
44
+ ACTIVITY[at0001] occurrences matches {0..1} matches { -- Refer
45
+ action_archetype_id matches {/referral\.v1/}
46
+ description matches {
47
+ allow_archetype ITEM_TREE occurrences matches {0..1} matches {
48
+ include
49
+ archetype_id/value matches {/referral\.v1/}
50
+ exclude
51
+ archetype_id/value matches {/.*/}
52
+ }
53
+ }
54
+ }
55
+ }
56
+ }
57
+
58
+ ontology
59
+ term_definitions = <
60
+ ["de"] = <
61
+ items = <
62
+ ["at0000"] = <
63
+ description = <"Eine Bitte nach Gesundheitsdienstleistung von einem Anbieter zu einem zweiten.">
64
+ text = <"�berweisung zu einem zweiten Gesundheitsdienstleister">
65
+ >
66
+ ["at0001"] = <
67
+ description = <"Die Handlung der �berweisung zu einem zweiten Gesundheitsdienstleister">
68
+ text = <"�berweisung">
69
+ >
70
+ >
71
+ >
72
+ ["en"] = <
73
+ items = <
74
+ ["at0000"] = <
75
+ description = <"A request for health care from one provider to a second provider">
76
+ text = <"Referral to second provider">
77
+ >
78
+ ["at0001"] = <
79
+ description = <"The activity of referring to a second health provider">
80
+ text = <"Refer">
81
+ >
82
+ >
83
+ >
84
+ >
@@ -0,0 +1,492 @@
1
+ archetype (adl_version=1.4)
2
+ openEHR-EHR-ITEM_TREE.laboratory_request.v1
3
+
4
+ concept
5
+ [at0000] -- Laboratory test request
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 = <"Laboranforderung">
25
+ use = <"*">
26
+ misuse = <"*">
27
+ >
28
+ ["en"] = <
29
+ language = <[ISO_639-1::en]>
30
+ purpose = <"Laboratory request">
31
+ use = <"">
32
+ misuse = <"">
33
+ >
34
+ >
35
+ lifecycle_state = <"Initial">
36
+ other_contributors = <>
37
+
38
+ definition
39
+ ITEM_TREE[at0000] occurrences matches {0..*} matches { -- Laboratory test request
40
+ items cardinality matches {0..*; unordered} matches {
41
+ CLUSTER[at0002] occurrences matches {0..1} matches { -- Clinical information
42
+ items cardinality matches {0..*; unordered} matches {
43
+ ELEMENT[at0003] occurrences matches {0..1} matches { -- Findings
44
+ value matches {
45
+ DV_CODED_TEXT matches {
46
+ defining_code matches {[local::]}
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ CLUSTER[at0004] occurrences matches {0..1} matches { -- Tests required
53
+ items cardinality matches {0..*; unordered} matches {
54
+ ELEMENT[at0005] occurrences matches {0..*} matches { -- Test name
55
+ value matches {
56
+ DV_CODED_TEXT matches {
57
+ defining_code matches {[local::]}
58
+ }
59
+ }
60
+ }
61
+ }
62
+ }
63
+ ELEMENT[at0006] occurrences matches {0..1} matches { -- DateTime requested
64
+ value matches {
65
+ DV_DATE_TIME matches {
66
+ value matches {yyyy-??-??T??:??:??}
67
+ }
68
+ }
69
+ }
70
+ ELEMENT[at0007] occurrences matches {0..1} matches { -- Special instructions
71
+ value matches {
72
+ DV_CODED_TEXT matches {
73
+ defining_code matches {[local::]}
74
+ }
75
+ }
76
+ }
77
+ CLUSTER[at0008] occurrences matches {0..1} matches { -- Requesting provider details
78
+ items cardinality matches {0..*; unordered} matches {
79
+ ELEMENT[at0009] occurrences matches {0..1} matches { -- Name
80
+ value matches {
81
+ DV_CODED_TEXT matches {
82
+ defining_code matches {[local::]}
83
+ }
84
+ }
85
+ }
86
+ CLUSTER[at0010] occurrences matches {0..1} matches { -- Contact details
87
+ items cardinality matches {0..*; unordered} matches {
88
+ ELEMENT[at0011] occurrences matches {0..1} matches { -- Telephone
89
+ value matches {
90
+ DV_CODED_TEXT matches {
91
+ defining_code matches {[local::]}
92
+ }
93
+ }
94
+ }
95
+ ELEMENT[at0012] occurrences matches {0..1} matches { -- Email
96
+ value matches {
97
+ DV_CODED_TEXT matches {
98
+ defining_code matches {[local::]}
99
+ }
100
+ }
101
+ }
102
+ ELEMENT[at0013] occurrences matches {0..1} matches { -- Facsimile
103
+ value matches {
104
+ DV_CODED_TEXT matches {
105
+ defining_code matches {[local::]}
106
+ }
107
+ }
108
+ }
109
+ ELEMENT[at0014] occurrences matches {0..1} matches { -- Address
110
+ value matches {
111
+ DV_CODED_TEXT matches {
112
+ defining_code matches {[local::]}
113
+ }
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
120
+ CLUSTER[at0015] occurrences matches {0..1} matches { -- Laboratory details
121
+ items cardinality matches {0..*; unordered} matches {
122
+ ELEMENT[at0016] occurrences matches {0..1} matches { -- Name
123
+ value matches {
124
+ DV_CODED_TEXT matches {
125
+ defining_code matches {[local::]}
126
+ }
127
+ }
128
+ }
129
+ CLUSTER[at0017] occurrences matches {0..1} matches { -- Contact details
130
+ items cardinality matches {0..*; unordered} matches {
131
+ ELEMENT[at0018] occurrences matches {0..1} matches { -- Telephone
132
+ value matches {
133
+ DV_CODED_TEXT matches {
134
+ defining_code matches {[local::]}
135
+ }
136
+ }
137
+ }
138
+ ELEMENT[at0019] occurrences matches {0..1} matches { -- Email
139
+ value matches {
140
+ DV_CODED_TEXT matches {
141
+ defining_code matches {[local::]}
142
+ }
143
+ }
144
+ }
145
+ ELEMENT[at0020] occurrences matches {0..1} matches { -- Facsimile
146
+ value matches {
147
+ DV_CODED_TEXT matches {
148
+ defining_code matches {[local::]}
149
+ }
150
+ }
151
+ }
152
+ ELEMENT[at0021] occurrences matches {0..1} matches { -- Address
153
+ value matches {
154
+ DV_CODED_TEXT matches {
155
+ defining_code matches {[local::]}
156
+ }
157
+ }
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ CLUSTER[at0022] occurrences matches {0..1} matches { -- Process
164
+ items cardinality matches {0..*; unordered} matches {
165
+ CLUSTER[at0024] occurrences matches {0..1} matches { -- Urgency
166
+ items cardinality matches {0..*; unordered} matches {
167
+ ELEMENT[at0025] occurrences matches {0..1} matches { -- Timing
168
+ value matches {
169
+ 0|[local::at0026], -- Emergency
170
+ 1|[local::at0027], -- Urgent
171
+ 2|[local::at0028] -- Non-urgent
172
+ }
173
+ }
174
+ }
175
+ }
176
+ CLUSTER[at0029] occurrences matches {0..1} matches { -- Specimen details
177
+ items cardinality matches {0..*; unordered} matches {
178
+ ELEMENT[at0030] occurrences matches {0..1} matches { -- Descriptions
179
+ value matches {
180
+ DV_CODED_TEXT matches {
181
+ defining_code matches {[local::]}
182
+ }
183
+ }
184
+ }
185
+ ELEMENT[at0031] occurrences matches {0..1} matches { -- Body site
186
+ value matches {
187
+ DV_CODED_TEXT matches {
188
+ defining_code matches {[local::]}
189
+ }
190
+ }
191
+ }
192
+ ELEMENT[at0032] occurrences matches {0..1} matches { -- Collection DateTime
193
+ value matches {
194
+ DV_DATE_TIME matches {
195
+ value matches {yyyy-??-??T??:??:??}
196
+ }
197
+ }
198
+ }
199
+ ELEMENT[at0033] occurrences matches {0..1} matches { -- Collector name
200
+ value matches {
201
+ DV_CODED_TEXT matches {
202
+ defining_code matches {[local::]}
203
+ }
204
+ }
205
+ }
206
+ ELEMENT[at0034] occurrences matches {0..1} matches { -- Tubes collected
207
+ value matches {
208
+ DV_COUNT matches {*}
209
+ }
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
215
+ }
216
+ }
217
+
218
+ ontology
219
+ term_definitions = <
220
+ ["de"] = <
221
+ items = <
222
+ ["at0000"] = <
223
+ description = <"Angeforderte Daten eines Labortests als Teil einer Anweisung">
224
+ text = <"Labortest Anforderung">
225
+ >
226
+ ["at0002"] = <
227
+ description = <"F�r die Laboranfrage relevante klinische Informationen">
228
+ text = <"Klinische Informationen">
229
+ >
230
+ ["at0003"] = <
231
+ description = <"F�r die Laboranfrage relevante klinische Befunde">
232
+ text = <"Befunde">
233
+ >
234
+ ["at0004"] = <
235
+ description = <"Die angeforderten Test bei dieser Laboranfrage">
236
+ text = <"Angeforderte Tests">
237
+ >
238
+ ["at0005"] = <
239
+ description = <"Testname">
240
+ text = <"Testname">
241
+ >
242
+ ["at0006"] = <
243
+ description = <"Datum und Zeitpunkt, wann der Labortest in Auftrag gegeben wurde">
244
+ text = <"Zeitpunkt des Auftrags">
245
+ >
246
+ ["at0007"] = <
247
+ description = <"Besondere Anweisungen dieser Labortestanforderung">
248
+ text = <"Besondere Anweisungen">
249
+ >
250
+ ["at0008"] = <
251
+ description = <"Einzelheiten des Anfordernden">
252
+ text = <"Einzelheiten des Anfordernden">
253
+ >
254
+ ["at0009"] = <
255
+ description = <"Name des Anfordernden">
256
+ text = <"Name">
257
+ >
258
+ ["at0010"] = <
259
+ description = <"Kontakteinzelheiten des Dienstleisters, die den Labortest angefordert hat">
260
+ text = <"Kantakteinzelheiten">
261
+ >
262
+ ["at0011"] = <
263
+ description = <"*">
264
+ text = <"Telefonnummer">
265
+ >
266
+ ["at0012"] = <
267
+ description = <"*">
268
+ text = <"E-Mail">
269
+ >
270
+ ["at0013"] = <
271
+ description = <"*">
272
+ text = <"Faxnummer">
273
+ >
274
+ ["at0014"] = <
275
+ description = <"*">
276
+ text = <"Adress">
277
+ >
278
+ ["at0015"] = <
279
+ description = <"Einzelheiten des Labors zu dem die Anforderung �bermittelt wurde">
280
+ text = <"Einzelheiten des Labors">
281
+ >
282
+ ["at0016"] = <
283
+ description = <"*">
284
+ text = <"Name">
285
+ >
286
+ ["at0017"] = <
287
+ description = <"*">
288
+ text = <"Kontakteinzelheiten">
289
+ >
290
+ ["at0018"] = <
291
+ description = <"*">
292
+ text = <"Telefonnummer">
293
+ >
294
+ ["at0019"] = <
295
+ description = <"*">
296
+ text = <"E-Mail">
297
+ >
298
+ ["at0020"] = <
299
+ description = <"*">
300
+ text = <"Faxnummer">
301
+ >
302
+ ["at0021"] = <
303
+ description = <"*">
304
+ text = <"Adresse">
305
+ >
306
+ ["at0022"] = <
307
+ description = <"Informationen zum Ablauf der Laboranforderung">
308
+ text = <"Ablauf">
309
+ >
310
+ ["at0024"] = <
311
+ description = <"*">
312
+ text = <"Dringlichkeit">
313
+ >
314
+ ["at0025"] = <
315
+ description = <"*">
316
+ text = <"Zeitvorgabe">
317
+ >
318
+ ["at0026"] = <
319
+ description = <"Angeforderter Labortest muss sofort ausgef�hrt werden">
320
+ text = <"Notfall">
321
+ >
322
+ ["at0027"] = <
323
+ description = <"Der angeforderte Labortest muss so bald wie m�glich ausgef�hrt werden">
324
+ text = <"Dringend">
325
+ >
326
+ ["at0028"] = <
327
+ description = <"Ausf�hrung des angeforderter Labortest wenn es dem Labor m�glich ist">
328
+ text = <"Nicht dringend">
329
+ >
330
+ ["at0029"] = <
331
+ description = <"Einzelheiten der Probe">
332
+ text = <"Einzelheiten der Probe">
333
+ >
334
+ ["at0030"] = <
335
+ description = <"Beschreibung der Probe">
336
+ text = <"Beschreibung">
337
+ >
338
+ ["at0031"] = <
339
+ description = <"Die K�rperstelle, an der die Probe genommen wurde">
340
+ text = <"K�rperstelle">
341
+ >
342
+ ["at0032"] = <
343
+ description = <"Das Datum und der Zeitpunkt, wann die Probe gewonnen wurde">
344
+ text = <"Zeitpunkt der Gewinnung">
345
+ >
346
+ ["at0033"] = <
347
+ description = <"Der Name des Abnehmers der Probe">
348
+ text = <"Name des Abnehmers">
349
+ >
350
+ ["at0034"] = <
351
+ description = <"Anzahl der Sammelr�hrchen">
352
+ text = <"Sammelr�hrchen">
353
+ >
354
+ >
355
+ >
356
+ ["en"] = <
357
+ items = <
358
+ ["at0000"] = <
359
+ description = <"Data about a laboratory test request as part of an instruction">
360
+ text = <"Laboratory test request">
361
+ >
362
+ ["at0002"] = <
363
+ description = <"Clinical information relevant to the laboratory request">
364
+ text = <"Clinical information">
365
+ >
366
+ ["at0003"] = <
367
+ description = <"Clinical findings relevant to the laboratory request.">
368
+ text = <"Findings">
369
+ >
370
+ ["at0004"] = <
371
+ description = <"The required tests by this laboratory request">
372
+ text = <"Tests required">
373
+ >
374
+ ["at0005"] = <
375
+ description = <"Test name">
376
+ text = <"Test name">
377
+ >
378
+ ["at0006"] = <
379
+ description = <"The date and time when the laboratory tests were requested">
380
+ text = <"DateTime requested">
381
+ >
382
+ ["at0007"] = <
383
+ description = <"The special instructions of this laboratory request">
384
+ text = <"Special instructions">
385
+ >
386
+ ["at0008"] = <
387
+ description = <"The laboratory request provider details">
388
+ text = <"Requesting provider details">
389
+ >
390
+ ["at0009"] = <
391
+ description = <"Name of the requesting provider">
392
+ text = <"Name">
393
+ >
394
+ ["at0010"] = <
395
+ description = <"Contact details of the provider who made the laboratory request">
396
+ text = <"Contact details">
397
+ >
398
+ ["at0011"] = <
399
+ description = <"*">
400
+ text = <"Telephone">
401
+ >
402
+ ["at0012"] = <
403
+ description = <"*">
404
+ text = <"Email">
405
+ >
406
+ ["at0013"] = <
407
+ description = <"*">
408
+ text = <"Facsimile">
409
+ >
410
+ ["at0014"] = <
411
+ description = <"*">
412
+ text = <"Address">
413
+ >
414
+ ["at0015"] = <
415
+ description = <"The details of the laboratory to which the laboratory request was referred.">
416
+ text = <"Laboratory details">
417
+ >
418
+ ["at0016"] = <
419
+ description = <"Name of the laboratory">
420
+ text = <"Name">
421
+ >
422
+ ["at0017"] = <
423
+ description = <"*">
424
+ text = <"Contact details">
425
+ >
426
+ ["at0018"] = <
427
+ description = <"*">
428
+ text = <"Telephone">
429
+ >
430
+ ["at0019"] = <
431
+ description = <"*">
432
+ text = <"Email">
433
+ >
434
+ ["at0020"] = <
435
+ description = <"*">
436
+ text = <"Facsimile">
437
+ >
438
+ ["at0021"] = <
439
+ description = <"*">
440
+ text = <"Address">
441
+ >
442
+ ["at0022"] = <
443
+ description = <"Information about the process of the laboratory request">
444
+ text = <"Process">
445
+ >
446
+ ["at0024"] = <
447
+ description = <"*">
448
+ text = <"Urgency">
449
+ >
450
+ ["at0025"] = <
451
+ description = <"*">
452
+ text = <"Timing">
453
+ >
454
+ ["at0026"] = <
455
+ description = <"Require the laboratory test done immediately">
456
+ text = <"Emergency">
457
+ >
458
+ ["at0027"] = <
459
+ description = <"Require the laboratory test done as soon as possible">
460
+ text = <"Urgent">
461
+ >
462
+ ["at0028"] = <
463
+ description = <"Require the laboratory test at laboratories convenience">
464
+ text = <"Non-urgent">
465
+ >
466
+ ["at0029"] = <
467
+ description = <"Specimen details">
468
+ text = <"Specimen details">
469
+ >
470
+ ["at0030"] = <
471
+ description = <"Descriptions of the specimen">
472
+ text = <"Descriptions">
473
+ >
474
+ ["at0031"] = <
475
+ description = <"The site of the body where the specimen was collected">
476
+ text = <"Body site">
477
+ >
478
+ ["at0032"] = <
479
+ description = <"The date and time when the specimen was collected.">
480
+ text = <"Collection DateTime">
481
+ >
482
+ ["at0033"] = <
483
+ description = <"The specimen collector name">
484
+ text = <"Collector name">
485
+ >
486
+ ["at0034"] = <
487
+ description = <"Indicate number of tubes">
488
+ text = <"Tubes collected">
489
+ >
490
+ >
491
+ >
492
+ >