rubyhealthvault 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (477) hide show
  1. data/LICENSE +52 -0
  2. data/README +19 -0
  3. data/Rakefile +149 -0
  4. data/bin/certs/HelloWorld-SDK_ID-05a059c9-c309-46af-9b86-b06d42510550.pfx +0 -0
  5. data/bin/certs/helloWorld.pem +52 -0
  6. data/bin/example.rb +80 -0
  7. data/bin/hv.log +118 -0
  8. data/lib/application.rb +37 -0
  9. data/lib/code_generation/xsd_parser.rb +376 -0
  10. data/lib/config.rb +28 -0
  11. data/lib/connection.rb +61 -0
  12. data/lib/healthvault.rb +2 -0
  13. data/lib/request.rb +113 -0
  14. data/lib/response.rb +50 -0
  15. data/lib/templates/complex_type_template.erb +64 -0
  16. data/lib/templates/simple_type_template.erb +65 -0
  17. data/lib/templates/thing_class_extension_template.erb +22 -0
  18. data/lib/utils/crypto_utils.rb +69 -0
  19. data/lib/utils/string_utils.rb +35 -0
  20. data/lib/wc_data/complex_type.rb +249 -0
  21. data/lib/wc_data/generated/application/app.rb +217 -0
  22. data/lib/wc_data/generated/application/app_id_and_incr_auth.rb +118 -0
  23. data/lib/wc_data/generated/application/app_large_logo.rb +56 -0
  24. data/lib/wc_data/generated/application/app_large_logo_info.rb +66 -0
  25. data/lib/wc_data/generated/application/app_persistent_tokens.rb +64 -0
  26. data/lib/wc_data/generated/application/app_small_logo.rb +56 -0
  27. data/lib/wc_data/generated/application/app_small_logo_info.rb +66 -0
  28. data/lib/wc_data/generated/application/app_with_logos.rb +291 -0
  29. data/lib/wc_data/generated/application/public_key.rb +43 -0
  30. data/lib/wc_data/generated/application/public_keys.rb +48 -0
  31. data/lib/wc_data/generated/application/statement.rb +30 -0
  32. data/lib/wc_data/generated/application/statement_info.rb +66 -0
  33. data/lib/wc_data/generated/auth/app_record_auth_action.rb +61 -0
  34. data/lib/wc_data/generated/auth/associated_cred_info.rb +70 -0
  35. data/lib/wc_data/generated/auth/auth.rb +44 -0
  36. data/lib/wc_data/generated/auth/auth_session_credential.rb +68 -0
  37. data/lib/wc_data/generated/auth/auth_session_sub_credential.rb +45 -0
  38. data/lib/wc_data/generated/auth/auth_xml.rb +44 -0
  39. data/lib/wc_data/generated/auth/federating_cred.rb +48 -0
  40. data/lib/wc_data/generated/auth/rule.rb +187 -0
  41. data/lib/wc_data/generated/auth/rules.rb +48 -0
  42. data/lib/wc_data/generated/auth/set.rb +70 -0
  43. data/lib/wc_data/generated/auth/simple_card_space_credential.rb +48 -0
  44. data/lib/wc_data/generated/auth/simple_passport_credential.rb +47 -0
  45. data/lib/wc_data/generated/auth/simple_user_pass_credential.rb +48 -0
  46. data/lib/wc_data/generated/auth/textual_permissions.rb +66 -0
  47. data/lib/wc_data/generated/auth/textual_permissions_type.rb +81 -0
  48. data/lib/wc_data/generated/auth/textual_rule.rb +154 -0
  49. data/lib/wc_data/generated/auth/token.rb +90 -0
  50. data/lib/wc_data/generated/auth/user_pass_auth_session_cred.rb +92 -0
  51. data/lib/wc_data/generated/auth/user_pass_cred.rb +70 -0
  52. data/lib/wc_data/generated/dates/approx_date.rb +82 -0
  53. data/lib/wc_data/generated/dates/approx_date_time.rb +62 -0
  54. data/lib/wc_data/generated/dates/date.rb +86 -0
  55. data/lib/wc_data/generated/dates/date_time.rb +82 -0
  56. data/lib/wc_data/generated/dates/day.rb +56 -0
  57. data/lib/wc_data/generated/dates/hour.rb +56 -0
  58. data/lib/wc_data/generated/dates/millisecond.rb +56 -0
  59. data/lib/wc_data/generated/dates/minute.rb +56 -0
  60. data/lib/wc_data/generated/dates/month.rb +56 -0
  61. data/lib/wc_data/generated/dates/second.rb +56 -0
  62. data/lib/wc_data/generated/dates/structured_approx_date.rb +82 -0
  63. data/lib/wc_data/generated/dates/time.rb +102 -0
  64. data/lib/wc_data/generated/dates/year.rb +56 -0
  65. data/lib/wc_data/generated/methods/add_application/info.rb +375 -0
  66. data/lib/wc_data/generated/methods/create_authenticated_session_token/auth_token_info.rb +72 -0
  67. data/lib/wc_data/generated/methods/create_authenticated_session_token/credential.rb +88 -0
  68. data/lib/wc_data/generated/methods/create_authenticated_session_token/info.rb +50 -0
  69. data/lib/wc_data/generated/methods/create_connect_request/info.rb +136 -0
  70. data/lib/wc_data/generated/methods/delete_open_query/info.rb +50 -0
  71. data/lib/wc_data/generated/methods/delete_pending_connect_request/info.rb +49 -0
  72. data/lib/wc_data/generated/methods/get_authorized_connect_requests/info.rb +48 -0
  73. data/lib/wc_data/generated/methods/get_authorized_records/info.rb +52 -0
  74. data/lib/wc_data/generated/methods/get_open_query_info/info.rb +50 -0
  75. data/lib/wc_data/generated/methods/get_person_info/info.rb +48 -0
  76. data/lib/wc_data/generated/methods/get_thing_type/info.rb +118 -0
  77. data/lib/wc_data/generated/methods/get_thing_type/thing_type_section_spec.rb +63 -0
  78. data/lib/wc_data/generated/methods/get_things/info.rb +51 -0
  79. data/lib/wc_data/generated/methods/get_things/thing_filter_spec.rb +296 -0
  80. data/lib/wc_data/generated/methods/get_things/thing_format_spec.rb +75 -0
  81. data/lib/wc_data/generated/methods/get_things/thing_request_group.rb +197 -0
  82. data/lib/wc_data/generated/methods/get_things/thing_section_spec.rb +67 -0
  83. data/lib/wc_data/generated/methods/get_vocabulary/info.rb +48 -0
  84. data/lib/wc_data/generated/methods/get_vocabulary/vocabulary_parameters.rb +73 -0
  85. data/lib/wc_data/generated/methods/put_things/info.rb +51 -0
  86. data/lib/wc_data/generated/methods/query_permissions/info.rb +51 -0
  87. data/lib/wc_data/generated/methods/remove_things/info.rb +52 -0
  88. data/lib/wc_data/generated/methods/response/add_application/info.rb +51 -0
  89. data/lib/wc_data/generated/methods/response/any/info.rb +52 -0
  90. data/lib/wc_data/generated/methods/response/create_authenticated_session_token/app_auth_token_absence_reason.rb +72 -0
  91. data/lib/wc_data/generated/methods/response/create_authenticated_session_token/auth_token_absence_reason.rb +49 -0
  92. data/lib/wc_data/generated/methods/response/create_authenticated_session_token/info.rb +78 -0
  93. data/lib/wc_data/generated/methods/response/create_connect_request/info.rb +52 -0
  94. data/lib/wc_data/generated/methods/response/delete_open_query/info.rb +52 -0
  95. data/lib/wc_data/generated/methods/response/get_application_settings/app_settings.rb +54 -0
  96. data/lib/wc_data/generated/methods/response/get_application_settings/info.rb +70 -0
  97. data/lib/wc_data/generated/methods/response/get_authorized_connect_requests/connect_request.rb +114 -0
  98. data/lib/wc_data/generated/methods/response/get_authorized_connect_requests/info.rb +72 -0
  99. data/lib/wc_data/generated/methods/response/get_authorized_records/info.rb +53 -0
  100. data/lib/wc_data/generated/methods/response/get_people_for_record/info.rb +76 -0
  101. data/lib/wc_data/generated/methods/response/get_person_info/info.rb +52 -0
  102. data/lib/wc_data/generated/methods/response/get_service_definition/configuration_entry.rb +71 -0
  103. data/lib/wc_data/generated/methods/response/get_service_definition/info.rb +141 -0
  104. data/lib/wc_data/generated/methods/response/get_service_definition/platform.rb +98 -0
  105. data/lib/wc_data/generated/methods/response/get_service_definition/sdk_assembly.rb +94 -0
  106. data/lib/wc_data/generated/methods/response/get_service_definition/shell.rb +95 -0
  107. data/lib/wc_data/generated/methods/response/get_service_definition/shell_redirect_token.rb +93 -0
  108. data/lib/wc_data/generated/methods/response/get_service_definition/xml_method.rb +75 -0
  109. data/lib/wc_data/generated/methods/response/get_service_definition/xml_method_version.rb +92 -0
  110. data/lib/wc_data/generated/methods/response/get_thing_type/column.rb +130 -0
  111. data/lib/wc_data/generated/methods/response/get_thing_type/columns.rb +52 -0
  112. data/lib/wc_data/generated/methods/response/get_thing_type/image.rb +71 -0
  113. data/lib/wc_data/generated/methods/response/get_thing_type/info.rb +53 -0
  114. data/lib/wc_data/generated/methods/response/get_thing_type/thing_type_info.rb +232 -0
  115. data/lib/wc_data/generated/methods/response/get_thing_type/transform_source.rb +72 -0
  116. data/lib/wc_data/generated/methods/response/get_thing_type/transforms.rb +52 -0
  117. data/lib/wc_data/generated/methods/response/get_things/info.rb +54 -0
  118. data/lib/wc_data/generated/methods/response/get_things/thing_response_group.rb +118 -0
  119. data/lib/wc_data/generated/methods/response/get_things/unprocessed_thing_key_info.rb +95 -0
  120. data/lib/wc_data/generated/methods/response/get_vocabulary/info.rb +76 -0
  121. data/lib/wc_data/generated/methods/response/put_things/info.rb +53 -0
  122. data/lib/wc_data/generated/methods/response/query_permissions/info.rb +54 -0
  123. data/lib/wc_data/generated/methods/response/query_permissions/permissions.rb +53 -0
  124. data/lib/wc_data/generated/methods/response/query_permissions/thing_type_permission.rb +89 -0
  125. data/lib/wc_data/generated/methods/response/search_vocabulary/info.rb +74 -0
  126. data/lib/wc_data/generated/methods/save_open_query/info.rb +227 -0
  127. data/lib/wc_data/generated/methods/search_vocabulary/info.rb +70 -0
  128. data/lib/wc_data/generated/methods/search_vocabulary/vocabulary_search_params.rb +69 -0
  129. data/lib/wc_data/generated/methods/search_vocabulary/vocabulary_search_string.rb +68 -0
  130. data/lib/wc_data/generated/methods/send_insecure_message/info.rb +155 -0
  131. data/lib/wc_data/generated/methods/send_insecure_message_from_application/from_mailbox.rb +71 -0
  132. data/lib/wc_data/generated/methods/send_insecure_message_from_application/info.rb +178 -0
  133. data/lib/wc_data/generated/methods/set_application_settings/app_settings.rb +52 -0
  134. data/lib/wc_data/generated/methods/set_application_settings/info.rb +48 -0
  135. data/lib/wc_data/generated/methods/update_application/info.rb +384 -0
  136. data/lib/wc_data/generated/methods/update_external_id/info.rb +70 -0
  137. data/lib/wc_data/generated/record/active_app_authorization.rb +196 -0
  138. data/lib/wc_data/generated/record/active_person_authorization.rb +290 -0
  139. data/lib/wc_data/generated/record/active_person_authorization_no_ids.rb +250 -0
  140. data/lib/wc_data/generated/record/authorized_record_state.rb +53 -0
  141. data/lib/wc_data/generated/record/non_active_authorization.rb +340 -0
  142. data/lib/wc_data/generated/record/non_active_authorization_no_ids.rb +300 -0
  143. data/lib/wc_data/generated/request/authenticated_session_info.rb +88 -0
  144. data/lib/wc_data/generated/request/header.rb +274 -0
  145. data/lib/wc_data/generated/request/info.rb +48 -0
  146. data/lib/wc_data/generated/request/offline_person_info.rb +46 -0
  147. data/lib/wc_data/generated/request/request.rb +86 -0
  148. data/lib/wc_data/generated/request/xsl.rb +64 -0
  149. data/lib/wc_data/generated/thing/access_avenue.rb +49 -0
  150. data/lib/wc_data/generated/thing/aerobic/aerobic_session.rb +112 -0
  151. data/lib/wc_data/generated/thing/aerobic_profile/aerobic_profile.rb +153 -0
  152. data/lib/wc_data/generated/thing/aerobic_profile/heartrate_zone.rb +90 -0
  153. data/lib/wc_data/generated/thing/aerobic_profile/heartrate_zone_group.rb +72 -0
  154. data/lib/wc_data/generated/thing/aerobic_profile/max_vo2.rb +68 -0
  155. data/lib/wc_data/generated/thing/aerobic_profile/zone_boundary.rb +68 -0
  156. data/lib/wc_data/generated/thing/aerobic_weekly/aerobic_weekly.rb +72 -0
  157. data/lib/wc_data/generated/thing/allergic_episode/allergic_episode.rb +108 -0
  158. data/lib/wc_data/generated/thing/allergy/allergy.rb +186 -0
  159. data/lib/wc_data/generated/thing/annotation/annotation.rb +144 -0
  160. data/lib/wc_data/generated/thing/application/app_specific.rb +137 -0
  161. data/lib/wc_data/generated/thing/appointment/appointment.rb +166 -0
  162. data/lib/wc_data/generated/thing/audit.rb +150 -0
  163. data/lib/wc_data/generated/thing/audit_action.rb +53 -0
  164. data/lib/wc_data/generated/thing/basic/basic.rb +180 -0
  165. data/lib/wc_data/generated/thing/basic/birthyear.rb +58 -0
  166. data/lib/wc_data/generated/thing/basic/country.rb +45 -0
  167. data/lib/wc_data/generated/thing/basic/firstdow.rb +58 -0
  168. data/lib/wc_data/generated/thing/basic/gender.rb +51 -0
  169. data/lib/wc_data/generated/thing/blood_glucose/blood_glucose.rb +172 -0
  170. data/lib/wc_data/generated/thing/blood_pressure/blood_pressure.rb +133 -0
  171. data/lib/wc_data/generated/thing/cardiac_profile/cardiac_profile.rb +209 -0
  172. data/lib/wc_data/generated/thing/cholesterol_profile/cholesterol_profile.rb +129 -0
  173. data/lib/wc_data/generated/thing/common.rb +126 -0
  174. data/lib/wc_data/generated/thing/concern/concern.rb +71 -0
  175. data/lib/wc_data/generated/thing/condition/condition.rb +127 -0
  176. data/lib/wc_data/generated/thing/contact/contact.rb +49 -0
  177. data/lib/wc_data/generated/thing/contraindication/contraindication.rb +129 -0
  178. data/lib/wc_data/generated/thing/daily_medication_usage/daily_medication_usage.rb +218 -0
  179. data/lib/wc_data/generated/thing/data_other.rb +82 -0
  180. data/lib/wc_data/generated/thing/data_xml.rb +80 -0
  181. data/lib/wc_data/generated/thing/diabetic_profile/diabetic_profile.rb +92 -0
  182. data/lib/wc_data/generated/thing/diabetic_profile/target_glucose_zone.rb +90 -0
  183. data/lib/wc_data/generated/thing/diabetic_profile/target_glucose_zone_group.rb +72 -0
  184. data/lib/wc_data/generated/thing/diabetic_profile/zone_boundary.rb +68 -0
  185. data/lib/wc_data/generated/thing/dietary_intake_daily/dietary_intake_daily.rb +249 -0
  186. data/lib/wc_data/generated/thing/directive/directive.rb +343 -0
  187. data/lib/wc_data/generated/thing/discharge_summary/discharge_summary.rb +366 -0
  188. data/lib/wc_data/generated/thing/effective_permissions.rb +66 -0
  189. data/lib/wc_data/generated/thing/emotion/emotion.rb +109 -0
  190. data/lib/wc_data/generated/thing/encounter/encounter.rb +143 -0
  191. data/lib/wc_data/generated/thing/equipment/device.rb +163 -0
  192. data/lib/wc_data/generated/thing/extension.rb +123 -0
  193. data/lib/wc_data/generated/thing/family_history/family_history.rb +203 -0
  194. data/lib/wc_data/generated/thing/family_history_condition/family_history_condition.rb +49 -0
  195. data/lib/wc_data/generated/thing/family_history_person/family_history_person.rb +107 -0
  196. data/lib/wc_data/generated/thing/file/file.rb +90 -0
  197. data/lib/wc_data/generated/thing/guid_and_name.rb +66 -0
  198. data/lib/wc_data/generated/thing/hb_a1_c/hb_a1_c.rb +111 -0
  199. data/lib/wc_data/generated/thing/healthcare_proxy/healthcare_proxy.rb +144 -0
  200. data/lib/wc_data/generated/thing/height/height.rb +71 -0
  201. data/lib/wc_data/generated/thing/immunization/immunization.rb +244 -0
  202. data/lib/wc_data/generated/thing/inhaler/alert.rb +74 -0
  203. data/lib/wc_data/generated/thing/inhaler/asthma_inhaler.rb +272 -0
  204. data/lib/wc_data/generated/thing/inhaler/dow.rb +58 -0
  205. data/lib/wc_data/generated/thing/inhaler/purpose.rb +55 -0
  206. data/lib/wc_data/generated/thing/inhaler_use/asthma_inhaler_use.rb +152 -0
  207. data/lib/wc_data/generated/thing/insulin/insulin_injection.rb +93 -0
  208. data/lib/wc_data/generated/thing/insulin_injection_use/diabetes_insulin_injection_use.rb +114 -0
  209. data/lib/wc_data/generated/thing/lab_test_results/lab_test_results.rb +89 -0
  210. data/lib/wc_data/generated/thing/life_goal/life_goal.rb +68 -0
  211. data/lib/wc_data/generated/thing/link/link.rb +68 -0
  212. data/lib/wc_data/generated/thing/medication/dose_value.rb +107 -0
  213. data/lib/wc_data/generated/thing/medication/medication.rb +491 -0
  214. data/lib/wc_data/generated/thing/microbiology/microbiology_lab_results.rb +186 -0
  215. data/lib/wc_data/generated/thing/password/protected/package/algorithm_name.rb +59 -0
  216. data/lib/wc_data/generated/thing/password/protected/package/package_encryption_type.rb +71 -0
  217. data/lib/wc_data/generated/thing/password/protected/package/password_protected_package.rb +53 -0
  218. data/lib/wc_data/generated/thing/password/protected/package/pbe_parameters_type.rb +97 -0
  219. data/lib/wc_data/generated/thing/payer/payer.rb +265 -0
  220. data/lib/wc_data/generated/thing/personal/personal.rb +303 -0
  221. data/lib/wc_data/generated/thing/personal_image/personal_image.rb +28 -0
  222. data/lib/wc_data/generated/thing/problem/importance.rb +45 -0
  223. data/lib/wc_data/generated/thing/problem/problem.rb +114 -0
  224. data/lib/wc_data/generated/thing/procedure/procedure.rb +125 -0
  225. data/lib/wc_data/generated/thing/radiology_lab_results/radiology_lab_results.rb +106 -0
  226. data/lib/wc_data/generated/thing/related_thing.rb +88 -0
  227. data/lib/wc_data/generated/thing/respiratory_profile/respiratory_profile.rb +109 -0
  228. data/lib/wc_data/generated/thing/sjam/awakening.rb +70 -0
  229. data/lib/wc_data/generated/thing/sjam/sleep_am.rb +195 -0
  230. data/lib/wc_data/generated/thing/sjam/wake_state.rb +58 -0
  231. data/lib/wc_data/generated/thing/sjpm/activity.rb +70 -0
  232. data/lib/wc_data/generated/thing/sjpm/sleep_pm.rb +162 -0
  233. data/lib/wc_data/generated/thing/sjpm/sleepiness.rb +58 -0
  234. data/lib/wc_data/generated/thing/spirometer/spirometer.rb +317 -0
  235. data/lib/wc_data/generated/thing/spirometer/volume_value.rb +69 -0
  236. data/lib/wc_data/generated/thing/thing.rb +213 -0
  237. data/lib/wc_data/generated/thing/thing_key.rb +66 -0
  238. data/lib/wc_data/generated/thing/thing_state.rb +49 -0
  239. data/lib/wc_data/generated/thing/thing_type.rb +64 -0
  240. data/lib/wc_data/generated/thing/types/address.rb +176 -0
  241. data/lib/wc_data/generated/thing/types/aerobic_lap_session.rb +86 -0
  242. data/lib/wc_data/generated/thing/types/aerobic_session.rb +745 -0
  243. data/lib/wc_data/generated/thing/types/aerobic_session_samples.rb +310 -0
  244. data/lib/wc_data/generated/thing/types/altitude_value.rb +70 -0
  245. data/lib/wc_data/generated/thing/types/blood_glucose_value.rb +69 -0
  246. data/lib/wc_data/generated/thing/types/codable_value.rb +74 -0
  247. data/lib/wc_data/generated/thing/types/coded_value.rb +112 -0
  248. data/lib/wc_data/generated/thing/types/communication_type.rb +112 -0
  249. data/lib/wc_data/generated/thing/types/condition.rb +148 -0
  250. data/lib/wc_data/generated/thing/types/contact.rb +97 -0
  251. data/lib/wc_data/generated/thing/types/display_value.rb +90 -0
  252. data/lib/wc_data/generated/thing/types/document_reference_type.rb +112 -0
  253. data/lib/wc_data/generated/thing/types/double_range.rb +70 -0
  254. data/lib/wc_data/generated/thing/types/dow.rb +58 -0
  255. data/lib/wc_data/generated/thing/types/duration_value.rb +69 -0
  256. data/lib/wc_data/generated/thing/types/email.rb +89 -0
  257. data/lib/wc_data/generated/thing/types/flow_value.rb +69 -0
  258. data/lib/wc_data/generated/thing/types/general_measurement.rb +74 -0
  259. data/lib/wc_data/generated/thing/types/goal.rb +86 -0
  260. data/lib/wc_data/generated/thing/types/goal_status.rb +55 -0
  261. data/lib/wc_data/generated/thing/types/insulin_injection_value.rb +69 -0
  262. data/lib/wc_data/generated/thing/types/lab_result_type.rb +149 -0
  263. data/lib/wc_data/generated/thing/types/lab_test_result_type.rb +167 -0
  264. data/lib/wc_data/generated/thing/types/lab_test_result_value_type.rb +99 -0
  265. data/lib/wc_data/generated/thing/types/lab_test_results_group_type.rb +138 -0
  266. data/lib/wc_data/generated/thing/types/lab_test_type.rb +209 -0
  267. data/lib/wc_data/generated/thing/types/language.rb +69 -0
  268. data/lib/wc_data/generated/thing/types/length_value.rb +69 -0
  269. data/lib/wc_data/generated/thing/types/name.rb +148 -0
  270. data/lib/wc_data/generated/thing/types/non_negative_double.rb +45 -0
  271. data/lib/wc_data/generated/thing/types/one_to_five.rb +58 -0
  272. data/lib/wc_data/generated/thing/types/organization.rb +106 -0
  273. data/lib/wc_data/generated/thing/types/pace_value.rb +69 -0
  274. data/lib/wc_data/generated/thing/types/percentage.rb +58 -0
  275. data/lib/wc_data/generated/thing/types/person.rb +146 -0
  276. data/lib/wc_data/generated/thing/types/phone.rb +89 -0
  277. data/lib/wc_data/generated/thing/types/positive_double.rb +45 -0
  278. data/lib/wc_data/generated/thing/types/power_value.rb +69 -0
  279. data/lib/wc_data/generated/thing/types/sample.rb +88 -0
  280. data/lib/wc_data/generated/thing/types/sample_set.rb +116 -0
  281. data/lib/wc_data/generated/thing/types/speed_value.rb +69 -0
  282. data/lib/wc_data/generated/thing/types/structured_measurement.rb +71 -0
  283. data/lib/wc_data/generated/thing/types/temperature_value.rb +69 -0
  284. data/lib/wc_data/generated/thing/types/test_result_range.rb +71 -0
  285. data/lib/wc_data/generated/thing/types/torque_value.rb +69 -0
  286. data/lib/wc_data/generated/thing/types/weight_value.rb +69 -0
  287. data/lib/wc_data/generated/thing/vital_signs/vital_sign_result_type.rb +166 -0
  288. data/lib/wc_data/generated/thing/vital_signs/vital_signs.rb +110 -0
  289. data/lib/wc_data/generated/thing/weight/weight.rb +70 -0
  290. data/lib/wc_data/generated/thing/weight_goal/weight_goal.rb +106 -0
  291. data/lib/wc_data/generated/types/address.rb +162 -0
  292. data/lib/wc_data/generated/types/app_info.rb +66 -0
  293. data/lib/wc_data/generated/types/app_server_cred.rb +70 -0
  294. data/lib/wc_data/generated/types/app_server_cred_info.rb +70 -0
  295. data/lib/wc_data/generated/types/app_settings.rb +50 -0
  296. data/lib/wc_data/generated/types/base64_sha1.rb +56 -0
  297. data/lib/wc_data/generated/types/card_space_cred.rb +50 -0
  298. data/lib/wc_data/generated/types/char2.rb +56 -0
  299. data/lib/wc_data/generated/types/codable_value.rb +72 -0
  300. data/lib/wc_data/generated/types/coded_value.rb +110 -0
  301. data/lib/wc_data/generated/types/culture.rb +64 -0
  302. data/lib/wc_data/generated/types/date_range.rb +62 -0
  303. data/lib/wc_data/generated/types/email.rb +82 -0
  304. data/lib/wc_data/generated/types/email_address.rb +56 -0
  305. data/lib/wc_data/generated/types/gender.rb +49 -0
  306. data/lib/wc_data/generated/types/group.rb +91 -0
  307. data/lib/wc_data/generated/types/groups.rb +50 -0
  308. data/lib/wc_data/generated/types/guid.rb +43 -0
  309. data/lib/wc_data/generated/types/hash_finalized.rb +48 -0
  310. data/lib/wc_data/generated/types/hash_finalized_data.rb +68 -0
  311. data/lib/wc_data/generated/types/hmac_algorithm.rb +48 -0
  312. data/lib/wc_data/generated/types/hmac_algorithm_data.rb +68 -0
  313. data/lib/wc_data/generated/types/hmac_finalized.rb +48 -0
  314. data/lib/wc_data/generated/types/hmac_finalized_data.rb +68 -0
  315. data/lib/wc_data/generated/types/iso3166.rb +1001 -0
  316. data/lib/wc_data/generated/types/iso4217.rb +733 -0
  317. data/lib/wc_data/generated/types/iso639_1.rb +585 -0
  318. data/lib/wc_data/generated/types/language_competency.rb +64 -0
  319. data/lib/wc_data/generated/types/localized_string.rb +64 -0
  320. data/lib/wc_data/generated/types/login_name.rb +56 -0
  321. data/lib/wc_data/generated/types/name_match_type.rb +53 -0
  322. data/lib/wc_data/generated/types/omb_ethnicity.rb +65 -0
  323. data/lib/wc_data/generated/types/open_query_info.rb +149 -0
  324. data/lib/wc_data/generated/types/permission.rb +61 -0
  325. data/lib/wc_data/generated/types/person_info.rb +214 -0
  326. data/lib/wc_data/generated/types/phone.rb +82 -0
  327. data/lib/wc_data/generated/types/positive_long.rb +43 -0
  328. data/lib/wc_data/generated/types/puid.rb +43 -0
  329. data/lib/wc_data/generated/types/rcpt_address.rb +69 -0
  330. data/lib/wc_data/generated/types/rcpt_person.rb +68 -0
  331. data/lib/wc_data/generated/types/rcpt_record.rb +48 -0
  332. data/lib/wc_data/generated/types/record.rb +264 -0
  333. data/lib/wc_data/generated/types/record_state.rb +57 -0
  334. data/lib/wc_data/generated/types/sig.rb +112 -0
  335. data/lib/wc_data/generated/types/string1024.rb +56 -0
  336. data/lib/wc_data/generated/types/string128.rb +56 -0
  337. data/lib/wc_data/generated/types/string16.rb +56 -0
  338. data/lib/wc_data/generated/types/string255.rb +56 -0
  339. data/lib/wc_data/generated/types/string32.rb +56 -0
  340. data/lib/wc_data/generated/types/string512.rb +56 -0
  341. data/lib/wc_data/generated/types/string64.rb +56 -0
  342. data/lib/wc_data/generated/types/stringnz.rb +43 -0
  343. data/lib/wc_data/generated/types/stringz1024.rb +56 -0
  344. data/lib/wc_data/generated/types/stringz128.rb +56 -0
  345. data/lib/wc_data/generated/types/stringz16.rb +56 -0
  346. data/lib/wc_data/generated/types/stringz255.rb +56 -0
  347. data/lib/wc_data/generated/types/stringz32.rb +56 -0
  348. data/lib/wc_data/generated/types/stringz512.rb +56 -0
  349. data/lib/wc_data/generated/types/stringz64.rb +56 -0
  350. data/lib/wc_data/generated/types/url.rb +56 -0
  351. data/lib/wc_data/generated/types/version.rb +56 -0
  352. data/lib/wc_data/generated/vocab/info_xml.rb +46 -0
  353. data/lib/wc_data/generated/vocab/vocabulary_code_item.rb +104 -0
  354. data/lib/wc_data/generated/vocab/vocabulary_code_set.rb +133 -0
  355. data/lib/wc_data/generated/vocab/vocabulary_key.rb +106 -0
  356. data/lib/wc_data/generated/vocab/vocabulary_key_info.rb +26 -0
  357. data/lib/wc_data/init.rb +27 -0
  358. data/lib/wc_data/raw_info_xml.rb +12 -0
  359. data/lib/wc_data/simple_type.rb +16 -0
  360. data/lib/wc_data/thing.rb +78 -0
  361. data/lib/xsd/bootstrap/request.xsd +107 -0
  362. data/lib/xsd/bootstrap/response-getservicedefinition.xsd +119 -0
  363. data/lib/xsd/bootstrap/types.xsd +1117 -0
  364. data/lib/xsd/common/application.xsd +766 -0
  365. data/lib/xsd/common/auth.xsd +1093 -0
  366. data/lib/xsd/common/dates.xsd +510 -0
  367. data/lib/xsd/common/record.xsd +1160 -0
  368. data/lib/xsd/common/request.xsd +524 -0
  369. data/lib/xsd/common/thing.xsd +881 -0
  370. data/lib/xsd/common/types.xsd +3131 -0
  371. data/lib/xsd/common/vocab.xsd +359 -0
  372. data/lib/xsd/requests/method-addapplication.xsd +349 -0
  373. data/lib/xsd/requests/method-createauthenticatedsessiontoken.xsd +216 -0
  374. data/lib/xsd/requests/method-createconnectrequest.xsd +143 -0
  375. data/lib/xsd/requests/method-deleteopenquery.xsd +75 -0
  376. data/lib/xsd/requests/method-deletependingconnectrequest.xsd +77 -0
  377. data/lib/xsd/requests/method-getauthorizedconnectrequests.xsd +78 -0
  378. data/lib/xsd/requests/method-getauthorizedrecords.xsd +82 -0
  379. data/lib/xsd/requests/method-getopenqueryinfo.xsd +74 -0
  380. data/lib/xsd/requests/method-getpersoninfo.xsd +80 -0
  381. data/lib/xsd/requests/method-getthings.xsd +516 -0
  382. data/lib/xsd/requests/method-getthingtype.xsd +201 -0
  383. data/lib/xsd/requests/method-getvocabulary.xsd +135 -0
  384. data/lib/xsd/requests/method-putthings.xsd +80 -0
  385. data/lib/xsd/requests/method-querypermissions.xsd +79 -0
  386. data/lib/xsd/requests/method-removethings.xsd +78 -0
  387. data/lib/xsd/requests/method-saveopenquery.xsd +219 -0
  388. data/lib/xsd/requests/method-searchvocabulary.xsd +222 -0
  389. data/lib/xsd/requests/method-sendinsecuremessage.xsd +185 -0
  390. data/lib/xsd/requests/method-sendinsecuremessagefromapplication.xsd +274 -0
  391. data/lib/xsd/requests/method-setapplicationsettings.xsd +166 -0
  392. data/lib/xsd/requests/method-updateapplication.xsd +357 -0
  393. data/lib/xsd/requests/method-updateexternalid.xsd +84 -0
  394. data/lib/xsd/responses/response-addapplication.xsd +79 -0
  395. data/lib/xsd/responses/response-any.xsd +59 -0
  396. data/lib/xsd/responses/response-createauthenticatedsessiontoken.xsd +167 -0
  397. data/lib/xsd/responses/response-createconnectrequest.xsd +88 -0
  398. data/lib/xsd/responses/response-deleteopenquery.xsd +87 -0
  399. data/lib/xsd/responses/response-getapplicationsettings.xsd +192 -0
  400. data/lib/xsd/responses/response-getauthorizedconnectrequests.xsd +135 -0
  401. data/lib/xsd/responses/response-getauthorizedrecords.xsd +76 -0
  402. data/lib/xsd/responses/response-getopenqueryinfo.xsd +64 -0
  403. data/lib/xsd/responses/response-getpeopleforrecord.xsd +95 -0
  404. data/lib/xsd/responses/response-getpersoninfo.xsd +87 -0
  405. data/lib/xsd/responses/response-getservicedefinition.xsd +515 -0
  406. data/lib/xsd/responses/response-getthings.xsd +198 -0
  407. data/lib/xsd/responses/response-getthingtype.xsd +457 -0
  408. data/lib/xsd/responses/response-getvocabulary.xsd +93 -0
  409. data/lib/xsd/responses/response-putthings.xsd +63 -0
  410. data/lib/xsd/responses/response-querypermissions.xsd +182 -0
  411. data/lib/xsd/responses/response-saveopenquery.xsd +62 -0
  412. data/lib/xsd/responses/response-searchvocabulary.xsd +90 -0
  413. data/lib/xsd/things/Advance Directive.xsd +60 -0
  414. data/lib/xsd/things/Aerobic Exercise Session.xsd +19 -0
  415. data/lib/xsd/things/Aerobic Profile.xsd +143 -0
  416. data/lib/xsd/things/Allergic Episode.xsd +17 -0
  417. data/lib/xsd/things/Allergy.xsd +39 -0
  418. data/lib/xsd/things/Application-Specific Information.xsd +42 -0
  419. data/lib/xsd/things/Appointment.xsd +24 -0
  420. data/lib/xsd/things/Asthma Inhaler Usage.xsd +44 -0
  421. data/lib/xsd/things/Asthma Inhaler.xsd +99 -0
  422. data/lib/xsd/things/Base Thing Type.xsd +1000 -0
  423. data/lib/xsd/things/Basic Demographic Information.xsd +49 -0
  424. data/lib/xsd/things/Blood Glucose Measurement.xsd +28 -0
  425. data/lib/xsd/things/Blood Pressure Measurement.xsd +30 -0
  426. data/lib/xsd/things/Cardiac Profile.xsd +80 -0
  427. data/lib/xsd/things/Cholesterol Profile (Lipid Profile).xsd +38 -0
  428. data/lib/xsd/things/Concern.xsd +17 -0
  429. data/lib/xsd/things/Condition.xsd +28 -0
  430. data/lib/xsd/things/Continuity of Care Record.xsd +3 -0
  431. data/lib/xsd/things/Contraindication.xsd +27 -0
  432. data/lib/xsd/things/Daily Dietary Intake.xsd +51 -0
  433. data/lib/xsd/things/Daily Medication Usage.xsd +41 -0
  434. data/lib/xsd/things/Device.xsd +24 -0
  435. data/lib/xsd/things/Diabetes Insulin Injection Use.xsd +26 -0
  436. data/lib/xsd/things/Diabetic Profile.xsd +92 -0
  437. data/lib/xsd/things/Discharge Summary.xsd +43 -0
  438. data/lib/xsd/things/Emergency or Provider Contact.xsd +11 -0
  439. data/lib/xsd/things/Emotional State.xsd +24 -0
  440. data/lib/xsd/things/Encounter (old).xsd +21 -0
  441. data/lib/xsd/things/Encounter.xsd +19 -0
  442. data/lib/xsd/things/Family History Condition.xsd +12 -0
  443. data/lib/xsd/things/Family History Person.xsd +18 -0
  444. data/lib/xsd/things/Family History.xsd +27 -0
  445. data/lib/xsd/things/File.xsd +28 -0
  446. data/lib/xsd/things/HL7 Continuity of Care Document.xsd +33 -0
  447. data/lib/xsd/things/HbA1C Measurement.xsd +23 -0
  448. data/lib/xsd/things/Healthcare Proxy.xsd +21 -0
  449. data/lib/xsd/things/Height Measurement.xsd +13 -0
  450. data/lib/xsd/things/Immunization.xsd +32 -0
  451. data/lib/xsd/things/Insulin Injection.xsd +30 -0
  452. data/lib/xsd/things/Insurance Plan.xsd +46 -0
  453. data/lib/xsd/things/Lab Test Result.xsd +11 -0
  454. data/lib/xsd/things/Life Goal.xsd +19 -0
  455. data/lib/xsd/things/Link.xsd +12 -0
  456. data/lib/xsd/things/Medical Annotation.xsd +21 -0
  457. data/lib/xsd/things/Medical Problem.xsd +15 -0
  458. data/lib/xsd/things/Medication.xsd +82 -0
  459. data/lib/xsd/things/Microbiology Lab Test Result.xsd +25 -0
  460. data/lib/xsd/things/Password Protected Package.xsd +23 -0
  461. data/lib/xsd/things/Personal Contact Information.xsd +18 -0
  462. data/lib/xsd/things/Personal Demographic Information.xsd +63 -0
  463. data/lib/xsd/things/Personal Image.xsd +13 -0
  464. data/lib/xsd/things/Procedure.xsd +19 -0
  465. data/lib/xsd/things/Radiology Lab Result.xsd +19 -0
  466. data/lib/xsd/things/Respiratory Profile.xsd +33 -0
  467. data/lib/xsd/things/Sleep Related Activity.xsd +45 -0
  468. data/lib/xsd/things/Sleep Session.xsd +51 -0
  469. data/lib/xsd/things/Spirometer Measurement.xsd +113 -0
  470. data/lib/xsd/things/Vital Signs.xsd +31 -0
  471. data/lib/xsd/things/Weekly Aerobic Exercise Goal.xsd +25 -0
  472. data/lib/xsd/things/Weight Goal.xsd +33 -0
  473. data/lib/xsd/things/Weight Measurement.xsd +10 -0
  474. data/spec/connection_spec.rb +17 -0
  475. data/spec/request_spec.rb +42 -0
  476. data/spec/support/test_server.rb +42 -0
  477. metadata +646 -0
@@ -0,0 +1,60 @@
1
+ <schema xmlns:dir="urn:com.microsoft.wc.thing.directive" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.directive"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>822a5e5a-14f1-4d06-b92f-8f3f1b05218f</type-id><type-name>Advance Directive</type-name><summary>
2
+ A single advance directive.
3
+ </summary><remarks>
4
+ An advance directive (or advance health directive) is
5
+ legal directive when dealing with health related issues.
6
+ Examples include living wills and power of attorney for
7
+ health care.
8
+ </remarks><effective-date-element>start-date</effective-date-element></documentation></annotation><element name="directive"><complexType><annotation><documentation><summary>
9
+ A single advance directive.
10
+ </summary><remarks>
11
+ An advance directive (or advance health directive) is
12
+ legal directive when dealing with health related issues.
13
+ Examples include living wills and power of attorney for
14
+ health care.
15
+ </remarks></documentation></annotation><sequence><element name="start-date" type="d:approx-date-time"><annotation><documentation><summary>
16
+ The date and time of the directive started.
17
+ </summary></documentation></annotation></element><element name="stop-date" type="d:approx-date-time"><annotation><documentation><summary>
18
+ The date and time of the directive stops.
19
+ </summary></documentation></annotation></element><element name="description" type="string" minOccurs="0"><annotation><documentation><summary>
20
+ Display information about this directive.
21
+ </summary><remarks>
22
+ This should be a short set of information like
23
+ DNR (Do not resuscitate). More verbose
24
+ information should go into the common/note
25
+ section of the thing.
26
+ </remarks></documentation></annotation></element><element name="full-resuscitation" type="boolean" minOccurs="0"><annotation><documentation><summary>
27
+ The full resuscitation directive value.
28
+ </summary><remarks>
29
+ True for full resuscitation.
30
+ </remarks></documentation></annotation></element><element name="prohibited-interventions" type="t:codable-value" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
31
+ The list of prohibited interventions in this directive.
32
+ </summary></documentation></annotation></element><element name="additional-instructions" type="string" minOccurs="0"><annotation><documentation><summary>
33
+ Additional directive instructions.
34
+ </summary><remarks>
35
+ This provides a free form type for additional directive instructions.
36
+ </remarks></documentation></annotation></element><element name="attending-physician" type="t:person" minOccurs="0"><annotation><documentation><summary>
37
+ The attending physician details.
38
+ </summary></documentation></annotation></element><element name="attending-physician-endorsement" type="d:date-time" minOccurs="0"><annotation><documentation><summary>
39
+ The attending physician endorsement date and
40
+ time
41
+ </summary></documentation></annotation></element><element name="attending-nurse" type="t:person" minOccurs="0"><annotation><documentation><summary>
42
+ The attending nurse details.
43
+ </summary></documentation></annotation></element><element name="attending-nurse-endorsement" type="d:date-time" minOccurs="0"><annotation><documentation><summary>
44
+ The attending nurse endorsement details.
45
+ </summary></documentation></annotation></element><element name="expiration-date" type="d:date-time" minOccurs="0"><annotation><documentation><summary>
46
+ The date and time of patient expired.
47
+ </summary></documentation></annotation></element><element name="discontinuation-date" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
48
+ The date and time clinical support was
49
+ discontinued.
50
+ </summary></documentation></annotation></element><element name="discontinuation-physician" type="t:person" minOccurs="0"><annotation><documentation><summary>
51
+ The attending physician details.
52
+ </summary></documentation></annotation></element><element name="discontinuation-physician-endorsement" type="d:date-time" minOccurs="0"><annotation><documentation><summary>
53
+ The attending physician discontinuation
54
+ endorsement date and time
55
+ </summary></documentation></annotation></element><element name="discontinuation-nurse" type="t:person" minOccurs="0"><annotation><documentation><summary>
56
+ The attending nurse details.
57
+ </summary></documentation></annotation></element><element name="discontinuation-nurse-endorsement" type="d:date-time" minOccurs="0"><annotation><documentation><summary>
58
+ The attending nurse discontinuation endorsement
59
+ date and time
60
+ </summary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,19 @@
1
+ <schema xmlns:a="urn:com.microsoft.wc.thing.aerobic" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.aerobic"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>90dbf000-fc55-4b92-b4a1-da45c36ad8bb</type-id><type-name>Aerobic Exercise Session</type-name><summary>
2
+ A single session of aerobic exercise.
3
+ </summary><remarks>
4
+ An aerobic session is a single instance of exercise like
5
+ running, biking, etc.
6
+ </remarks><effective-date-element>when</effective-date-element><seealso>urn:com.microsoft.wc.thing.aerobic-profile</seealso><seealso>urn:com.microsoft.wc.thing.aerobic-weekly</seealso></documentation></annotation><element name="aerobic-session"><complexType><annotation><documentation><summary>
7
+ A single session of aerobic exercise.
8
+ </summary><remarks>
9
+ An aerobic session is a single instance of exercise like
10
+ running, biking, etc.
11
+ </remarks></documentation></annotation><sequence><element name="when" type="d:date-time"><annotation><documentation><summary>
12
+ The date and time when the aerobic session occurred.
13
+ </summary></documentation></annotation></element><element name="session" type="t:aerobic-session"><annotation><documentation><summary>
14
+ The information about the entire aerobic session.
15
+ </summary></documentation></annotation></element><element name="session-samples" type="t:aerobic-session-samples" minOccurs="0"><annotation><documentation><summary>
16
+ The information about the sample sets within the aerobic session.
17
+ </summary></documentation></annotation></element><element name="lap-session" type="t:aerobic-lap-session" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
18
+ The information about the lap within an aerobic session.
19
+ </summary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,143 @@
1
+ <schema xmlns:a="urn:com.microsoft.wc.thing.aerobic-profile" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.aerobic-profile"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>7b2ea78c-4b78-4f75-a6a7-5396fe38b09a</type-id><type-name>Aerobic Profile</type-name><effective-date-element>when</effective-date-element><summary>
2
+ A summary of a person's aerobic condition.
3
+ </summary><remarks>
4
+ A person's aerobic profile is made up of a set of
5
+ measurements that indicate the aerobic capabilities of the person.
6
+ </remarks><seealso>urn:com.microsoft.wc.thing.aerobic</seealso><seealso>urn:com.microsoft.wc.thing.aerobic-weekly</seealso></documentation></annotation><element name="aerobic-profile"><complexType><annotation><documentation><summary>
7
+ A summary of a person's aerobic condition.
8
+ </summary><remarks>
9
+ A person's aerobic profile is made up of a set of
10
+ measurements that indicate the aerobic capabilities of the person.
11
+ </remarks></documentation></annotation><sequence><element name="when" minOccurs="1" maxOccurs="1" type="d:date-time"><annotation><documentation><summary>
12
+ The date/time when the aerobic profile
13
+ measurements were taken.
14
+ </summary></documentation></annotation></element><element name="max-heartrate" minOccurs="0" maxOccurs="1" type="positiveInteger"><annotation><documentation><summary>
15
+ The maximum heart rate of the person.
16
+ </summary><remarks>
17
+ The maximum heart rate is measured in beats per
18
+ minute (BPM).
19
+ </remarks></documentation></annotation></element><element name="resting-heartrate" minOccurs="0" maxOccurs="1" type="positiveInteger"><annotation><documentation><summary>
20
+ The heart rate of the person when at rest.
21
+ </summary><remarks>
22
+ The resting heart rate is measured in beats per
23
+ minute (BPM).
24
+ </remarks></documentation></annotation></element><element name="anaerobic-threshold" minOccurs="0" maxOccurs="1" type="positiveInteger"><annotation><documentation><summary>
25
+ The anaerobic threshold (AT) is the exercise
26
+ intensity at which lactate starts to accumulate
27
+ in the blood stream.
28
+ </summary><remarks>
29
+ The anaerobic threshold is measured in beats
30
+ per minute (BPM).
31
+ </remarks></documentation></annotation></element><element name="VO2-max" minOccurs="0" maxOccurs="1" type="a:MaxVO2"><annotation><documentation><summary>
32
+ VO2 max is the maximum rate at which oxygen
33
+ is absorbed into the blood stream by the body.
34
+ </summary><remarks>
35
+ VO2 max can be measured as either and absolute rate
36
+ in liters of oxygen per minute, or as a relative rate in
37
+ milliters of oxygen per kilogram of bodyweight per minute.
38
+ </remarks></documentation></annotation></element><element name="heartrate-zone-group" minOccurs="0" maxOccurs="unbounded" type="a:HeartrateZoneGroup"><annotation><documentation><summary>
39
+ A grouping of heart rate zones.
40
+ </summary><remarks>
41
+ This allows for customized groupings of heart
42
+ rate zones based on different values.Heart
43
+ rate zones are often used to optimize
44
+ exercise for different purposes. By grouping
45
+ heart rate zones into named groups it is easier
46
+ to identify the zones to use for a particular
47
+ workout.
48
+ </remarks></documentation></annotation></element></sequence></complexType></element><complexType name="HeartrateZoneGroup"><annotation><documentation><summary>
49
+ A grouping of heart rate zones.
50
+ </summary><remarks>
51
+ This allows for customized groupings of heart
52
+ rate zones based on different values.Heart
53
+ rate zones are often used to optimize
54
+ exercise for different purposes. By grouping
55
+ heart rate zones into named groups it is easier
56
+ to identify the zones to use for a particular
57
+ workout.
58
+ </remarks></documentation></annotation><sequence><element name="heartrate-zone" minOccurs="0" maxOccurs="unbounded" type="a:HeartrateZone"><annotation><documentation><summary>
59
+ The heart rate zone definitions that make up the
60
+ zone group.
61
+ </summary><remarks>
62
+ Each heart rate zone definition defines a zone
63
+ for the zone group. In most cases the zone
64
+ definitions should not overlap.
65
+ </remarks></documentation></annotation></element></sequence><attribute name="name" type="string" use="optional"><annotation><documentation><summary>
66
+ The name of the heart rate zone group.
67
+ </summary><remarks>
68
+ The name is usually arbitrary. It is used by the
69
+ person to easily identify a set of heart rate zones
70
+ for use. In some cases, the group name may refer to
71
+ common heart rate zones that have been popularized
72
+ by sports trainers.
73
+ </remarks></documentation></annotation></attribute></complexType><complexType name="HeartrateZone"><annotation><documentation><summary>
74
+ A heart rate range.
75
+ </summary><remarks>
76
+ A heart rate zone defines a range of heart rate measurements
77
+ in beats per minute (BPM). A heart rate zone can be used to
78
+ categorize the intensity of aerobic exercise or to guide
79
+ an aerobic session.
80
+ <br /><br />
81
+ A zone is defined by a lower and upper limit measured in
82
+ BPM or as a percentage of a person's maximum heart rate.
83
+ </remarks></documentation></annotation><sequence><element name="lower-bound" type="a:ZoneBoundary"><annotation><documentation><summary>
84
+ The lower boundary of the heart rate zone.
85
+ </summary></documentation></annotation></element><element name="upper-bound" type="a:ZoneBoundary"><annotation><documentation><summary>
86
+ The upper boundary of the heart rate zone.
87
+ </summary></documentation></annotation></element></sequence><attribute name="name" type="string" use="optional"><annotation><documentation><summary>
88
+ The name of the heart rate zone.
89
+ </summary><remarks>
90
+ The name is usually arbitrary. It is used by the
91
+ person to easily identify the zone without having
92
+ to remember the boundaries. The name is often
93
+ represented by the intensity or the benefits gained
94
+ by exercising in that zone. <br />
95
+ For example: <br />
96
+ "fat burning zone" or "cardio zone".
97
+ </remarks></documentation></annotation></attribute></complexType><complexType name="ZoneBoundary"><annotation><documentation><summary>
98
+ A heart rate zone boundary.
99
+ </summary><remarks>
100
+ The boundary of a heart rate zone may be set as either an
101
+ absolute heart rate (measured in BPM) or as a percentage
102
+ of a person's maximum heart rate.
103
+ </remarks></documentation></annotation><choice minOccurs="1" maxOccurs="1"><annotation><documentation><summary>
104
+ Choice of absolute or relative boundary unites.
105
+ </summary><remarks>
106
+ The boundary of a heart rate zone may be set as either an
107
+ absolute heart rate (measured in BPM) or as a percentage
108
+ of a person's maximum heart rate.
109
+ </remarks></documentation></annotation><element name="absolute-heartrate" type="positiveInteger"><annotation><documentation><summary>
110
+ A zone boundary defined by an absolute heart
111
+ rate.
112
+ </summary><remarks>
113
+ The zone boundary is expressed as an absolute
114
+ heart rate in beats per minute (BPM).
115
+ </remarks></documentation></annotation></element><element name="percent-max-heartrate" type="t:percentage"><annotation><documentation><summary>
116
+ A zone boundary defined by a relative heart
117
+ rate.
118
+ </summary><remarks>
119
+ The zone boundary is expressed as a percentage
120
+ of the person's maximum heart rate.
121
+ </remarks></documentation></annotation></element></choice></complexType><complexType name="MaxVO2"><annotation><documentation><summary>
122
+ The maximum capacity of person to transport and
123
+ utilize oxygen during incremental exercise.
124
+ </summary><remarks>
125
+ VO2 max can be measured as either an absolute
126
+ amount of oxygen utilized, or as an amount
127
+ that is relative to the person's body weight.
128
+ </remarks></documentation></annotation><sequence><element name="absolute" minOccurs="0" maxOccurs="1" type="t:positiveDouble"><annotation><documentation><summary>
129
+ The amount of oxygen utilized per minute
130
+ of exercise.
131
+ </summary><remarks>
132
+ Absolute VO2 max is measured in
133
+ liters per minute (l/min).
134
+ </remarks></documentation></annotation></element><element name="relative" minOccurs="0" maxOccurs="1" type="t:positiveDouble"><annotation><documentation><summary>
135
+ The amount of oxygen utilized per
136
+ kilogram body weight per minute.
137
+ </summary><remarks>
138
+ Relative VO2 max is measured in
139
+ milliters per kilogram per minute
140
+ (ml/kg/min). This measurement is the
141
+ more common measurement used to compare
142
+ aerobic performance.
143
+ </remarks></documentation></annotation></element></sequence></complexType></schema>
@@ -0,0 +1,17 @@
1
+ <schema xmlns:allergic-episode="urn:com.microsoft.wc.thing.allergic-episode" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.allergic-episode"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>d65ad514-c492-4b59-bd05-f3f6cb43ceb3</type-id><type-name>Allergic Episode</type-name><summary>
2
+ Information related to a single instance of an allergic
3
+ reaction.
4
+ </summary><effective-date-element>when</effective-date-element></documentation></annotation><element name="allergic-episode"><complexType><annotation><documentation><summary>
5
+ Information related to a single instance of an allergic
6
+ reaction.
7
+ </summary></documentation></annotation><sequence><element name="when" minOccurs="1" maxOccurs="1" type="d:date-time"><annotation><documentation><summary>
8
+ The date and time the episode occurred.
9
+ </summary></documentation></annotation></element><element name="name" minOccurs="1" maxOccurs="1" type="t:codable-value"><annotation><documentation><summary>
10
+ The name of the allergy.
11
+ </summary></documentation></annotation></element><element name="reaction" minOccurs="0" maxOccurs="1" type="t:codable-value"><annotation><documentation><summary>
12
+ The description of the symptoms of this
13
+ allergic reaction.
14
+ </summary></documentation></annotation></element><element name="treatment" type="t:codable-value" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
15
+ A description of the treatment taken for this
16
+ allergic reaction.
17
+ </summary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,39 @@
1
+ <schema xmlns:allergy="urn:com.microsoft.wc.thing.allergy" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.allergy"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>52bf9104-2c5e-4f1f-a66d-552ebcc53df7</type-id><type-name>Allergy</type-name><summary>
2
+ Information related to an allergy.
3
+ </summary><remarks>
4
+ This thing type describes an allergy a person has. The
5
+ allergic-episode type defines an occurrence of that
6
+ episode resulting in symptoms.
7
+ </remarks><effective-date-element>first-observed</effective-date-element></documentation></annotation><element name="allergy"><complexType><annotation><documentation><summary>
8
+ Information related to an allergy.
9
+ </summary><remarks>
10
+ This thing type describes an allergy a person has. The
11
+ allergic-episode type defines an occurrence of that
12
+ episode resulting in symptoms.
13
+ </remarks></documentation></annotation><sequence><element name="name" type="t:codable-value"><annotation><documentation><summary>
14
+ The name of the allergy.
15
+ </summary></documentation></annotation></element><element name="reaction" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
16
+ A description of a typical reaction to the
17
+ allergen.
18
+ </summary><preferred-vocabulary>icd9cm</preferred-vocabulary></documentation></annotation></element><element name="first-observed" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
19
+ The approximate date and time when the allergy
20
+ was first observed.
21
+ </summary></documentation></annotation></element><element name="allergen-type" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
22
+ The allergen type provides a general category of
23
+ the source of the allergic reaction.
24
+ </summary><remarks>
25
+ Examples include medication (penicillin,
26
+ sulfonamides, etc.), food (peanuts, shell fish,
27
+ wheat, etc.), animal (bee stings, canine,
28
+ feline, etc.), plants (ragweed, birch, etc.),
29
+ environmental (smoke, smog, dust, etc.).
30
+ </remarks><preferred-vocabulary>allergen-type</preferred-vocabulary></documentation></annotation></element><element name="allergen-code" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
31
+ The clinical allergen code.
32
+ </summary><preferred-vocabulary>icd9cm</preferred-vocabulary></documentation></annotation></element><element name="treatment-provider" type="t:person" minOccurs="0"><annotation><documentation><summary>
33
+ Information about the treatment provider for
34
+ this allergy.
35
+ </summary></documentation></annotation></element><element name="treatment" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
36
+ The possible treatment description for this allergy.
37
+ </summary></documentation></annotation></element><element name="is-negated" type="boolean" minOccurs="0"><annotation><documentation><summary>
38
+ True if the allergic reation is negated with treatment.
39
+ </summary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,42 @@
1
+ <schema xmlns:app="urn:com.microsoft.wc.thing.application" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.application"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>a5033c9d-08cf-4204-9bd3-cb412ce39fc0</type-id><type-name>Application-Specific Information</type-name><summary>
2
+ Defines a thing type to store arbitrary application
3
+ data.
4
+ </summary><remarks>
5
+ Applications are responsible for using the format-appid
6
+ and format-tag to guarantee uniques of the data format.
7
+ </remarks><effective-date-element>when</effective-date-element></documentation></annotation><element name="app-specific"><complexType><annotation><documentation><summary>
8
+ Defines a thing type to store arbitrary application
9
+ data.
10
+ </summary><remarks>
11
+ Applications are responsible for using the format-appid
12
+ and format-tag to guarantee uniques of the data format.
13
+ </remarks></documentation></annotation><sequence><element name="format-appid" minOccurs="1" maxOccurs="1" type="string"><annotation><documentation><summary>
14
+ The unique application identifier issued to the
15
+ application by the Microsoft Health Service of
16
+ the application that "owns" this format.
17
+ </summary><remarks>
18
+ The application id gives each application a
19
+ namespace in which to create unique
20
+ format-tags. This does not limit which apps can
21
+ use the type. If an application format becomes
22
+ popular it can become a de facto standard.
23
+ </remarks></documentation></annotation></element><element name="format-tag" minOccurs="1" maxOccurs="1" type="string"><annotation><documentation><summary>
24
+ A unique tag that identifies the 'subtype' of
25
+ the thing.
26
+ </summary><remarks>
27
+ Applications are responsible for the uniqueness
28
+ of this element.
29
+ </remarks></documentation></annotation></element><element name="when" minOccurs="0" maxOccurs="1" type="d:date-time"><annotation><documentation><summary>
30
+ The date and time of the thing.
31
+ </summary><remarks>
32
+ If not specified, the effective date will
33
+ be the date the thing was created.
34
+ </remarks></documentation></annotation></element><element name="summary" minOccurs="1" maxOccurs="1" type="string"><annotation><documentation><summary>
35
+ A descriptive display text for this thing.
36
+ </summary></documentation></annotation></element><any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="skip"><annotation><documentation><summary>
37
+ Application specific data in XML form.
38
+ </summary><remarks>
39
+ An application can define any arbitrary XML
40
+ as it's data. It may or may not adhere to
41
+ a published schema.
42
+ </remarks></documentation></annotation></any></sequence></complexType></element></schema>
@@ -0,0 +1,24 @@
1
+ <schema xmlns:appt="urn:com.microsoft.wc.thing.appointment" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.appointment"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>4B18AEB6-5F01-444C-8C70-DBF13A2F510B</type-id><type-name>Appointment</type-name><summary>
2
+ Information related to a medical appointment.
3
+ </summary><remarks>
4
+ This thing type describes the appointment a person has.
5
+ </remarks><effective-date-element>when</effective-date-element></documentation></annotation><element name="appointment"><complexType><annotation><documentation><summary>
6
+ Information related to a medical appointment.
7
+ </summary><remarks>
8
+ This thing type describes the appointment a person has.
9
+ </remarks></documentation></annotation><sequence><element name="when" type="d:date-time"><annotation><documentation><summary>
10
+ The date and time of the appointment.
11
+ </summary></documentation></annotation></element><element name="duration" type="t:duration-value" minOccurs="0"><annotation><documentation><summary>
12
+ The duration of the medical appointment.
13
+ </summary></documentation></annotation></element><element name="service" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
14
+ The type of service provided by the medical appointment.
15
+ </summary></documentation></annotation></element><element name="clinic" type="t:person" minOccurs="0"><annotation><documentation><summary>
16
+ The clinic information for the medical
17
+ appointment.
18
+ </summary></documentation></annotation></element><element name="specialty" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
19
+ The specialty for the medical appointment.
20
+ </summary><preferred-vocabulary>medical-specialties-</preferred-vocabulary></documentation></annotation></element><element name="status" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
21
+ The status of the medical appointment.
22
+ </summary><preferred-vocabulary>appointment-status-</preferred-vocabulary></documentation></annotation></element><element name="care-class" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
23
+ The care class for a medical appointment.
24
+ </summary><preferred-vocabulary>appointment-care-class-</preferred-vocabulary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,44 @@
1
+ <schema xmlns:iu="urn:com.microsoft.wc.thing.inhaler-use" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.inhaler-use"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>03efe378-976a-42f8-ae1e-507c497a8c6d</type-id><type-name>Asthma Inhaler Usage</type-name><summary>
2
+ A single use of an inhaler.
3
+ </summary><remarks>
4
+ Note, this may wrap more than one "dose" if multiple
5
+ puffs per use are prescribed.
6
+ </remarks><effective-date-element>when</effective-date-element></documentation></annotation><element name="asthma-inhaler-use"><complexType><annotation><documentation><summary>
7
+ A single use of an inhaler.
8
+ </summary><remarks>
9
+ Note, this may wrap more than one "dose" if multiple
10
+ puffs per use are prescribed.
11
+ </remarks></documentation></annotation><sequence><element name="when" type="d:date-time"><annotation><documentation><summary>
12
+ The date and time when the inhaler was used.
13
+ </summary></documentation></annotation></element><element name="drug" type="t:codable-value"><annotation><documentation><summary>
14
+ The name of the drug in the canister.
15
+ </summary><remarks>
16
+ For example, 'ventolin' or 'albuterol'.
17
+ </remarks></documentation></annotation></element><element name="strength" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
18
+ The textual description of the drug strength.
19
+ </summary><remarks>
20
+ For example, '44 mcg / puff'.
21
+ </remarks></documentation></annotation></element><element name="dose-count" type="int" minOccurs="0"><annotation><documentation><summary>
22
+ The number of doses used.
23
+ </summary><remarks>
24
+ A dose is one puff.
25
+ </remarks></documentation></annotation></element><element name="device-id" type="string" minOccurs="0"><annotation><documentation><summary>
26
+ The unique id or serial number for the
27
+ canister.
28
+ </summary><remarks>
29
+ The id can be used to correlate uses.
30
+ </remarks></documentation></annotation></element><element name="dose-purpose" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
31
+ An enumeration of the possible purposes the
32
+ inhaler usage is targeting.
33
+ </summary><remarks>
34
+ Examples include; relief (the dose purpose is
35
+ intended to relieve immediate asthma symptoms),
36
+ prevention (the dose purpose is intended to
37
+ prevent asthma symptoms), control (the dose
38
+ purpose is intended to control the impact of
39
+ current asthma symptoms), other (the dose
40
+ purpose is known, but other than to relieve,
41
+ prevent or control asthma symptoms), and
42
+ undefined (there is not enough information
43
+ about the inhaler usage to discern purpose).
44
+ </remarks><preferred-vocabulary>inhaler-dose-purpose</preferred-vocabulary></documentation></annotation></element></sequence></complexType></element></schema>
@@ -0,0 +1,99 @@
1
+ <schema xmlns:inhaler="urn:com.microsoft.wc.thing.inhaler" xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.inhaler"><import namespace="urn:com.microsoft.wc.thing.types" schemaLocation="base.xsd" /><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><annotation><documentation><type-id>ff9ce191-2096-47d8-9300-5469a9883746</type-id><type-name>Asthma Inhaler</type-name><summary>
2
+ Any inhaler unit used to treat asthma.
3
+ </summary><remarks>
4
+ The inhaler may or may not have a device component.
5
+ Each new canister should have a new inhaler thing, even
6
+ if there is a containing device that is reusable.
7
+ Changes in regimen (min/max doses per day) should also
8
+ cause a new thing to be created.
9
+ </remarks></documentation></annotation><simpleType name="dow"><annotation><documentation><summary>
10
+ The day of the week.
11
+ </summary><remarks>
12
+ 1 = Sunday
13
+ 2 = Monday
14
+ 3 = Tuesday
15
+ 4 = Wednesday
16
+ 5 = Thursday
17
+ 6 = Friday
18
+ 7 = Saturday
19
+ </remarks></documentation></annotation><restriction base="int"><minInclusive value="1" /><maxInclusive value="7" /></restriction></simpleType><complexType name="alert"><annotation><documentation><summary>
20
+ A weekly alert schedule.
21
+ </summary><remarks>
22
+ A weekly alert schedule consists of one or more days of the
23
+ week plus one or more time values.
24
+ </remarks></documentation></annotation><sequence><element name="dow" type="inhaler:dow" minOccurs="1" maxOccurs="7"><annotation><documentation><summary>
25
+ The day(s) of the week the alert is effective.
26
+ </summary></documentation></annotation></element><element name="time" type="d:time" minOccurs="1" maxOccurs="unbounded"><annotation><documentation><summary>
27
+ The time(s) of day the alert is scheduled.
28
+ </summary></documentation></annotation></element></sequence></complexType><simpleType name="purpose"><annotation><documentation><summary>
29
+ The intended purpose of the inhaler.
30
+ </summary></documentation></annotation><restriction base="string"><enumeration value="Control"><annotation><documentation><summary>
31
+ To control the onset of attacks.
32
+ </summary></documentation></annotation></enumeration><enumeration value="Rescue"><annotation><documentation><summary>
33
+ To rescue during an attack.
34
+ </summary></documentation></annotation></enumeration><enumeration value="Combination"><annotation><documentation><summary>
35
+ A combination of control and rescue.
36
+ </summary></documentation></annotation></enumeration></restriction></simpleType><element name="asthma-inhaler"><complexType><annotation><documentation><summary>
37
+ Any inhaler unit used to treat asthma.
38
+ </summary><remarks>
39
+ The inhaler may or may not have a device component.
40
+ Each new canister should have a new inhaler thing, even
41
+ if there is a containing device that is reusable.
42
+ Changes in regimen (min/max doses per day) should also
43
+ cause a new thing to be created.
44
+ </remarks></documentation></annotation><sequence><element name="drug" type="t:codable-value" minOccurs="1" maxOccurs="1"><annotation><documentation><summary>
45
+ The name of the drug in the canister.
46
+ </summary><remarks>
47
+ For example, 'ventolin' or 'albuterol'.
48
+ </remarks></documentation></annotation></element><element name="strength" type="t:codable-value" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
49
+ The textual description of the drug strength.
50
+ </summary><remarks>
51
+ For example, '44 mcg / puff'.
52
+ </remarks></documentation></annotation></element><element name="purpose" type="inhaler:purpose" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
53
+ The purpose for the inhaler.
54
+ </summary></documentation></annotation></element><element name="start-date" type="d:approx-date-time" minOccurs="1" maxOccurs="1"><annotation><documentation><summary>
55
+ The approximate date of when the inhaler
56
+ started being used.
57
+ </summary></documentation></annotation></element><element name="stop-date" type="d:approx-date-time" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
58
+ The approximate date of when the inhaler
59
+ was retired.
60
+ </summary><remarks>
61
+ Absence of this element implied that as far
62
+ as we know the canister is still in use.
63
+ </remarks></documentation></annotation></element><element name="expiration-date" type="d:approx-date-time" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
64
+ The date the canister is clinically expired.
65
+ </summary></documentation></annotation></element><element name="device-id" type="string" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
66
+ The unique id or serial number for the canister.
67
+ </summary><remarks>
68
+ If available, this value can be used to
69
+ correlate uses.
70
+ </remarks></documentation></annotation></element><element name="initial-doses" type="int" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
71
+ The number of doses in the unit at the time the
72
+ thing instance was created.
73
+ </summary><remarks>
74
+ This may not be the number the canister started
75
+ with since the expectation is that a change in
76
+ regimen will cause a new thing to be created as
77
+ well.<br /><br />
78
+ A dose is one puff.
79
+ </remarks></documentation></annotation></element><element name="min-daily-doses" type="int" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
80
+ The minimum number of doses that should be
81
+ taken per day.
82
+ </summary><remarks>
83
+ A dose is one puff.
84
+ </remarks></documentation></annotation></element><element name="max-daily-doses" type="int" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
85
+ The maximum number of doses that should be
86
+ taken per day.
87
+ </summary><remarks>
88
+ A dose is one puff.
89
+ </remarks></documentation></annotation></element><element name="can-alert" type="boolean" minOccurs="0" maxOccurs="1"><annotation><documentation><summary>
90
+ States whether the inhaler can show alerts.
91
+ </summary></documentation></annotation></element><element name="alert" type="inhaler:alert" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
92
+ A set of the alert times that the device should
93
+ activate its feature.
94
+ </summary><remarks>
95
+ Note that his information can change without
96
+ requiring a new thing to be created. The device
97
+ data is the key for alerts, we just keep it
98
+ here for display purposes.
99
+ </remarks></documentation></annotation></element></sequence></complexType></element></schema>