Skip to content

Commit 6f0169d

Browse files
committed
deploy 2a50f15 (2a50f15)
1 parent e23d0cf commit 6f0169d

10 files changed

Lines changed: 758 additions & 27 deletions

File tree

conversions.json

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
{
2+
"length": {
3+
"metric": "m",
4+
"imperial": "ft",
5+
"factors": {
6+
"m": {
7+
"ft": 3.280839895013123
8+
}
9+
}
10+
},
11+
"mass": {
12+
"metric": "kg",
13+
"imperial": "lb",
14+
"factors": {
15+
"kg": {
16+
"lb": 2.2046226218487757
17+
}
18+
}
19+
},
20+
"temperature": {
21+
"metric": "c",
22+
"imperial": "f",
23+
"factors": {
24+
"c": {
25+
"f": [
26+
1.8,
27+
32
28+
]
29+
}
30+
}
31+
}
32+
}

datasources.json

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,8 @@
1111
"minQueryLength": 3,
1212
"resultKey": "medications",
1313
"displayFields": {
14-
"label": {
15-
"en": "label"
16-
},
17-
"description": {
18-
"en": "description"
19-
}
14+
"label": "label",
15+
"description": "description"
2016
},
2117
"valueFields": [
2218
"label",

eventTypes.json

Lines changed: 232 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2072,11 +2072,125 @@
20722072
"rectal",
20732073
"vaginal"
20742074
]
2075+
}
2076+
}
2077+
}
2078+
}
2079+
},
2080+
"medication/prescription-v1": {
2081+
"description": "Medication prescription. Captures what the doctor prescribed: drug identity, dosage, frequency, and instructions. event.duration reflects the full treatment period.",
2082+
"type": "object",
2083+
"required": [
2084+
"drug"
2085+
],
2086+
"properties": {
2087+
"drug": {
2088+
"description": "Coded drug identity, populated from datasets-service selection.",
2089+
"type": "object",
2090+
"required": [
2091+
"label",
2092+
"codes"
2093+
],
2094+
"properties": {
2095+
"label": {
2096+
"description": "Localized medication name for display",
2097+
"type": "object",
2098+
"properties": {
2099+
"en": {
2100+
"type": "string"
2101+
}
2102+
}
20752103
},
2076-
"frequencyHours": {
2077-
"description": "Interval between doses in hours. If set, event.duration should reflect the full treatment period",
2104+
"description": {
2105+
"description": "Localized full description (e.g. 'Aspirin 325 MG Oral Tablet')",
2106+
"type": "object",
2107+
"properties": {
2108+
"en": {
2109+
"type": "string"
2110+
}
2111+
}
2112+
},
2113+
"codes": {
2114+
"description": "Coding identifiers across systems.",
2115+
"type": "array",
2116+
"items": {
2117+
"type": "object",
2118+
"required": [
2119+
"code",
2120+
"system",
2121+
"hdsId"
2122+
],
2123+
"properties": {
2124+
"code": {
2125+
"type": "string"
2126+
},
2127+
"system": {
2128+
"type": "string"
2129+
},
2130+
"source": {
2131+
"type": "object",
2132+
"properties": {
2133+
"key": {
2134+
"type": "string"
2135+
}
2136+
}
2137+
},
2138+
"hdsId": {
2139+
"type": "string"
2140+
}
2141+
}
2142+
}
2143+
}
2144+
}
2145+
},
2146+
"posology": {
2147+
"description": "Prescribed dosage and schedule",
2148+
"type": "object",
2149+
"properties": {
2150+
"doseValue": {
2151+
"description": "Amount per intake (e.g. 2 for '2 tablets')",
20782152
"type": "number"
20792153
},
2154+
"doseUnit": {
2155+
"description": "HDS eventType reference for the dose unit",
2156+
"type": "string",
2157+
"enum": [
2158+
"dose/tablet",
2159+
"dose/drop",
2160+
"dose/puff",
2161+
"dose/application",
2162+
"dose/suppository",
2163+
"dose/unit",
2164+
"volume/ml",
2165+
"mass/mg",
2166+
"mass/mcg",
2167+
"mass/g"
2168+
]
2169+
},
2170+
"route": {
2171+
"description": "Route of administration",
2172+
"type": "string",
2173+
"enum": [
2174+
"oral",
2175+
"sublingual",
2176+
"parenteral",
2177+
"intravenous",
2178+
"intramuscular",
2179+
"subcutaneous",
2180+
"inhalation",
2181+
"nasal",
2182+
"topical",
2183+
"transdermal",
2184+
"ophthalmic",
2185+
"otic",
2186+
"rectal",
2187+
"vaginal"
2188+
]
2189+
},
2190+
"frequency": {
2191+
"description": "Prescribed frequency (e.g. 2 times per day)",
2192+
"$ref": "#/types/frequency~1times-period"
2193+
},
20802194
"asNeeded": {
20812195
"description": "True if taken as needed (PRN) rather than on schedule",
20822196
"type": "boolean"
@@ -2136,6 +2250,79 @@
21362250
"rate/mcg-hr": {
21372251
"description": "Micrograms per hour (transdermal)",
21382252
"type": "number"
2253+
},
2254+
"frequency/times-period": {
2255+
"description": "Number of times per period. E.g. 2 times per day, 1 time per week.",
2256+
"type": "object",
2257+
"required": [
2258+
"times",
2259+
"period",
2260+
"periodUnit"
2261+
],
2262+
"properties": {
2263+
"times": {
2264+
"description": "Number of intakes per period (e.g. 2 for 'twice a day')",
2265+
"type": "number",
2266+
"minimum": 1
2267+
},
2268+
"period": {
2269+
"description": "Length of the period (e.g. 1 for 'per day', 8 for 'every 8 hours')",
2270+
"type": "number",
2271+
"minimum": 1
2272+
},
2273+
"periodUnit": {
2274+
"description": "Unit of the period",
2275+
"type": "string",
2276+
"enum": [
2277+
"h",
2278+
"d",
2279+
"wk",
2280+
"mo",
2281+
"y"
2282+
]
2283+
}
2284+
}
2285+
},
2286+
"settings/preferred-locales": {
2287+
"description": "User preferred locales, ordered by priority",
2288+
"type": "array",
2289+
"items": {
2290+
"type": "string"
2291+
}
2292+
},
2293+
"settings/theme": {
2294+
"description": "UI theme preference",
2295+
"type": "string",
2296+
"enum": [
2297+
"light",
2298+
"dark"
2299+
]
2300+
},
2301+
"settings/timezone": {
2302+
"description": "User timezone (IANA identifier)",
2303+
"type": "string"
2304+
},
2305+
"settings/date-format": {
2306+
"description": "Preferred date display format",
2307+
"type": "string",
2308+
"enum": [
2309+
"DD.MM.YYYY",
2310+
"DD/MM/YYYY",
2311+
"MM/DD/YYYY",
2312+
"YYYY-MM-DD"
2313+
]
2314+
},
2315+
"settings/unit-system": {
2316+
"description": "Preferred measurement unit system",
2317+
"type": "string",
2318+
"enum": [
2319+
"metric",
2320+
"imperial"
2321+
]
2322+
},
2323+
"contact/display-name": {
2324+
"description": "User display name",
2325+
"type": "string"
21392326
}
21402327
},
21412328
"extras": {
@@ -3972,6 +4159,49 @@
39724159
"fr": "Microgrammes par heure"
39734160
},
39744161
"symbol": "μg/h"
4162+
},
4163+
"frequency/times-period": {
4164+
"name": {
4165+
"en": "Frequency",
4166+
"fr": "Fréquence"
4167+
},
4168+
"periodUnits": {
4169+
"h": {
4170+
"name": {
4171+
"en": "hour",
4172+
"fr": "heure"
4173+
},
4174+
"symbol": "h"
4175+
},
4176+
"d": {
4177+
"name": {
4178+
"en": "day",
4179+
"fr": "jour"
4180+
},
4181+
"symbol": "d"
4182+
},
4183+
"wk": {
4184+
"name": {
4185+
"en": "week",
4186+
"fr": "semaine"
4187+
},
4188+
"symbol": "wk"
4189+
},
4190+
"mo": {
4191+
"name": {
4192+
"en": "month",
4193+
"fr": "mois"
4194+
},
4195+
"symbol": "mo"
4196+
},
4197+
"y": {
4198+
"name": {
4199+
"en": "year",
4200+
"fr": "année"
4201+
},
4202+
"symbol": "y"
4203+
}
4204+
}
39754205
}
39764206
}
39774207
}

index.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ <h3>Files</h3>
3131
<tr><td>Items dictionnary</td><td><a href="./items.json">./items.json</a></tr>
3232
<tr><td>EventTypes dictionnary</td><td><a href="./eventTypes.json">./eventTypes.json</a></tr>
3333
<tr><td>Datasources dictionnary</td><td><a href="./datasources.json">./datasources.json</a></tr>
34+
<tr><td>Unit conversions</td><td><a href="./conversions.json">./conversions.json</a></tr>
35+
<tr><td>User settings definitions</td><td><a href="./settings.json">./settings.json</a></tr>
3436
</tbody>
3537
</table>
3638

@@ -73,6 +75,7 @@ <h3>Items</h3>
7375
<tr><td><span style="font-weight: bold;" id="fertility-ttc-tta">fertility-ttc-tta</span><br><u>Type:</u> select<br><u>When:</u> P1D</td><td>Trying to conceive / Avoiding pregnancy<br>Current fertility intention<BR><SELECT style="width: 20em"><OPTION>0: TTA - Not taking risks. Would take all available measures to end a pregnancy.</OPTION><OPTION>1: TTA - Not taking risks. Would strongly consider placing baby for adoption.</OPTION><OPTION>2: TTA - Not taking risks. Would need some time, maybe counseling. Ultimately keeping the pregnancy.</OPTION><OPTION>4: TTA - Not taking risks. Currently content with family size but a surprise pregnancy would be welcome.</OPTION><OPTION>5: TTW/TTA - "Loosely TTA" known risks are taken in the fertile window. "OOPS" pregnancy would be welcome.</OPTION><OPTION>6: TTW - Charting only for health/curiosity. Unprotected intercourse happens whenever. Pregnancy very welcome.</OPTION><OPTION>7: TTW/TTC - Pregnancy very welcome (moving up the scale in very near future).</OPTION><OPTION>8: TTC - "Excited to start/grow a family TTC" Intentional intercourse every cycle. Excited to start/grow a family. But would not use any fertility treatments if needed.</OPTION><OPTION>9: TTC - "Highly hopeful TTC" Intentional intercourse every cycle. Would consider some but not all fertility treatments if needed.</OPTION><OPTION>10: TTC - " Seriously TTC" Intentional intercourse every cycle. Would pursue any/ALL fertility treatments or procedures if needed.</OPTION></SELECT></td><td><u>streamId:</u> fertility-ttc-tta<br><u>eventType(s):</u> ratio/generic<br><u>version:</u> v1</td></tr>
7476
<tr><td><span style="font-weight: bold;" id="medication-intake-basic">medication-intake-basic</span><br><u>Type:</u> composite<br><u>When:</u> unlimited</td><td>Medication Intake Basic<br>Medication Intake Custom</td><td><u>streamId:</u> medication-intake<br><u>eventType(s):</u> medication/basic<br><u>version:</u> v1</td></tr>
7577
<tr><td><span style="font-weight: bold;" id="medication-intake-coded">medication-intake-coded</span><br><u>Type:</u> datasource-search<br><u>When:</u> unlimited</td><td>Medication Intake (coded)<br>Search and select a coded medication from datasets service</td><td><u>streamId:</u> medication-intake<br><u>eventType(s):</u> medication/coded-v1<br><u>version:</u> v1</td></tr>
78+
<tr><td><span style="font-weight: bold;" id="medication-prescription-coded">medication-prescription-coded</span><br><u>Type:</u> datasource-search<br><u>When:</u> unlimited</td><td>Medication Prescription (coded)<br>Doctor-prescribed medication with dosage and frequency</td><td><u>streamId:</u> medication-prescription<br><u>eventType(s):</u> medication/prescription-v1<br><u>version:</u> v1</td></tr>
7679
<tr><td><span style="font-weight: bold;" id="profile-addresscountry">profile-addresscountry</span><br><u>Type:</u> text<br><u>When:</u> once</td><td>Country<br>Country of living</td><td><u>streamId:</u> profile-address<br><u>eventType(s):</u> contact/country<br><u>version:</u> temporary</td></tr>
7780
<tr><td><span style="font-weight: bold;" id="profile-date-of-birth">profile-date-of-birth</span><br><u>Type:</u> date<br><u>When:</u> once</td><td>Date of Birth<br>Date of birth</td><td><u>streamId:</u> profile-date-of-birth<br><u>eventType(s):</u> date/iso-8601<br><u>version:</u> v1</td></tr>
7881
<tr><td><span style="font-weight: bold;" id="profile-name">profile-name</span><br><u>Type:</u> text<br><u>When:</u> once</td><td>Name<br>Name</td><td><u>streamId:</u> profile-name<br><u>eventType(s):</u> contact/name<br><u>version:</u> temporary</td></tr>

0 commit comments

Comments
 (0)