-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathschema.json
88 lines (88 loc) · 3.1 KB
/
schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
{
"$schema": "http://json-schema.org/draft-06/schema#",
"title": "Product set",
"type": "array",
"items": {
"title": "Product",
"type": "object",
"properties": {
"name": {
"description": "The name of the product (required)",
"type": "string"
},
"ingredients": {
"description": "The ingredients ordered by their relative weight, same as on the product packaging (required)",
"type": "array",
"items": {
"anyOf": [
{ "type": "string"},
{
"type": "object",
"properties": {
"name": {"type": "string"},
"resource": {"type": "string"}
},
"required": ["name", "resource"]
}
]
},
"uniqueItems": true
},
"labels": {
"description": "Labels on the product (required)",
"type": ["array", "null"],
"items": {
"type": "string"
},
"uniqueItems": true
},
"stores": {
"description": "Store(s) selling the product (required)",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true
},
"gtin": {
"description": "The Global Trade Item Number or barcode (optional)",
"type": "string"
},
"brand": {
"description": "The brand of a product (optional)",
"type": "string"
},
"producer": {
"description": "The producing company (optional)",
"type": "string"
},
"category": {
"description": "The product category, ideally conforming to GS1 standards (optional)",
"type": "string"
},
"details": {
"description": "Any extra information (optional)",
"type": "object",
"properties": {
"size": {
"type": "object",
"properties": {
"amount": { "type": "number" },
"unit": { "type": "string" }
}
},
"price": {
"type": "object",
"properties": {
"amount": { "type": "number" },
"currency": { "type": "string" }
}
},
"image_url": { "type": "string" }
},
"additionalProperties": true
}
},
"required": ["name", "ingredients", "labels", "stores"]
}
}