Advertisement
Guest User

Untitled

a guest
May 26th, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.17 KB | None | 0 0
  1.  
  2. {
  3. "$schema": "http://json-schema.org/draft-04/schema#",
  4.  
  5. "definitions": {
  6. "name": {
  7. "description": "The name of a human being.",
  8. "type": "object",
  9. "properties": {
  10. "given": {
  11. "description": "First or given name(s).",
  12. "type": "string"
  13. },
  14. "family": {
  15. "description": "Family name(s).",
  16. "type": "string"
  17. },
  18. "additional": {
  19. "description": "Middle name(s).",
  20. "type": "array",
  21. "items": { "type": "string" }
  22. },
  23. "prefix": {
  24. "description": "Honorific prefixes.",
  25. "type": "array",
  26. "items": { "type": "string" }
  27. },
  28. "suffix": {
  29. "description": "Honorfic suffixes.",
  30. "type": "array",
  31. "items": { "type": "string" }
  32. },
  33. "nickname": {
  34. "description": "Preffered nickname.",
  35. "type": "string"
  36. },
  37. "formatted": {
  38. "description": "Formatted name.",
  39. "type": "string"
  40. }
  41. },
  42. "required": ["given", "family"]
  43. },
  44. "address": {
  45. "description": "An Address following the convention of http://microformats.org/wiki/hcard",
  46. "type": "object",
  47. "properties": {
  48. "post-office-box": { "type": "string" },
  49. "extended-address": { "type": "string" },
  50. "street-address": { "type": "string" },
  51. "locality":{ "type": "string" },
  52. "region": { "type": "string" },
  53. "postal-code": { "type": "string" },
  54. "country-name": { "type": "string"}
  55. },
  56. "required": ["locality", "region", "country-name"],
  57. "dependencies": {
  58. "post-office-box": ["street-address"],
  59. "extended-address": ["street-address"]
  60. }
  61. }
  62. },
  63.  
  64. "title": "MediReadi",
  65. "description": "MediReadi data schema.",
  66. "type": "object",
  67. "properties" : {
  68. "user": {
  69. "description": "A single user in the application.",
  70. "type": "object",
  71. "properties": {
  72. "family_history": {
  73. "description": "History of the user's relations.",
  74. "type": "array",
  75. "items": {
  76. "type": "object",
  77. "properties": {
  78. "person": { "type": "name" },
  79. "issue": { "type": "string" }
  80. },
  81. "required": ["issue"]
  82. }
  83. },
  84. "basic_info": {
  85. "description": "Basic non-medical patient information.",
  86. "type": "object",
  87. "properties": {
  88. "name": { "type": "name" },
  89. "address": { "type": "address" },
  90. "phones": {
  91. "type": "array",
  92. "items": {
  93. "type": "object",
  94. "properties": {
  95. "use": {
  96. "description": "What the phone is used for. Commonly home, business, or mobile.",
  97. "type": "string"
  98. },
  99. "number": {
  100. "type": "string",
  101. "format": "phone"
  102. }
  103. }
  104. }
  105. },
  106. "email": { "type": "string", "format": "email" },
  107. "sex": { "type": "string" },
  108. "dob": { "description": "Date of birth.", "type": "string", "format": "date-time" },
  109. "insurance": { "type": "string" },
  110. "drug_plan": { "type": "array", "items": { "type": "string" } },
  111. "primary_physician": { "type": "name" },
  112. "comments": { "type": "string" }
  113. },
  114. "required": ["name"]
  115. },
  116. "history_of_past_health": {
  117. "description": "History of major medical issues.",
  118. "type": "array",
  119. "items": { "type": "string" }
  120. },
  121. "problems": {
  122. "description": "Current medical problems.",
  123. "type": "array",
  124. "items": { "type": "string" }
  125. },
  126. "prescriptions": {
  127. "description": "List of medications.",
  128. "type": "array",
  129. "items": {
  130. "type": "object",
  131. "properties": {
  132. "start": {
  133. "description": "Start date of medication.",
  134. "type": "string",
  135. "format": "date-time"
  136. },
  137. "end": {
  138. "description": "End date of medication.",
  139. "type": "string",
  140. "format": "date-time"
  141. },
  142. "dosage_freetext": {
  143. "description": "Quantity and/or frequency. Antirequisite with dosage_formatted. EG: 240 mg QID",
  144. "type": "string"
  145. },
  146. "dosage_formatted": {
  147. "description": "Quantity and/or frequency. Antirequisite with dosage_freetext.",
  148. "type": "object",
  149. "properties": {
  150. "frequency": {
  151. "description": "Usually as a drop-down menu. EG: Q4H, BID, QID. NOTE: should be DISPLAYED as EG: 'every 4 hours', 'twice a day', 'four times a day'",
  152. "type": "string"
  153. },
  154. "quantity": {
  155. "type": "object",
  156. "properties": {
  157. "unit": { "type": "string" },
  158. "amount": { "type": "number" },
  159. "desc": { "type": "string" },
  160. "count": { "type": "integer" }
  161. },
  162. "required": ["unit", "amount"]
  163. },
  164. "method": { "type": "string" }
  165. }
  166. },
  167. "name": {
  168. "description": "The names of the drug.",
  169. "type": "object",
  170. "properties": {
  171. "brand_name": {
  172. "type": "array",
  173. "items": { "type": "string" }
  174. },
  175. "generic_name": {
  176. "type": "array",
  177. "items": { "type": "string" }
  178. }
  179. }
  180. },
  181. "class": {
  182. "description": "The drug class of the prescription.",
  183. "type": "array",
  184. "items": { "type": "string" }
  185. },
  186. "notes": {
  187. "description": "Any additional information about the prescription.",
  188. "type": "array",
  189. "items": { "type": "string" }
  190. },
  191. "din": {
  192. "description": "Drug identification number (from minister of health). Integer in Canada, mixed-string in some countries.",
  193. "type": "string"
  194. }
  195. },
  196. "required": ["start","name"]
  197. }
  198. },
  199. "allergies": {
  200. "description": "All things the patient may be allergic to.",
  201. "type": "array",
  202. "items": {
  203. "type": "object",
  204. "properties": {
  205. "form": {
  206. "description": "EG: Food/Insect/Environmental",
  207. "type": "string"
  208. },
  209. "cause": {
  210. "description": "The cause of the allergy.",
  211. "type": "string"
  212. },
  213. "reaction": {
  214. "description": "The effect of the allergy.",
  215. "type": "object",
  216. "properties": {
  217. "type": {
  218. "description": "Allergy/Side Effect/Exaggerated Effect/Other",
  219. "type": "string"
  220. },
  221. "severity": {
  222. "description": "Life Threatening/Major/Minor/No Reaction",
  223. "type": "string"
  224. },
  225. "brief": {
  226. "description": "Brief description of reaction.",
  227. "type": "string"
  228. },
  229. "details": {
  230. "description": "Detailed description of reaction.",
  231. "type": "string"
  232. }
  233. }
  234. },
  235. "status": {
  236. "description": "Whether the allergy is confirmed or suspected.",
  237. "type": "boolean"
  238. }
  239. },
  240. "required": ["cause"]
  241. }
  242. },
  243. "immunization": {
  244. "description": "All treatments the patient has received.",
  245. "type": "array",
  246. "items": {
  247. "type": "object",
  248. "properties": {
  249. "name": {
  250. "description": "EG: Flu shot/Tetanus vaccine",
  251. "type": "string"
  252. },
  253. "date": { "type": "string", "format": "date-time" }
  254. },
  255. "required": ["name"]
  256. }
  257. },
  258. "personal": {
  259. "description": "Personal information.",
  260. "type": "array",
  261. "items": { "type": "string" }
  262. },
  263. "reminders": {
  264. "description": "Reminders. (NOTE: Last dates of various tests is a type of physician only reminder. Not required for design scope.)",
  265. "type": "array",
  266. "items": { "type": "string" }
  267. },
  268. "risks": {
  269. "description": "Heightened risk factor.",
  270. "type": "array",
  271. "items": { "type": "string" }
  272. },
  273. "labs": {
  274. "description": "List of laboratory results.",
  275. "type": "array",
  276. "items": {
  277. "type": "object",
  278. "properties": {
  279. "measured_value": {
  280. "description": "EG: Creatinine/Weight/Iron",
  281. "type": "string"
  282. },
  283. "value": {
  284. "description": "The value measured by the lab.",
  285. "type": "object",
  286. "properties": {
  287. "amount": { "type": "number" },
  288. "note": { "type": "string", "description": "Note, some labs return only a note. EG: 'No evidence found'" }
  289. }
  290. },
  291. "unit": {
  292. "description": "If inconsistent units, ask whether to graph all values, or only SI values.",
  293. "type": "string"
  294. },
  295. "upper_normal": {
  296. "description": "Upper limit of normal range.",
  297. "amount": { "type": "number" }
  298. },
  299. "lower_normal": {
  300. "description": "Upper limit of normal range.",
  301. "amount": { "type": "number" }
  302. },
  303. "date": {
  304. "type": "string",
  305. "format": "date-time"
  306. }
  307. },
  308. "required": ["value","date","measured_value"]
  309. }
  310. },
  311. "doctors": {
  312. "description": "List of doctors seen by patient.",
  313. "type": "array",
  314. "items": {
  315. "type": "object",
  316. "properties": {
  317. "type": {
  318. "description": "Type of doctor.",
  319. "type": "string"
  320. },
  321. "name": { "type": "name" },
  322. "location": { "type": "address" }
  323. }
  324. }
  325. }
  326. }
  327. }
  328. }
  329. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement