Projekt

Obecné

Profil

Stáhnout (4.18 KB) Statistiky
| Větev: | Tag: | Revize:
1
{
2
	"$schema": "http://json-schema.org/draft-07/schema#",
3
	"$id": "http://example.com/product.schema.json",
4
	"title": "IMiGEr - raw input schema",
5
	"description": "Diagram displayable by IMiGEr tool using raw input",
6
	"type": "object",
7
	"properties": {
8
		"attributeTypes": {
9
			"type": "array",
10
			"items": {
11
				"type": "object",
12
				"properties": {
13
					"dataType": {
14
						"type": "string"
15
					},
16
					"name": {
17
						"type": "string"
18
					},
19
					"text": {
20
						"type": "string"
21
					}
22
				},
23
				"required": [ "dataType", "name" ]
24
			},
25
			"minItems": 1,
26
			"uniqueItems": true
27
		},
28
		"edgeArchetypes": {
29
			"type": "array",
30
			"items": {
31
				"type": "object",
32
				"properties": {
33
					"name": {
34
						"type": "string"
35
					},
36
					"text": {
37
						"type": "string"
38
					}
39
				},
40
				"required": [ "name" ]
41
			},
42
			"minItems": 1,
43
			"uniqueItems": true
44
		},
45
		"vertexArchetypes": {
46
			"type": "array",
47
			"items": {
48
				"type": "object",
49
				"properties": {
50
					"icon": {
51
						"type": "string"
52
					},
53
					"name": {
54
						"type": "string"
55
					},
56
					"text": {
57
						"type": "string"
58
					}
59
				},
60
				"required": [ "name" ]
61
			},
62
			"minItems": 1,
63
			"uniqueItems": true
64
		},
65
		"vertices": {
66
			"type": "array",
67
			"items": {
68
				"type": "object",
69
				"properties": {
70
					"archetype": {
71
						"type": "integer",
72
						"minimum": 0
73
					},
74
					"attributes": {
75
						"type": "array",
76
						"items": {
77
							"type": "array",
78
							"minItems": 2,
79
							"maxItems": 2
80
						}
81
					},
82
					"id": {
83
						"type": "integer"
84
					},
85
					"name": {
86
						"type": "string"
87
					},
88
					"text": {
89
						"type": "string"
90
					},
91
					"position": {
92
						"type": "object",
93
						"properties": {
94
							"x": {
95
								"type": "number"
96
							},
97
							"y": {
98
								"type": "number"
99
							}
100
						},
101
						"required": [ "x", "y" ]
102
					}
103
				},
104
				"required": [ "id", "name" ]
105
			},
106
			"minItems": 1,
107
			"uniqueItems": true
108
		},
109
		"edges": {
110
			"type": "array",
111
			"items": {
112
				"type": "object",
113
				"properties": {
114
					"subedgeInfo": {
115
						"type": "array",
116
						"items": {
117
							"type": "object",
118
							"properties": {
119
								"id": {
120
									"type": "integer"
121
								},
122
								"archetype": {
123
									"type": "integer",
124
									"minimum": 0
125
								},
126
								"attributes": {
127
									"type": "array",
128
									"items": {
129
										"type": "array",
130
										"minItems": 2,
131
										"maxItems": 2
132
									}
133
								}
134
							},
135
							"required": [ "id", "archetype", "attributes" ]
136
						}
137
					},
138
					"id": {
139
						"type": "integer"
140
					},
141
					"text": {
142
						"type": "string"
143
					},
144
					"from": {
145
						"type": "integer"
146
					},
147
					"to": {
148
						"type": "integer"
149
					}
150
				},
151
				"required": [ "subedgeInfo", "id", "from", "to" ]
152
			},
153
			"minItems": 1,
154
			"uniqueItems": true
155
		},
156
		"possibleEnumValues": {
157
			"type": "object"
158
		},
159
		"groups": {
160
			"type": "array",
161
			"items": {
162
				"type": "object",
163
				"properties": {
164
					"id": {
165
						"type": "integer"
166
					},
167
					"name": {
168
						"type": "string"
169
					},
170
					"verticesId": {
171
						"type": "array",
172
						"items": {
173
							"type": "integer"
174
						},
175
						"minItems": 1
176
					},
177
					"verticesEdgeFromId": {
178
						"type": "array",
179
						"items": {
180
							"type": "integer"
181
						}
182
					},
183
					"verticesEdgeToId": {
184
						"type": "array",
185
						"items": {
186
							"type": "integer"
187
						}
188
					},
189
					"position": {
190
						"type": "object",
191
						"properties": {
192
							"x": {
193
								"type": "number"
194
							},
195
							"y": {
196
								"type": "number"
197
							}
198
						},
199
						"required": [ "x", "y" ]
200
					}
201
				},
202
				"required": [ "id", "name", "verticesId" ]
203
			},
204
			"uniqueItems": true
205
		},
206
		"sideBar": {
207
			"type": "array",
208
			"items": {
209
				"type": "object",
210
				"properties": {
211
					"id": {
212
						"type": "string",
213
						"pattern": "^(group|vertex)-[0-9]+$"
214
					},
215
					"isIconsDisplayed": {
216
						"type": "boolean"
217
					}
218
				},
219
				"required": [ "id", "isIconsDisplayed" ]
220
			},
221
			"uniqueItems": true
222
		},
223
		"highlightedVertex": {
224
			"type": "string"
225
		},
226
		"highlightedEdge": {
227
			"type": "string"
228
		}
229
	},
230
	"required": [ "attributeTypes", "edgeArchetypes", "vertexArchetypes", "vertices", "edges", "possibleEnumValues", "groups", "sideBar", "highlightedVertex", "highlightedEdge" ]
231
}
(1-1/6)