irongit
spiritfacts-dataset/datapackage.json
507 lines13 KBJSON
1{
2 "$schema": "https://datapackage.org/profiles/2.0/datapackage.json",
3 "name": "spiritfacts",
4 "title": "SpiritFacts: Alcohol Chemistry & Hangover Index Dataset",
5 "description": "Open chemistry and health profile of spirits, wine, and beer (congeners, histamines, polyphenols, sulfites, tannins, sugar, additives) plus a 1-10 Hangover Index across categories and brands. Maintained by spiritfacts.com.",
6 "homepage": "https://spiritfacts.com",
7 "version": "1.0.0",
8 "keywords": [
9 "alcohol",
10 "spirits",
11 "wine",
12 "beer",
13 "chemistry",
14 "congeners",
15 "histamines",
16 "sulfites",
17 "hangover",
18 "health",
19 "nutrition"
20 ],
21 "licenses": [
22 {
23 "name": "CC-BY-4.0",
24 "title": "Creative Commons Attribution 4.0 International",
25 "path": "https://creativecommons.org/licenses/by/4.0/"
26 }
27 ],
28 "sources": [
29 {
30 "title": "Spirit Facts",
31 "path": "https://spiritfacts.com"
32 }
33 ],
34 "resources": [
35 {
36 "name": "categories",
37 "title": "Categories (13)",
38 "path": "data/categories.csv",
39 "format": "csv",
40 "mediatype": "text/csv",
41 "encoding": "utf-8",
42 "schema": {
43 "primaryKey": "slug",
44 "fields": [
45 {
46 "name": "slug",
47 "type": "string"
48 },
49 {
50 "name": "name",
51 "type": "string"
52 },
53 {
54 "name": "family",
55 "type": "string"
56 },
57 {
58 "name": "tagline",
59 "type": "string"
60 },
61 {
62 "name": "typical_abv_min",
63 "type": "number",
64 "description": "Alcohol by volume (%)."
65 },
66 {
67 "name": "typical_abv_max",
68 "type": "number",
69 "description": "Alcohol by volume (%)."
70 },
71 {
72 "name": "hangover_index",
73 "type": "integer",
74 "constraints": {
75 "minimum": 1,
76 "maximum": 10
77 }
78 },
79 {
80 "name": "congeners",
81 "title": "Congeners",
82 "type": "string",
83 "constraints": {
84 "enum": [
85 "very-low",
86 "low",
87 "moderate",
88 "high",
89 "very-high"
90 ]
91 }
92 },
93 {
94 "name": "histamines",
95 "title": "Histamines",
96 "type": "string",
97 "constraints": {
98 "enum": [
99 "very-low",
100 "low",
101 "moderate",
102 "high",
103 "very-high"
104 ]
105 }
106 },
107 {
108 "name": "polyphenols",
109 "title": "Polyphenols",
110 "type": "string",
111 "constraints": {
112 "enum": [
113 "very-low",
114 "low",
115 "moderate",
116 "high",
117 "very-high"
118 ]
119 }
120 },
121 {
122 "name": "sulfites",
123 "title": "Sulfites",
124 "type": "string",
125 "constraints": {
126 "enum": [
127 "very-low",
128 "low",
129 "moderate",
130 "high",
131 "very-high"
132 ]
133 }
134 },
135 {
136 "name": "tannins",
137 "title": "Tannins",
138 "type": "string",
139 "constraints": {
140 "enum": [
141 "very-low",
142 "low",
143 "moderate",
144 "high",
145 "very-high"
146 ]
147 }
148 },
149 {
150 "name": "sugar",
151 "title": "Sugar",
152 "type": "string",
153 "constraints": {
154 "enum": [
155 "very-low",
156 "low",
157 "moderate",
158 "high",
159 "very-high"
160 ]
161 }
162 },
163 {
164 "name": "additives",
165 "title": "Additives",
166 "type": "string",
167 "constraints": {
168 "enum": [
169 "very-low",
170 "low",
171 "moderate",
172 "high",
173 "very-high"
174 ]
175 }
176 },
177 {
178 "name": "congeners_score",
179 "title": "Congeners (score)",
180 "type": "integer",
181 "constraints": {
182 "minimum": 1,
183 "maximum": 5
184 },
185 "description": "Ordinal 1 (very-low) to 5 (very-high)."
186 },
187 {
188 "name": "histamines_score",
189 "title": "Histamines (score)",
190 "type": "integer",
191 "constraints": {
192 "minimum": 1,
193 "maximum": 5
194 },
195 "description": "Ordinal 1 (very-low) to 5 (very-high)."
196 },
197 {
198 "name": "polyphenols_score",
199 "title": "Polyphenols (score)",
200 "type": "integer",
201 "constraints": {
202 "minimum": 1,
203 "maximum": 5
204 },
205 "description": "Ordinal 1 (very-low) to 5 (very-high)."
206 },
207 {
208 "name": "sulfites_score",
209 "title": "Sulfites (score)",
210 "type": "integer",
211 "constraints": {
212 "minimum": 1,
213 "maximum": 5
214 },
215 "description": "Ordinal 1 (very-low) to 5 (very-high)."
216 },
217 {
218 "name": "tannins_score",
219 "title": "Tannins (score)",
220 "type": "integer",
221 "constraints": {
222 "minimum": 1,
223 "maximum": 5
224 },
225 "description": "Ordinal 1 (very-low) to 5 (very-high)."
226 },
227 {
228 "name": "sugar_score",
229 "title": "Sugar (score)",
230 "type": "integer",
231 "constraints": {
232 "minimum": 1,
233 "maximum": 5
234 },
235 "description": "Ordinal 1 (very-low) to 5 (very-high)."
236 },
237 {
238 "name": "additives_score",
239 "title": "Additives (score)",
240 "type": "integer",
241 "constraints": {
242 "minimum": 1,
243 "maximum": 5
244 },
245 "description": "Ordinal 1 (very-low) to 5 (very-high)."
246 },
247 {
248 "name": "common_allergens",
249 "type": "string"
250 }
251 ]
252 }
253 },
254 {
255 "name": "brands",
256 "title": "Brands (52)",
257 "path": "data/brands.csv",
258 "format": "csv",
259 "mediatype": "text/csv",
260 "encoding": "utf-8",
261 "schema": {
262 "primaryKey": "slug",
263 "foreignKeys": [
264 {
265 "fields": "category",
266 "reference": {
267 "resource": "categories",
268 "fields": "slug"
269 }
270 }
271 ],
272 "fields": [
273 {
274 "name": "slug",
275 "type": "string"
276 },
277 {
278 "name": "name",
279 "type": "string"
280 },
281 {
282 "name": "category",
283 "type": "string"
284 },
285 {
286 "name": "subtype",
287 "type": "string"
288 },
289 {
290 "name": "origin",
291 "type": "string"
292 },
293 {
294 "name": "abv",
295 "type": "number",
296 "description": "Alcohol by volume (%)."
297 },
298 {
299 "name": "former_abv",
300 "type": "number",
301 "description": "Alcohol by volume (%)."
302 },
303 {
304 "name": "hangover_index",
305 "type": "integer",
306 "constraints": {
307 "minimum": 1,
308 "maximum": 10
309 }
310 },
311 {
312 "name": "congeners",
313 "title": "Congeners",
314 "type": "string",
315 "constraints": {
316 "enum": [
317 "very-low",
318 "low",
319 "moderate",
320 "high",
321 "very-high"
322 ]
323 }
324 },
325 {
326 "name": "histamines",
327 "title": "Histamines",
328 "type": "string",
329 "constraints": {
330 "enum": [
331 "very-low",
332 "low",
333 "moderate",
334 "high",
335 "very-high"
336 ]
337 }
338 },
339 {
340 "name": "polyphenols",
341 "title": "Polyphenols",
342 "type": "string",
343 "constraints": {
344 "enum": [
345 "very-low",
346 "low",
347 "moderate",
348 "high",
349 "very-high"
350 ]
351 }
352 },
353 {
354 "name": "sulfites",
355 "title": "Sulfites",
356 "type": "string",
357 "constraints": {
358 "enum": [
359 "very-low",
360 "low",
361 "moderate",
362 "high",
363 "very-high"
364 ]
365 }
366 },
367 {
368 "name": "tannins",
369 "title": "Tannins",
370 "type": "string",
371 "constraints": {
372 "enum": [
373 "very-low",
374 "low",
375 "moderate",
376 "high",
377 "very-high"
378 ]
379 }
380 },
381 {
382 "name": "sugar",
383 "title": "Sugar",
384 "type": "string",
385 "constraints": {
386 "enum": [
387 "very-low",
388 "low",
389 "moderate",
390 "high",
391 "very-high"
392 ]
393 }
394 },
395 {
396 "name": "additives",
397 "title": "Additives",
398 "type": "string",
399 "constraints": {
400 "enum": [
401 "very-low",
402 "low",
403 "moderate",
404 "high",
405 "very-high"
406 ]
407 }
408 },
409 {
410 "name": "congeners_score",
411 "title": "Congeners (score)",
412 "type": "integer",
413 "constraints": {
414 "minimum": 1,
415 "maximum": 5
416 },
417 "description": "Ordinal 1 (very-low) to 5 (very-high)."
418 },
419 {
420 "name": "histamines_score",
421 "title": "Histamines (score)",
422 "type": "integer",
423 "constraints": {
424 "minimum": 1,
425 "maximum": 5
426 },
427 "description": "Ordinal 1 (very-low) to 5 (very-high)."
428 },
429 {
430 "name": "polyphenols_score",
431 "title": "Polyphenols (score)",
432 "type": "integer",
433 "constraints": {
434 "minimum": 1,
435 "maximum": 5
436 },
437 "description": "Ordinal 1 (very-low) to 5 (very-high)."
438 },
439 {
440 "name": "sulfites_score",
441 "title": "Sulfites (score)",
442 "type": "integer",
443 "constraints": {
444 "minimum": 1,
445 "maximum": 5
446 },
447 "description": "Ordinal 1 (very-low) to 5 (very-high)."
448 },
449 {
450 "name": "tannins_score",
451 "title": "Tannins (score)",
452 "type": "integer",
453 "constraints": {
454 "minimum": 1,
455 "maximum": 5
456 },
457 "description": "Ordinal 1 (very-low) to 5 (very-high)."
458 },
459 {
460 "name": "sugar_score",
461 "title": "Sugar (score)",
462 "type": "integer",
463 "constraints": {
464 "minimum": 1,
465 "maximum": 5
466 },
467 "description": "Ordinal 1 (very-low) to 5 (very-high)."
468 },
469 {
470 "name": "additives_score",
471 "title": "Additives (score)",
472 "type": "integer",
473 "constraints": {
474 "minimum": 1,
475 "maximum": 5
476 },
477 "description": "Ordinal 1 (very-low) to 5 (very-high)."
478 },
479 {
480 "name": "gluten_free",
481 "type": "boolean"
482 },
483 {
484 "name": "vegan",
485 "type": "boolean"
486 },
487 {
488 "name": "allergens",
489 "type": "string"
490 },
491 {
492 "name": "notes",
493 "type": "string"
494 }
495 ]
496 }
497 },
498 {
499 "name": "spiritfacts-full",
500 "title": "Full dataset (nested JSON)",
501 "path": "data/spiritfacts.json",
502 "format": "json",
503 "mediatype": "application/json",
504 "encoding": "utf-8"
505 }
506 ]
507}