rubyhealthvault 0.0.1

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 (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,1000 @@
1
+ <schema xmlns:t="urn:com.microsoft.wc.thing.types" xmlns:d="urn:com.microsoft.wc.dates" xmlns:wct="urn:com.microsoft.wc.types" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.microsoft.wc.thing.types"><import namespace="urn:com.microsoft.wc.dates" schemaLocation="dates.xsd" /><import namespace="urn:com.microsoft.wc.types" schemaLocation="types.xsd" /><!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2
+ Shared Types
3
+
4
+ For use across multiple thing types. Think hard before putting
5
+ something into this file, because it increases our dependency
6
+ management signficantly
7
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --><annotation><documentation><summary>
8
+ Types that are used across multiple thing types.
9
+ </summary><remarks>
10
+ For instance, a weight-value type is used for the weight
11
+ thing type as well as the dietary-intake-daily thing type.
12
+ </remarks></documentation></annotation><simpleType name="positiveDouble"><annotation><documentation><summary>
13
+ A number, including a decimal point, greater than
14
+ zero.
15
+ </summary><remarks>
16
+ This type derives from double and ensures that all
17
+ values are greater than zero.
18
+ </remarks></documentation></annotation><restriction base="double"><minExclusive value="0" /></restriction></simpleType><simpleType name="nonNegativeDouble"><annotation><documentation><summary>
19
+ A number, including a decimal point, greater than or equal
20
+ to zero.
21
+ </summary><remarks>
22
+ This type derives from double and ensures that all
23
+ values are greater than or equal to zero.
24
+ </remarks></documentation></annotation><restriction base="double"><minInclusive value="0" /></restriction></simpleType><simpleType name="percentage"><annotation><documentation><summary>
25
+ A decimal number between zero and one.
26
+ </summary><remarks>
27
+ This type derives from double and ensures that all
28
+ values are between zero and one inclusive.
29
+ </remarks></documentation></annotation><restriction base="double"><minInclusive value="0" /><maxInclusive value="1" /></restriction></simpleType><complexType name="duration-value"><annotation><documentation><summary>
30
+ A pair of approximate date-times used to create a
31
+ range.
32
+ </summary><remarks>
33
+ This type derives uses two approximate date-times to
34
+ provide a duration range.
35
+ </remarks></documentation></annotation><sequence><element name="start-date" type="d:approx-date-time"><annotation><documentation><summary>
36
+ The approximate start date and time for the duration range.
37
+ </summary></documentation></annotation></element><element name="end-date" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
38
+ The approximate end date and time for the duration range.
39
+ </summary><remarks>
40
+ The end-date is optional in order to support indefinite durations.
41
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="double-range"><annotation><documentation><summary>
42
+ A pair of doubles used to create a
43
+ range.
44
+ </summary></documentation></annotation><sequence><element name="minimum-range" type="double"><annotation><documentation><summary>
45
+ The minimum value for the range.
46
+ </summary></documentation></annotation></element><element name="maximum-range" type="double"><annotation><documentation><summary>
47
+ The maximum value for the range.
48
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="display-value"><annotation><documentation><summary>
49
+ A numeric value used for display purposes
50
+ and tagged with arbitrary units.
51
+ </summary><remarks>
52
+ The Microsoft Health Service standardizes its storage
53
+ of data like length, weight, and temperature so that
54
+ applications can process the data more easily. So,
55
+ in order to support the user's preference of units
56
+ the display value type is used to maintain the user
57
+ entered value such that any application can display
58
+ the value back to the user in the same form they
59
+ entered it even though the data is stored in a base
60
+ unit value. This prevents rounding errors on the
61
+ data when converting to and from the base unit of
62
+ measure.<br /><br />
63
+ The display value should be set whenever data is taken
64
+ directly from the user through UI and it should be
65
+ used to show data to the user when available.
66
+ </remarks></documentation></annotation><simpleContent><extension base="double"><attribute name="units" type="string" use="required"><annotation><documentation><summary>
67
+ An arbitrary string representing the units
68
+ of measure for the value.
69
+ </summary><remarks>
70
+ For example, the base unit of measure for
71
+ length is meters, this display value may
72
+ contain a length in feet. The units attribute
73
+ would contain "feet" or an appropriate
74
+ abbreviation.
75
+ </remarks></documentation></annotation></attribute><attribute name="units-code" type="string" use="optional"><annotation><documentation><summary>
76
+ The Microsoft Health Lexicon code for the unit
77
+ of measure.
78
+ </summary><remarks>
79
+ If the unit of measure is available from one of
80
+ the Microsoft Health Lexicon vocabularies, this
81
+ attribute is the code in the lexicon for that
82
+ unit.<br /><br />
83
+ The advantage of using the units-code is that
84
+ the unit can be easily translated for use by
85
+ any application for the supported languages.
86
+ </remarks></documentation></annotation></attribute></extension></simpleContent></complexType><complexType name="weight-value"><annotation><documentation><summary>
87
+ A weight measurement.
88
+ </summary><remarks>
89
+ A weight measurement consists of the value in kilograms,
90
+ which is the base unit of measurement for weight, and
91
+ an optional display value. The display value is used to
92
+ store the weight measurement in the user's preference of
93
+ weight units. This avoids rounding errors when
94
+ converting to and back from kilograms.
95
+ </remarks></documentation></annotation><sequence><element name="kg" type="t:positiveDouble"><annotation><documentation><summary>
96
+ The weight measurement in kilograms.
97
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
98
+ The display value for the weight measurement.
99
+ </summary><remarks>
100
+ The display value contains the weight measurement
101
+ value stored in the user's preference of units.
102
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="length-value"><annotation><documentation><summary>
103
+ A length measurement.
104
+ </summary><remarks>
105
+ A length measurement consists of the value in meters,
106
+ which is the base unit of measurement for length, and
107
+ an optional display value. The display value is used to
108
+ store the length measurement in the user's preference of
109
+ length units. This avoids rounding errors when
110
+ converting to and back from meters.
111
+ </remarks></documentation></annotation><sequence><element name="m" type="t:positiveDouble"><annotation><documentation><summary>
112
+ The length measurement in meters.
113
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
114
+ The display value for the length measurement.
115
+ </summary><remarks>
116
+ The display value contains the length measurement
117
+ value stored in the user's preference of units.
118
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="flow-value"><annotation><documentation><summary>
119
+ A flow measurement.
120
+ </summary><remarks>
121
+ A flow measurement consists of the value in liters per
122
+ second (L/s), which is the base unit of measurement for
123
+ flow, and an optional display value. The display value is
124
+ used to store the flow measurement in the user'
125
+ s preference of flow units. This avoids rounding errors
126
+ when converting to and back from L/s.
127
+ </remarks></documentation></annotation><sequence><element name="liters-per-second" type="t:positiveDouble"><annotation><documentation><summary>
128
+ The flow measurement in liters per second (L/s).
129
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
130
+ The display value for the flow measurement.
131
+ </summary><remarks>
132
+ The display value contains the flow measurement
133
+ value stored in the user's preference of units.
134
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="altitude-value"><annotation><documentation><summary>
135
+ An altitude measurement.
136
+ </summary><remarks>
137
+ An altitude measurement consists of the value in meters
138
+ above sea level,
139
+ which is the base unit of measurement for altitude, and
140
+ an optional display value. The display value is used to
141
+ store the altitude measurement in the user's preference of
142
+ altitude units. This avoids rounding errors when
143
+ converting to and back from meters.
144
+ </remarks></documentation></annotation><sequence><element name="m" type="double"><annotation><documentation><summary>
145
+ The altitude measurement in meters.
146
+ </summary><remarks>
147
+ A negative value indicates the measurement was
148
+ take below sea level.
149
+ </remarks></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
150
+ The display value for the altitude measurement.
151
+ </summary><remarks>
152
+ The display value contains the altitude measurement
153
+ value stored in the user's preference of units.
154
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="temperature-value"><annotation><documentation><summary>
155
+ A temperature measurement.
156
+ </summary><remarks>
157
+ A temperature measurement consists of the value in Celsuis
158
+ (C), which is the base unit of measurement for temperature,
159
+ and an optional display value. The display value is used to
160
+ store the temperature in the user's preference of
161
+ units. This avoids rounding errors when
162
+ converting to and back from Celsius.
163
+ </remarks></documentation></annotation><sequence><element name="celsius" type="double"><annotation><documentation><summary>
164
+ The temperature measurement in Celsius(C).
165
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
166
+ The display value for the temperature measurement.
167
+ </summary><remarks>
168
+ The display value contains the temperature measurement
169
+ value stored in the user's preference of units.
170
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="pace-value"><annotation><documentation><summary>
171
+ A pace measurement.
172
+ </summary><remarks>
173
+ A pace measurement consists of the value in seconds per
174
+ 100 meters, which is the base unit of measurement for
175
+ pace, and an optional display value. The display value is
176
+ used to store the pace in the user's preference of
177
+ units. This avoids rounding errors when
178
+ converting to and back from seconds per 100 meters.
179
+ </remarks></documentation></annotation><sequence><element name="seconds-per-hundred-meters" type="t:positiveDouble"><annotation><documentation><summary>
180
+ The pace measurement in seconds per 100 meters.
181
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
182
+ The display value for the pace measurement.
183
+ </summary><remarks>
184
+ The display value contains the pace measurement
185
+ value stored in the user's preference of units.
186
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="power-value"><annotation><documentation><summary>
187
+ A power measurement.
188
+ </summary><remarks>
189
+ A power measurement consists of the value in watts,
190
+ which is the base unit of measurement for
191
+ power, and an optional display value. The display value is
192
+ used to store the power in the user's preference of
193
+ units. This avoids rounding errors when
194
+ converting to and back from watts.
195
+ </remarks></documentation></annotation><sequence><element name="watts" type="t:positiveDouble"><annotation><documentation><summary>
196
+ The power measurement in watts.
197
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
198
+ The display value for the power measurement.
199
+ </summary><remarks>
200
+ The display value contains the power measurement
201
+ value stored in the user's preference of units.
202
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="torque-value"><annotation><documentation><summary>
203
+ A torque measurement.
204
+ </summary><remarks>
205
+ A torque measurement consists of the value in newton meters,
206
+ which is the base unit of measurement for
207
+ torque, and an optional display value. The display value is
208
+ used to store the torque in the user's preference of
209
+ units. This avoids rounding errors when
210
+ converting to and back from newton meters.
211
+ </remarks></documentation></annotation><sequence><element name="newton-meters" type="t:positiveDouble"><annotation><documentation><summary>
212
+ The torque measurement in newton meters.
213
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
214
+ The display value for the torque measurement.
215
+ </summary><remarks>
216
+ The display value contains the torque measurement
217
+ value stored in the user's preference of units.
218
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="speed-value"><annotation><documentation><summary>
219
+ A speed measurement.
220
+ </summary><remarks>
221
+ A speed measurement consists of the value in meters per
222
+ second (m/s), which is the base unit of measurement for
223
+ speed, and an optional display value. The display value
224
+ is used to store the speed in the user's preference of
225
+ units. This avoids rounding errors when
226
+ converting to and back from m/s.
227
+ </remarks></documentation></annotation><sequence><element name="meters-per-second" type="t:positiveDouble"><annotation><documentation><summary>
228
+ The speed measurement in meters per second (m/s).
229
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
230
+ The display value for the speed measurement.
231
+ </summary><remarks>
232
+ The display value contains the speed measurement
233
+ value stored in the user's preference of units.
234
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="blood-glucose-value"><annotation><documentation><summary>
235
+ A blood glucose measurement.
236
+ </summary><remarks>
237
+ A blood glucose measurement consists of the value in millimoles per liter (mmol/L),
238
+ which is the base unit of measurement for blood glucose, and
239
+ an optional display value. The display value is used to
240
+ store the blood glucose measurement in the user's preference of
241
+ measurement units. This avoids rounding errors when
242
+ converting to and back from mmol/L.
243
+ </remarks></documentation></annotation><sequence><element name="mmolPerL" type="t:positiveDouble"><annotation><documentation><summary>
244
+ The blood glucose measurement in millimoles per liter.
245
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
246
+ The display value for the blood glucose measurement.
247
+ </summary><remarks>
248
+ The display value contains the blood glucose measurement
249
+ value stored in the user's preference of units.
250
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="insulin-injection-value"><annotation><documentation><summary>
251
+ A insulin injection measurement.
252
+ </summary><remarks>
253
+ A insulin injection consists of the value in IE units (1/100ml),
254
+ which is the base unit of insulin injections, and
255
+ an optional display value. The display value is used to
256
+ store the insulin injection amount the user's preference of
257
+ units. This avoids rounding errors when
258
+ converting to and back from IE units
259
+ </remarks></documentation></annotation><sequence><element name="IE" type="t:positiveDouble"><annotation><documentation><summary>
260
+ The insulin injeciton amount in IE units (1/100ml).
261
+ </summary></documentation></annotation></element><element name="display" type="t:display-value" minOccurs="0"><annotation><documentation><summary>
262
+ The display value for the insulin injection amount.
263
+ </summary><remarks>
264
+ The display value contains the insulin injection amount
265
+ value stored in the user's preference of units.
266
+ </remarks></documentation></annotation></element></sequence></complexType><simpleType name="dow"><annotation><documentation><summary>
267
+ The day of the week.
268
+ </summary><remarks>
269
+ 1 = Sunday
270
+ 2 = Monday
271
+ 3 = Tuesday
272
+ 4 = Wednesday
273
+ 5 = Thursday
274
+ 6 = Friday
275
+ 7 = Saturday
276
+ </remarks></documentation></annotation><restriction base="int"><minInclusive value="1" /><maxInclusive value="7" /></restriction></simpleType><simpleType name="goal-status"><annotation><documentation><summary>
277
+ An enumeration of the possible goal states.
278
+ </summary></documentation></annotation><restriction base="string"><enumeration value="Active"><annotation><documentation><summary>
279
+ The goal is actively being worked toward.
280
+ </summary></documentation></annotation></enumeration><enumeration value="Achieved"><annotation><documentation><summary>
281
+ The goal has been achieved.
282
+ </summary></documentation></annotation></enumeration><enumeration value="Abandoned"><annotation><documentation><summary>
283
+ The goal has been abandoned.
284
+ </summary></documentation></annotation></enumeration></restriction></simpleType><complexType name="goal"><annotation><documentation><summary>
285
+ Defines a health or fitness goal.
286
+ </summary><remarks>
287
+ A goal may be a short-term achievement like losing
288
+ weight or a long-term goal like competing in a marathon.
289
+ </remarks></documentation></annotation><sequence><element name="target-date" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
290
+ The date upon which the person wants to complete
291
+ the goal.
292
+ </summary></documentation></annotation></element><element name="completion-date" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
293
+ The date on which the goal was completed.
294
+ </summary></documentation></annotation></element><element name="status" type="t:goal-status" minOccurs="0"><annotation><documentation><summary>
295
+ The current status of the goal.
296
+ </summary><remarks>
297
+ The status is not automatically updated. "Active"
298
+ goals may need to be evaluated to determine if they
299
+ have been "achieved".
300
+ </remarks></documentation></annotation></element></sequence></complexType><simpleType name="one-to-five"><annotation><documentation><summary>
301
+ An integer value from one to five.
302
+ </summary><remarks>
303
+ This type is used in rating something. For instance,
304
+ an aerobic session intensity may be rated from one
305
+ to five where five is the most intense and one is the
306
+ least intense.
307
+ </remarks></documentation></annotation><restriction base="int"><minInclusive value="1" /><maxInclusive value="5" /></restriction></simpleType><complexType name="sample"><annotation><documentation><summary>
308
+ Defines a single sample.
309
+ </summary></documentation></annotation><sequence><element name="time-offset" type="t:nonNegativeDouble"><annotation><documentation><summary>
310
+ Offset is seconds from sample set base time.
311
+ </summary></documentation></annotation></element><element name="note" type="string" minOccurs="0"><annotation><documentation><summary>
312
+ Description of sample.
313
+ </summary></documentation></annotation></element><element name="value" type="string" minOccurs="0"><annotation><documentation><summary>
314
+ Value of sample.
315
+ </summary><remarks>
316
+ The value of the sample can be any string. The
317
+ value depends on the type of sample. Some sample
318
+ types will have a simple int or double as the
319
+ value. Others will have a comma separated list.
320
+ For example, a "position" sample may have
321
+ "25E,66N" (longitude,latitude) as the value.
322
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="sample-set"><annotation><documentation><summary>
323
+ Defines a sample set.
324
+ </summary></documentation></annotation><sequence><element name="base-time" type="d:date-time"><annotation><documentation><summary>
325
+ Sample set base time from which samples are offset.
326
+ </summary></documentation></annotation></element><element name="sample-unit" type="string"><annotation><documentation><summary>
327
+ The unit that the value is stored in.
328
+ </summary><remarks>
329
+ Each sample contains a value. All samples in a
330
+ sample set should be stored using the same units.
331
+ This value is a text description of the units the
332
+ sample value is stored in. Use the
333
+ "sample-unit-code" to describe the units as a
334
+ dictionary code.
335
+ </remarks></documentation></annotation></element><element name="sample-unit-code" type="t:codable-value"><annotation><documentation><summary>
336
+ The dictionary code for the unit that the value
337
+ is stored in.
338
+ </summary><remarks>
339
+ Each sample contains a value. All samples in a
340
+ sample set should be stored using the same units.
341
+ </remarks></documentation></annotation></element><element name="sample" type="t:sample" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
342
+ Sample set samples.
343
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="aerobic-session"><annotation><documentation><summary>
344
+ Defines a lap within a single aerobic session.
345
+ </summary></documentation></annotation><sequence><element name="mode" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
346
+ The type of activity for the session.
347
+ </summary><remarks>
348
+ The mode is the type of activity for the session,
349
+ like biking, running, etc. The most common
350
+ activities are part the of the Microsoft Health
351
+ Lexicon and should be referenced using the code
352
+ retrieved by calling GetVocabulary with
353
+ "aerobic-activities" as the vocabulary name.<br /><br />
354
+ For activities that are not in the Microsoft
355
+ Health Lexicon you can add the value to the
356
+ text element of the codable value.
357
+ </remarks></documentation></annotation></element><element name="distance" type="t:length-value" minOccurs="0"><annotation><documentation><summary>
358
+ The distance covered in the session.
359
+ </summary><remarks>
360
+ Distances are stored in meters. The application
361
+ must convert the distance entered by the user
362
+ into meters and should also store the distance
363
+ and units entered by the user in the display-value
364
+ so that it can be displayed to the user in their
365
+ preferred unit of measure when viewing the data.
366
+ </remarks></documentation></annotation></element><element name="minutes" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
367
+ The duration of the session in minutes.
368
+ </summary></documentation></annotation></element><element name="intensity" type="t:one-to-five" minOccurs="0"><annotation><documentation><summary>
369
+ The subjective average intensity of the session.
370
+ </summary><remarks>
371
+ Intensity is measured on a scale from one to five
372
+ where one is easy and five is the most intense.
373
+ </remarks></documentation></annotation></element><element name="peak-heartrate" type="positiveInteger" minOccurs="0"><annotation><documentation><summary>
374
+ The highest heart rate reached during the session.
375
+ </summary><remarks>
376
+ The peak heart rate for a session differs from the
377
+ person's maximum heart rate in that a person most
378
+ likely will not reach their maximum heart rate
379
+ during an aerobic session. This measurement defines
380
+ the highest heart rate recorded during the session.
381
+ </remarks></documentation></annotation></element><element name="avg-heartrate" type="positiveInteger" minOccurs="0"><annotation><documentation><summary>
382
+ The average heart rate reached during the session.
383
+ </summary></documentation></annotation></element><element name="min-heartrate" type="positiveInteger" minOccurs="0"><annotation><documentation><summary>
384
+ The minimum heart rate reached during the session.
385
+ </summary><remarks>
386
+ This is measured in beats per minute.
387
+ </remarks></documentation></annotation></element><element name="energy" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
388
+ The food energy expended during the session.
389
+ </summary><remarks>
390
+ This is measured in kilojoules .
391
+ </remarks></documentation></annotation></element><element name="energy-from-fat" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
392
+ The food energy burned from fat during the session.
393
+ </summary><remarks>
394
+ This is measured in kilojoules.
395
+ </remarks></documentation></annotation></element><element name="peak-speed" type="t:speed-value" minOccurs="0"><annotation><documentation><summary>
396
+ The maximum speed achieved during the session.
397
+ </summary><remarks>
398
+ This is measured in meters per second.
399
+ </remarks></documentation></annotation></element><element name="avg-speed" type="t:speed-value" minOccurs="0"><annotation><documentation><summary>
400
+ The average speed achieved during the session.
401
+ </summary><remarks>
402
+ This is measured in meters per second.
403
+ </remarks></documentation></annotation></element><element name="min-speed" type="t:speed-value" minOccurs="0"><annotation><documentation><summary>
404
+ The minimum speed achieved during the session.
405
+ </summary><remarks>
406
+ This is measured in meters per second.
407
+ </remarks></documentation></annotation></element><element name="peak-pace" type="t:pace-value" minOccurs="0"><annotation><documentation><summary>
408
+ The maximum pace achieved during the session.
409
+ </summary><remarks>
410
+ This is measured in seconds per 100 meters.
411
+ </remarks></documentation></annotation></element><element name="avg-pace" type="t:pace-value" minOccurs="0"><annotation><documentation><summary>
412
+ The average pace achieved during the session.
413
+ </summary><remarks>
414
+ This is measured in seconds per 100 meters.
415
+ </remarks></documentation></annotation></element><element name="min-pace" type="t:pace-value" minOccurs="0"><annotation><documentation><summary>
416
+ The minimum pace achieved during the session.
417
+ </summary><remarks>
418
+ This is measured in seconds per 100 meters.
419
+ </remarks></documentation></annotation></element><element name="peak-power" type="t:power-value" minOccurs="0"><annotation><documentation><summary>
420
+ The maximum power achieved during the session.
421
+ </summary><remarks>
422
+ This is measured in watts.
423
+ </remarks></documentation></annotation></element><element name="avg-power" type="t:power-value" minOccurs="0"><annotation><documentation><summary>
424
+ The average power achieved during the session.
425
+ </summary><remarks>
426
+ This is measured in watts.
427
+ </remarks></documentation></annotation></element><element name="min-power" type="t:power-value" minOccurs="0"><annotation><documentation><summary>
428
+ The minimum power achieved during the session.
429
+ </summary><remarks>
430
+ This is measured in watts.
431
+ </remarks></documentation></annotation></element><element name="peak-torque" type="t:torque-value" minOccurs="0"><annotation><documentation><summary>
432
+ The maximum torque achieved during the session.
433
+ </summary><remarks>
434
+ This is measured in newton meters.
435
+ </remarks></documentation></annotation></element><element name="avg-torque" type="t:torque-value" minOccurs="0"><annotation><documentation><summary>
436
+ The average torque achieved during the session.
437
+ </summary><remarks>
438
+ This is measured in newton meters.
439
+ </remarks></documentation></annotation></element><element name="min-torque" type="t:torque-value" minOccurs="0"><annotation><documentation><summary>
440
+ The minimum torque achieved during the session.
441
+ </summary><remarks>
442
+ This is measured in newton meters.
443
+ </remarks></documentation></annotation></element><element name="left-right-balance" type="t:percentage" minOccurs="0"><annotation><documentation><summary>
444
+ The power output balance between left and right strokes.
445
+ </summary><remarks>
446
+ This is measured as a percentage (%) relating to the left.
447
+ For example, a value of 30 indicates that 30% of the power
448
+ came from the left, while 70% came from the right.
449
+ </remarks></documentation></annotation></element><element name="peak-cadence" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
450
+ The maximum cadence achieved during the session. T
451
+ </summary><remarks>
452
+ his is measured in revolutions per minute (rpm).
453
+ </remarks></documentation></annotation></element><element name="avg-cadence" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
454
+ The average cadence achieved during the session.
455
+ </summary><remarks>
456
+ This is measured in revolutions per minute (rpm).
457
+ </remarks></documentation></annotation></element><element name="min-cadence" type="t:positiveDouble" minOccurs="0"><annotation><documentation><summary>
458
+ The minimum cadence achieved during the session.
459
+ </summary><remarks>
460
+ This is measured in revolutions per minute (rpm).
461
+ </remarks></documentation></annotation></element><element name="peak-temperature" type="t:temperature-value" minOccurs="0"><annotation><documentation><summary>
462
+ The maximum temperature achieved during the session.
463
+ </summary><remarks>
464
+ This is measured in degrees Celsius (C).
465
+ </remarks></documentation></annotation></element><element name="avg-temperature" type="t:temperature-value" minOccurs="0"><annotation><documentation><summary>
466
+ The average temperature achieved during the session.
467
+ </summary><remarks>
468
+ This is measured in degrees Celsius (C).
469
+ </remarks></documentation></annotation></element><element name="min-temperature" type="t:temperature-value" minOccurs="0"><annotation><documentation><summary>
470
+ The minimum temperature achieved during the session.
471
+ </summary><remarks>
472
+ This is measured in degrees Celsius (C).
473
+ </remarks></documentation></annotation></element><element name="peak-altitude" type="t:altitude-value" minOccurs="0"><annotation><documentation><summary>
474
+ The maximum altitude achieved during the session.
475
+ </summary><remarks>
476
+ This is measured in meters above mean sea level.
477
+ </remarks></documentation></annotation></element><element name="avg-altitude" type="t:altitude-value" minOccurs="0"><annotation><documentation><summary>
478
+ The average altitude achieved during the session.
479
+ </summary><remarks>
480
+ This is measured in meters above mean sea level.
481
+ </remarks></documentation></annotation></element><element name="min-altitude" type="t:altitude-value" minOccurs="0"><annotation><documentation><summary>
482
+ The minimum altitude achieved during the session.
483
+ </summary><remarks>
484
+ This is measured in meters above mean sea level.
485
+ </remarks></documentation></annotation></element><element name="elevation-gain" type="t:length-value" minOccurs="0"><annotation><documentation><summary>
486
+ The gain in elevation achieved during the session.
487
+ </summary><remarks>
488
+ This is measured in meters.
489
+ </remarks></documentation></annotation></element><element name="elevation-loss" type="t:length-value" minOccurs="0"><annotation><documentation><summary>
490
+ The loss in elevation achieved during the session.
491
+ </summary><remarks>
492
+ This is measured in meters.
493
+ </remarks></documentation></annotation></element><element name="number-of-steps" type="nonNegativeInteger" minOccurs="0"><annotation><documentation><summary>
494
+ Number of steps taken in this session.
495
+ </summary></documentation></annotation></element><element name="number-of-aerobic-steps" type="nonNegativeInteger" minOccurs="0"><annotation><documentation><summary>
496
+ Total steps taken in the aerobic activity range.
497
+ </summary><remarks>
498
+ Total steps taken in the aerobic activity range. This will be less than or
499
+ equal to the total steps taken given that the participant may not remain
500
+ in the aerobic activity range for the entire session.
501
+ </remarks></documentation></annotation></element><element name="aerobic-step-minutes" type="t:nonNegativeDouble" minOccurs="0"><annotation><documentation><summary>
502
+ Total duration spent in the aerobic activity range.
503
+ </summary><remarks>
504
+ This item will be recorded in units of minutes.
505
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="aerobic-session-samples"><annotation><documentation><summary>
506
+ Defines sample sets for an aerobic session.
507
+ </summary></documentation></annotation><sequence><element name="heartrate-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
508
+ Heart rate sample set for aerobic session.
509
+ </summary><preferred-sample-value>
510
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
511
+ </preferred-sample-value></documentation></annotation></element><element name="distance-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
512
+ Distance sample set for aerobic session.
513
+ </summary><preferred-sample-value>
514
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
515
+ </preferred-sample-value></documentation></annotation></element><element name="position-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
516
+ Position sample set for aerobic session.
517
+ </summary><remarks>
518
+ Positions are expected to be in either
519
+ longitude/latitude or UTM coordinates.
520
+ </remarks></documentation></annotation></element><element name="speed-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
521
+ Speed sample set for aerobic session.
522
+ </summary><preferred-sample-value>
523
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
524
+ </preferred-sample-value></documentation></annotation></element><element name="pace-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
525
+ Pace sample set for aerobic session.
526
+ </summary><preferred-sample-value>
527
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
528
+ </preferred-sample-value></documentation></annotation></element><element name="power-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
529
+ Power sample set for aerobic session.
530
+ </summary><preferred-sample-value>
531
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
532
+ </preferred-sample-value></documentation></annotation></element><element name="torque-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
533
+ Torque sample set for aerobic session.
534
+ </summary><preferred-sample-value>
535
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
536
+ </preferred-sample-value></documentation></annotation></element><element name="cadence-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
537
+ Cadence sample set for aerobic session.
538
+ </summary><preferred-sample-value>
539
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
540
+ </preferred-sample-value></documentation></annotation></element><element name="temperature-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
541
+ Temperature sample set for aerobic session.
542
+ </summary><preferred-sample-value>
543
+ double
544
+ </preferred-sample-value></documentation></annotation></element><element name="altitude-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
545
+ Altitude sample set for aerobic session.
546
+ </summary><preferred-sample-value>
547
+ double
548
+ </preferred-sample-value></documentation></annotation></element><element name="air-pressure-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
549
+ Air pressure sample set for aerobic session.
550
+ </summary><preferred-sample-value>
551
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
552
+ </preferred-sample-value></documentation></annotation></element><element name="number-of-steps-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
553
+ Number of steps taken during this sample.
554
+ </summary><preferred-sample-value>
555
+ urn:com.microsoft.wc.thing.types.nonNegativeInteger
556
+ </preferred-sample-value></documentation></annotation></element><element name="number-of-aerobic-steps-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
557
+ Total steps taken in the aerobic activity range.
558
+ </summary><preferred-sample-value>
559
+ urn:com.microsoft.wc.thing.types.nonNegativeInteger
560
+ </preferred-sample-value><remarks>
561
+ Total steps taken in the aerobic activity range for the relevant sample.
562
+ This value will be less than or equal to the total steps taken given
563
+ that the participant may not remain in the aerobic activity range for
564
+ the entire sample.
565
+ </remarks></documentation></annotation></element><element name="aerobic-step-minutes-samples" type="t:sample-set" minOccurs="0"><annotation><documentation><summary>
566
+ Total duration spent in the aerobic activity range.
567
+ </summary><preferred-sample-value>
568
+ urn:com.microsoft.wc.thing.types.nonNegativeDouble
569
+ </preferred-sample-value><remarks>
570
+ This item will be recorded in units of minutes.
571
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="aerobic-lap-session"><annotation><documentation><summary>
572
+ One stage of the aerobic session.
573
+ </summary><remarks>
574
+ For example, one circuit of a running track or one length of a swimming pool.
575
+ Usually indicated by the person pressing the stopwatch during exercise.
576
+ This may occur multiple times in a session.
577
+ </remarks></documentation></annotation><sequence><element name="name" type="string" minOccurs="0"><annotation><documentation><summary>
578
+ Optional description for this lap, such as "lap 1".
579
+ </summary></documentation></annotation></element><element name="seconds-into-session" type="t:nonNegativeDouble" minOccurs="0"><annotation><documentation><summary>
580
+ The start time of the lap relative to the entire session.
581
+ </summary><remarks>
582
+ This is measured in seconds.
583
+ </remarks></documentation></annotation></element><element name="lap-session" type="t:aerobic-session" minOccurs="0"><annotation><documentation><summary>
584
+ The lap session aerobic measurements.
585
+ </summary></documentation></annotation></element></sequence></complexType><!-- Address --><complexType name="address"><annotation><documentation><summary>
586
+ Defines a physical or mailing address.
587
+ </summary><remarks>
588
+ An address may be used for either a mailing address or
589
+ physical location.
590
+ </remarks></documentation></annotation><sequence><element name="description" type="string" minOccurs="0"><annotation><documentation><summary>
591
+ A description of the address.
592
+ </summary><remarks>
593
+ For example, a person may label the address as
594
+ "My home address" or "My mailing address".
595
+ </remarks></documentation></annotation></element><element name="is-primary" type="boolean" minOccurs="0"><annotation><documentation><summary>
596
+ States if the addresses is the primary address
597
+ for contacting the person.
598
+ </summary><remarks>
599
+ If true, the address is the preferred address
600
+ for contacting the person.
601
+ </remarks></documentation></annotation></element><element name="street" type="string" maxOccurs="unbounded"><annotation><documentation><summary>
602
+ The street portion of the address.
603
+ </summary><remarks>
604
+ The street address may be made up of one or more
605
+ lines and should adhere to the standard for the
606
+ locale in which the address resides.
607
+ </remarks></documentation></annotation></element><element name="city" type="string"><annotation><documentation><summary>
608
+ The city portion of the address.
609
+ </summary></documentation></annotation></element><element name="state" type="string" minOccurs="0"><annotation><documentation><summary>
610
+ The state or province portion of the address.
611
+ </summary></documentation></annotation></element><!-- or province, etc. --><element name="postcode" type="string"><annotation><documentation><summary>
612
+ The postal code portion of the address.
613
+ </summary><remarks>
614
+ The postal code should adhere to the standard
615
+ for the locale in which the address resides.
616
+ </remarks></documentation></annotation></element><element name="country" type="string"><annotation><documentation><summary>
617
+ The country portion of the address.
618
+ </summary><remarks>
619
+ This should be a string representation of the
620
+ country as defined by the user. It is not used
621
+ for processing so it doesn't have to be an
622
+ ISO-3166 code. For example, a person could
623
+ refer to the United States of America as "US",
624
+ "USA", "United States", or "United States of
625
+ America".
626
+ </remarks></documentation></annotation></element></sequence></complexType><!-- phone --><complexType name="phone"><annotation><documentation><summary>
627
+ A phone number.
628
+ </summary></documentation></annotation><sequence><element name="description" type="string" minOccurs="0"><annotation><documentation><summary>
629
+ A person's description of the phone number.
630
+ </summary><remarks>
631
+ This is used to describe the phone number. For
632
+ example, "home", "mobile", "work", etc.
633
+ </remarks></documentation></annotation></element><element name="is-primary" type="boolean" minOccurs="0"><annotation><documentation><summary>
634
+ States if the phone number is the primary number
635
+ for contacting the person.
636
+ </summary><remarks>
637
+ If true, the phone number is the preferred number
638
+ for contacting the person.
639
+ </remarks></documentation></annotation></element><element name="number" type="string"><annotation><documentation><summary>
640
+ The phone number.
641
+ </summary></documentation></annotation></element></sequence></complexType><!-- Email --><complexType name="email"><annotation><documentation><summary>
642
+ An email address.
643
+ </summary></documentation></annotation><sequence><element name="description" type="string" minOccurs="0"><annotation><documentation><summary>
644
+ A person's description of the email address.
645
+ </summary><remarks>
646
+ This is used to describe the email address. For
647
+ example, "personal", "work", etc.
648
+ </remarks></documentation></annotation></element><element name="is-primary" type="boolean" minOccurs="0"><annotation><documentation><summary>
649
+ States if the email address is the primary address
650
+ for contacting the person.
651
+ </summary><remarks>
652
+ If true, the email address is the preferred address
653
+ for contacting the person.
654
+ </remarks></documentation></annotation></element><element name="address" type="string"><annotation><documentation><summary>
655
+ The email address.
656
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="communication-type"><annotation><documentation><summary>
657
+ Defines what type of communication is used.
658
+ </summary><remarks>
659
+ This type is used to specify the communication medium
660
+ (i.e. phone, email, pager, etc.), the priority of which
661
+ medium is preferred and the class (i.e. home, office,
662
+ mobile, etc.) of medium.
663
+ </remarks></documentation></annotation><sequence><!--phone, email, pager, etc--><element name="communication-medium" type="t:codable-value"><annotation><documentation><summary>
664
+ Defines medium of communication used.
665
+ </summary><preferred-vocabulary>communication-medium</preferred-vocabulary></documentation></annotation></element><element name="priority" type="positiveInteger" minOccurs="0"><annotation><documentation><summary>
666
+ Defines priority of communication medium.
667
+ </summary><remarks>
668
+ Preferred medium is lower value, such as phone-1, phone-2, etc.
669
+ </remarks></documentation></annotation></element><!--home, mobile, office, etc--><element name="class" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
670
+ Defines class of communication used.
671
+ </summary><preferred-vocabulary>communication-class</preferred-vocabulary></documentation></annotation></element><element name="value" type="string"><annotation><documentation><summary>
672
+ Detailed value of communication type.
673
+ </summary><summary>
674
+ Examples are phone number, fax number, etc.
675
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="language"><annotation><documentation><summary>
676
+ Defines a spoken language.
677
+ </summary></documentation></annotation><sequence><element name="language" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
678
+ The language.
679
+ </summary><remarks>
680
+ The Microsoft Health Lexicon defines codes for
681
+ many of the common spoken languages. In most
682
+ cases the language should be specified by using
683
+ the code retrieved from the Microsoft Health
684
+ Lexicon by calling GetVocabulary with "languages"
685
+ as the vocabulary name. If the language doesn't
686
+ exist the Microsoft Health Lexicon the "text"
687
+ element of the codable value can be used to specify
688
+ the language.
689
+ </remarks><preferred-vocabulary>iso:iso639-1</preferred-vocabulary></documentation></annotation></element><element name="is-primary" type="boolean" minOccurs="0"><annotation><documentation><summary>
690
+ States if the language is the primary language
691
+ of the person.
692
+ </summary><remarks>
693
+ If true, the language is the preferred spoken
694
+ language of the person.
695
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="name"><annotation><documentation><summary>
696
+ Defines a person's name.
697
+ </summary></documentation></annotation><sequence><element name="full" type="string"><annotation><documentation><summary>
698
+ The person's full name.
699
+ </summary></documentation></annotation></element><element name="title" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
700
+ The person's title.
701
+ </summary><remarks>
702
+ For example, "Mr.", "Ms.", "Mrs.", etc.
703
+ </remarks><preferred-vocabulary>name-prefixes</preferred-vocabulary></documentation></annotation></element><element name="first" type="string" minOccurs="0"><annotation><documentation><summary>
704
+ The person's given name.
705
+ </summary></documentation></annotation></element><element name="middle" type="string" minOccurs="0"><annotation><documentation><summary>
706
+ The person's middle name.
707
+ </summary></documentation></annotation></element><element name="last" type="string" minOccurs="0"><annotation><documentation><summary>
708
+ The person's family/sur name.
709
+ </summary></documentation></annotation></element><element name="suffix" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
710
+ The person's name suffix.
711
+ </summary><remarks>
712
+ For example, "Jr.", "Sr.", etc.
713
+ </remarks><preferred-vocabulary>name-suffixes</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="person"><annotation><documentation><summary>
714
+ Information related to a contact.
715
+ </summary><remarks>
716
+ A contact may be an emergency contact, contact information
717
+ for a doctor, lawyer, etc.
718
+ </remarks></documentation></annotation><sequence><element name="name" type="t:name"><annotation><documentation><summary>
719
+ The name of the contact person.
720
+ </summary></documentation></annotation></element><element name="organization" type="string" minOccurs="0"><annotation><documentation><summary>
721
+ The name of the organization the contact
722
+ belongs to.
723
+ </summary></documentation></annotation></element><element name="professional-training" type="string" minOccurs="0"><annotation><documentation><summary>
724
+ The person's professional training.
725
+ </summary></documentation></annotation></element><element name="id" type="string" minOccurs="0"><annotation><documentation><summary>
726
+ The identification number for the person
727
+ in the organization.
728
+ </summary></documentation></annotation></element><element name="contact" type="t:contact" minOccurs="0"><annotation><documentation><summary>
729
+ Information on how to contact the person.
730
+ </summary></documentation></annotation></element><element name="type" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
731
+ The type of the contact person.
732
+ </summary><remarks>
733
+ A person may be an emergency contact,
734
+ a health care provider, etc. The values
735
+ should be taken from the Microsoft Health
736
+ Lexicon vocabulary 'person-types'.
737
+ </remarks><preferred-vocabulary>person-types</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="contact"><annotation><documentation><summary>
738
+ Defines a set of contact information.
739
+ </summary><remarks>
740
+ The contact information can consist of any number of
741
+ physical/mailing addresses, phone numbers, or email
742
+ addresses.
743
+ </remarks></documentation></annotation><sequence><element name="address" type="t:address" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
744
+ Physical or mailing addresses.
745
+ </summary></documentation></annotation></element><element name="phone" type="t:phone" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
746
+ Telephone numbers such as home, work, or mobile.
747
+ </summary></documentation></annotation></element><element name="email" type="t:email" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
748
+ Email addresses.
749
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="coded-value"><annotation><documentation><summary>
750
+ Defines a value which has been coded in a Microsoft Health
751
+ Vocabulary.
752
+ </summary><remarks>
753
+ The Microsoft Health Service provides a set of vocabularies
754
+ containing common health and fitness terms and codes.
755
+ Vocabularies are identified by their family, type, and
756
+ version and contain values which identify an entry in that
757
+ vocabulary by code.<br /><br />
758
+ For example, a prescription
759
+ vocabulary may be identified by the family 'NCPDP', type
760
+ 'SCRIPT', and version '1.0' and contain a code of 10 which
761
+ identifies a 'tablet' form of medication.
762
+ </remarks></documentation></annotation><sequence><element name="value" type="string"><annotation><documentation><summary>
763
+ The code value which identifies the item in the
764
+ vocabulary.
765
+ </summary><remarks>
766
+ Codes are unique to the vocabulary they reside in.
767
+ The codes for a particular vocabulary can be
768
+ enumerated using GetVocabulary.
769
+ </remarks></documentation></annotation></element><element name="family" type="string" minOccurs="0"><annotation><documentation><summary>
770
+ The family of the vocabulary.
771
+ </summary><remarks>
772
+ The family of a vocabulary partially identifies the
773
+ vocabulary instance along with type and version. If
774
+ the value is missing the family is assumed to be
775
+ 'wc' which is the Microsoft Health Lexicon.
776
+ <br />
777
+ For example, 'NCPDP' is the vocabulary family for
778
+ codes in the National Council for Prescription Drug
779
+ Programs.
780
+ </remarks></documentation></annotation></element><element name="type" type="string"><annotation><documentation><summary>
781
+ The type of the vocabulary.
782
+ </summary><remarks>
783
+ This is the name that identifies the vocabulary in
784
+ the family of vocabularies.<br /><br />
785
+ For example, 'SCRIPT' is the vocabulary name for
786
+ medical prescriptions in the 'NCPDP' family of
787
+ vocabularies.
788
+ </remarks></documentation></annotation></element><element name="version" type="string" minOccurs="0"><annotation><documentation><summary>
789
+ The version of the vocabulary.
790
+ </summary><remarks>
791
+ The version identifies which version of a vocabulary
792
+ identified by the 'type' element the code is in if
793
+ more than one version is present.
794
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="codable-value"><annotation><documentation><summary>
795
+ A value that may have codes from one or more Microsoft
796
+ Health vocabularies associated with it.
797
+ </summary><remarks>
798
+ A codable value represents a value that may reference a
799
+ coded value in one or more of the Microsoft Health
800
+ vocabularies. Though it does not require the value to
801
+ be in a vocabulary.<br /><br />
802
+ For example, aerobic session data has a mode element
803
+ of type codable-value. Although many common forms of
804
+ aerobic session mode can be found in the Microsoft
805
+ Health Lexicon using the 'wildcat-activies' vocabulary,
806
+ not all possible activies can be found there. If the
807
+ activity does exist in the vocabulary it is recommended
808
+ that applications add the coded-value for that code as
809
+ a 'code' element and set the 'text' element to the
810
+ display value for that code. If the activity does not
811
+ exist in the vocabulary the 'code' element should not
812
+ be specified and the 'text' element should contain the
813
+ data the user entered.<br /><br />
814
+ By using the coded-value when available the data can
815
+ be easily localized by the Microsoft Health Service and
816
+ can also be utilized by applications that are mining the
817
+ data based on certain code values.
818
+ </remarks></documentation></annotation><sequence><element name="text" type="string"><annotation><documentation><summary>
819
+ The textual representation of the value.
820
+ </summary><remarks>
821
+ This may be the display value from one of the
822
+ coded-values or it may be the user entered
823
+ value.
824
+ </remarks></documentation></annotation></element><element name="code" type="t:coded-value" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
825
+ The codes representing the value from a
826
+ Microsoft Health vocabulary.
827
+ </summary><remarks>
828
+ Some values can be represented by codes in more
829
+ that one vocabulary. If appropriate add coded-values
830
+ from as many vocabularies as are relevant.
831
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="lab-result-type"><annotation><documentation><summary>
832
+ A clinical value within a laboratory result.
833
+ </summary><remarks>
834
+ This type is define a clinical value within a laboratory result,
835
+ including value, unit, reference and toxic ranges.
836
+ </remarks></documentation></annotation><sequence><element name="value" type="double" minOccurs="0"><annotation><documentation><summary>
837
+ The value of the laboratory result.
838
+ </summary></documentation></annotation></element><element name="unit" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
839
+ Units used to define laboratory result.
840
+ </summary><preferred-vocabulary>lab-results-units</preferred-vocabulary></documentation></annotation></element><element name="reference-range" type="t:double-range" minOccurs="0"><annotation><documentation><summary>
841
+ The reference range for the laboratory result.
842
+ </summary></documentation></annotation></element><element name="toxic-range" type="t:double-range" minOccurs="0"><annotation><documentation><summary>
843
+ The toxic range for the laboratory result.
844
+ </summary></documentation></annotation></element><element name="text-value" type="string" minOccurs="0"><annotation><documentation><summary>
845
+ Free form text for laboratory results.
846
+ </summary></documentation></annotation></element><element name="flag" type="t:codable-value" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
847
+ Flag for laboratory results.
848
+ </summary><remarks>
849
+ Example values are normal, critical, high and low.
850
+ </remarks><preferred-vocabulary>lab-results-flag</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="lab-test-type"><annotation><documentation><summary>
851
+ A laboratory test component, including the lab result value details.
852
+ </summary><remarks>
853
+ This type is used to define components without a larger clinical laboratory report.
854
+ </remarks></documentation></annotation><sequence><element name="when" type="d:date-time"><annotation><documentation><summary>
855
+ The date of the laboratory test.
856
+ </summary></documentation></annotation></element><element name="name" type="string" minOccurs="0"><annotation><documentation><summary>
857
+ The name of the laboratory test.
858
+ </summary></documentation></annotation></element><element name="substance" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
859
+ The substance tested.
860
+ </summary></documentation></annotation></element><element name="collection-method" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
861
+ The collection method for the laboratory test.
862
+ </summary></documentation></annotation></element><element name="abbreviation" type="string" minOccurs="0"><annotation><documentation><summary>
863
+ The abbreviation for the laboratory test.
864
+ </summary></documentation></annotation></element><element name="description" type="string" minOccurs="0"><annotation><documentation><summary>
865
+ Free form description of the laboratory test.
866
+ </summary></documentation></annotation></element><element name="code" type="t:codable-value" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
867
+ The clinical code for the laboratory test.
868
+ </summary><preferred-vocabulary>LOINC</preferred-vocabulary></documentation></annotation></element><element name="result" type="t:lab-result-type" minOccurs="0"><annotation><documentation><summary>
869
+ A clinical value within a laboratory result.
870
+ </summary><remarks>
871
+ This type is define a clinical value within a laboratory result,
872
+ including value, unit, reference and toxic ranges.
873
+ </remarks></documentation></annotation></element><element name="status" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
874
+ The status of the laboratory result.
875
+ </summary><remarks>
876
+ Examples of status include complete and pending.
877
+ </remarks><preferred-vocabulary>lab-results-status</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="lab-test-result-value-type"><annotation><documentation><summary>
878
+ A clinical value within a laboratory result.
879
+ </summary><remarks>
880
+ This type is define a clinical value within a laboratory result,
881
+ including value, unit, reference and toxic ranges.
882
+ </remarks></documentation></annotation><sequence><element name="measurement" type="t:general-measurement"><annotation><documentation><summary>
883
+ The value of the laboratory result.
884
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="ranges" type="t:test-result-range" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
885
+ Ranges that are associated with this result.
886
+ </summary><remarks>
887
+ Each test result can contain multiple ranges that are useful to interpret the result value.
888
+ <br />
889
+ Examples include reference range and therapeutic range.
890
+ </remarks></documentation></annotation></element><element name="flag" type="t:codable-value" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
891
+ Flag for laboratory results.
892
+ </summary><remarks>
893
+ Example values are normal, critical, high and low.
894
+ </remarks><preferred-vocabulary>lab-results-flag</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="lab-test-result-type"><annotation><documentation><summary>
895
+ A single laboratory test.
896
+ </summary></documentation></annotation><sequence><element name="when" type="d:approx-date-time" minOccurs="0"><annotation><documentation><summary>
897
+ The date of the laboratory test.
898
+ </summary></documentation></annotation></element><element name="name" type="string" minOccurs="0"><annotation><documentation><summary>
899
+ The name of the laboratory test.
900
+ </summary></documentation></annotation></element><element name="substance" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
901
+ The substance tested.
902
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="collection-method" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
903
+ The collection method for the laboratory test.
904
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="clinical-code" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
905
+ The clinical code for the laboratory test.
906
+ </summary><preferred-vocabulary>LOINC</preferred-vocabulary></documentation></annotation></element><element name="value" type="t:lab-test-result-value-type" minOccurs="0"><annotation><documentation><summary>
907
+ A clinical value within a laboratory result.
908
+ </summary><remarks>
909
+ This type is define a clinical value within a laboratory result,
910
+ including value, unit, reference and toxic ranges.
911
+ </remarks></documentation></annotation></element><element name="status" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
912
+ The status of the laboratory result.
913
+ </summary><remarks>
914
+ Examples of status include complete and pending.
915
+ </remarks><preferred-vocabulary>lab-status</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="lab-test-results-group-type"><sequence><element name="group-name" type="t:codable-value"><annotation><documentation><summary>
916
+ The name for this set of lab test results.
917
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="laboratory-name" type="t:Organization" minOccurs="0"><annotation><documentation><summary>
918
+ Name of the laboratory that performed the tests.
919
+ </summary></documentation></annotation></element><element name="status" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
920
+ The overall status of this group and any sub-groups.
921
+ </summary><remarks>
922
+ Examples of status include complete and pending.
923
+ </remarks><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="sub-groups" type="t:lab-test-results-group-type" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
924
+ Lab test results sub-groups.
925
+ </summary><remarks>
926
+ If there is more than one group of results, they should be stored in the sub-groups.
927
+ </remarks></documentation></annotation></element><element name="results" type="t:lab-test-result-type" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
928
+ A set of results for this group.
929
+ </summary><remarks>
930
+ If there is a single set of results, they should be stored in results. If there are multiple ones, results
931
+ should be omitted and the test results should be stored in sub-groups.
932
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="document-reference-type"><annotation><documentation><summary>
933
+ Defines a document reference.
934
+ </summary><remarks>
935
+ This type is used to define a specific document reference, including
936
+ classification, index and version.
937
+ </remarks></documentation></annotation><sequence><element name="title" type="string"><annotation><documentation><summary>
938
+ The title of the document reference.
939
+ </summary></documentation></annotation></element><element name="url" type="string"><annotation><documentation><summary>
940
+ The URL for the document reference.
941
+ </summary></documentation></annotation></element><element name="document-index" type="string"><annotation><documentation><summary>
942
+ The index for the document reference.
943
+ </summary></documentation></annotation></element><element name="version" type="string"><annotation><documentation><summary>
944
+ The version of the document reference.
945
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="Organization"><annotation><documentation><summary>An organization entity.</summary><remarks>
946
+ An entity such as a hospital, a pharmacy, or a doctor's office.
947
+ </remarks></documentation></annotation><sequence><element name="name" type="string"><annotation><documentation><summary>The name of the organization.</summary></documentation></annotation></element><element name="contact" type="t:contact" minOccurs="0"><annotation><documentation><summary>
948
+ The contact information for the organization.
949
+ </summary></documentation></annotation></element><element name="type" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
950
+ The type of the organization.
951
+ </summary></documentation></annotation></element><element name="website" type="string" minOccurs="0"><annotation><documentation><summary>
952
+ The url for the organization's website.
953
+ </summary></documentation></annotation></element></sequence></complexType><complexType name="condition"><annotation><documentation><summary>
954
+ Defines a single health or medical issue/problem.
955
+ </summary><remarks>
956
+ CCR qualifiers and other notes should go in the
957
+ common/note section of the thing.
958
+ </remarks></documentation></annotation><sequence><element name="name" type="t:codable-value"><annotation><documentation><summary>
959
+ The name or description of the condition.
960
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="onset-date" type="d:approx-date" minOccurs="0"><annotation><documentation><summary>
961
+ The date of onset or the first diagnosis.
962
+ </summary></documentation></annotation></element><element name="resolution-date" type="d:approx-date" minOccurs="0"><annotation><documentation><summary>
963
+ The date the condition resolved (or for
964
+ multiple acute episodes, the last date the
965
+ condition resolved).
966
+ </summary></documentation></annotation></element><element name="resolution" type="string" minOccurs="0"><annotation><documentation><summary>
967
+ A statement of how the condition was resolved.
968
+ </summary></documentation></annotation></element><!-- CCR qualifiers or other notes go into common/note --><element name="occurrence" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
969
+ How often the condition occurs.
970
+ </summary><remarks>
971
+ Examples: acute, chronic.
972
+ </remarks><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="severity" type="t:codable-value" minOccurs="0"><annotation><documentation><summary>
973
+ The severity for the condition
974
+ </summary><preferred-vocabulary>condition-severity</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="structured-measurement"><annotation><documentation><summary>
975
+ A measurement using specific units.
976
+ </summary><remarks>
977
+ Examples include 30 cc, 500 mg, 15 liters, 30 inches, etc.
978
+ </remarks></documentation></annotation><sequence><element name="value" type="double"><annotation><documentation><summary>
979
+ The value of the measurement.
980
+ </summary></documentation></annotation></element><element name="units" type="t:codable-value"><annotation><documentation><summary>
981
+ The units for the measurement.
982
+ </summary><preferred-vocabulary>measurement-units</preferred-vocabulary></documentation></annotation></element></sequence></complexType><complexType name="general-measurement"><annotation><documentation><summary>
983
+ A coded measurement and a display representation.
984
+ </summary><remarks>
985
+ Examples include 30 cc, 500 mg, 15 liters, 30 inches, etc.
986
+ </remarks></documentation></annotation><sequence><element name="display" type="string"><annotation><documentation><summary>
987
+ A user-readable string.
988
+ </summary><remarks>
989
+ Applications typically display this string.
990
+ </remarks></documentation></annotation></element><element name="structured" type="t:structured-measurement" minOccurs="0" maxOccurs="unbounded"><annotation><documentation><summary>
991
+ The coded value of the measurement
992
+ </summary><remarks>
993
+ Applications typically use this for calculations, charting, or graphing.
994
+ </remarks></documentation></annotation></element></sequence></complexType><complexType name="test-result-range"><annotation><documentation><summary>
995
+ A range related to a specific test result
996
+ </summary></documentation></annotation><sequence><element name="type" type="t:codable-value"><annotation><documentation><summary>
997
+ The type of the range.
998
+ </summary><preferred-vocabulary>Contact the HealthVault team to help define this vocabulary.</preferred-vocabulary></documentation></annotation></element><element name="range" type="t:double-range"><annotation><documentation><summary>
999
+ The minimum and maximum of the range.
1000
+ </summary></documentation></annotation></element></sequence></complexType></schema>