@velocitycareerlabs/sample-libapp 1.25.0-dev-build.1c5e2a209
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/contexts/credential-extensions-2022.jsonld.json +36 -0
- package/contexts/layer1-v1.0.jsonld.json +414 -0
- package/contexts/layer1-v1.1.jsonld.json +451 -0
- package/display-descriptors/education-degree-graduation-v1.1.descriptor.json +263 -0
- package/display-descriptors/email-v1.0.descriptor.json +19 -0
- package/display-descriptors/employment-current-v1.1.descriptor.json +189 -0
- package/display-descriptors/en/education-degree-graduation-v1.1.descriptor.json +263 -0
- package/display-descriptors/en/email-v1.0.descriptor.json +19 -0
- package/display-descriptors/en/employment-current-v1.1.descriptor.json +189 -0
- package/display-descriptors/en/open-badge-credential.descriptor.json +259 -0
- package/display-descriptors/open-badge-credential.descriptor.json +259 -0
- package/docker/compose.yml +9 -0
- package/docker/nginx.conf +9 -0
- package/form-schemas/EducationDegreeGraduationV1.1.form-schema.json +126 -0
- package/form-schemas/EmailV1.0.form-schema.json +5 -0
- package/form-schemas/EmploymentCurrentV1.1.form-schema.json +96 -0
- package/form-schemas/OpenBadgeCredential.form-schema.json +113 -0
- package/form-schemas/en/EducationDegreeGraduationV1.1.form-schema.json +126 -0
- package/form-schemas/en/EmailV1.0.form-schema.json +5 -0
- package/form-schemas/en/EmploymentCurrentV1.1.form-schema.json +96 -0
- package/form-schemas/en/OpenBadgeCredential.form-schema.json +113 -0
- package/package.json +18 -0
- package/schemas/education-degree-graduation-v1.1.schema.json +366 -0
- package/schemas/email-v1.0.schema.json +44 -0
- package/schemas/employment-current-v1.1.schema.json +267 -0
- package/schemas/open-badge-credential.schema.json +1351 -0
@@ -0,0 +1,366 @@
|
|
1
|
+
{
|
2
|
+
"title": "Education degree graduation",
|
3
|
+
"$id": "https://velocitynetwork.foundation/schemas/education-degree-graduation-v1.1",
|
4
|
+
"allOf": [
|
5
|
+
{
|
6
|
+
"$ref": "#/definitions/Education-degree-base_Schema"
|
7
|
+
},
|
8
|
+
{
|
9
|
+
"type": "object",
|
10
|
+
"properties": {
|
11
|
+
"registrationDate": {
|
12
|
+
"$ref": "#/definitions/Date_Schema"
|
13
|
+
},
|
14
|
+
"startDate": {
|
15
|
+
"$ref": "#/definitions/Date_Schema"
|
16
|
+
},
|
17
|
+
"endDate": {
|
18
|
+
"$ref": "#/definitions/Date_Schema"
|
19
|
+
},
|
20
|
+
"conferredDate": {
|
21
|
+
"$ref": "#/definitions/Date_Schema"
|
22
|
+
},
|
23
|
+
"grade": {
|
24
|
+
"$ref": "#/definitions/Score_Schema"
|
25
|
+
},
|
26
|
+
"honors": {
|
27
|
+
"type": "string",
|
28
|
+
"description": "The type of honors degree given, such as cum laude, merit, etc.",
|
29
|
+
"maxLength": 64
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
],
|
34
|
+
"required": [
|
35
|
+
"institution",
|
36
|
+
"conferredDate",
|
37
|
+
"degreeName",
|
38
|
+
"recipient"
|
39
|
+
],
|
40
|
+
"description": "",
|
41
|
+
"definitions": {
|
42
|
+
"Education-degree-base_Schema": {
|
43
|
+
"title": "Degree-base",
|
44
|
+
"type": "object",
|
45
|
+
"properties": {
|
46
|
+
"@context": {
|
47
|
+
"$ref": "#/definitions/Json-ld-context_Schema"
|
48
|
+
},
|
49
|
+
"type": {
|
50
|
+
"type": "string",
|
51
|
+
"default": "EducationDegree"
|
52
|
+
},
|
53
|
+
"institution": {
|
54
|
+
"$ref": "#/definitions/Organization_Schema"
|
55
|
+
},
|
56
|
+
"school": {
|
57
|
+
"$ref": "#/definitions/Organization_Schema"
|
58
|
+
},
|
59
|
+
"programName": {
|
60
|
+
"type": "string",
|
61
|
+
"description": "The program in which the person holding the degree studied for the degree.",
|
62
|
+
"maxLength": 256
|
63
|
+
},
|
64
|
+
"programType": {
|
65
|
+
"type": "string",
|
66
|
+
"description": "The type of program, e.g., full.",
|
67
|
+
"maxLength": 256
|
68
|
+
},
|
69
|
+
"programMode": {
|
70
|
+
"type": "string",
|
71
|
+
"description": "The program mode or method of teaching, e.g., online.",
|
72
|
+
"maxLength": 256
|
73
|
+
},
|
74
|
+
"degreeName": {
|
75
|
+
"type": "string",
|
76
|
+
"description": "The name of the degree.",
|
77
|
+
"maxLength": 256
|
78
|
+
},
|
79
|
+
"degreeMajor": {
|
80
|
+
"type": "array",
|
81
|
+
"description": "The major field or fields of study of the degree.",
|
82
|
+
"minItems": 1,
|
83
|
+
"items": {
|
84
|
+
"type": "string",
|
85
|
+
"maxLength": 128
|
86
|
+
}
|
87
|
+
},
|
88
|
+
"degreeMinor": {
|
89
|
+
"type": "array",
|
90
|
+
"description": "The minor field or fields of study of the degree.",
|
91
|
+
"minItems": 1,
|
92
|
+
"items": {
|
93
|
+
"type": "string",
|
94
|
+
"maxLength": 128
|
95
|
+
}
|
96
|
+
},
|
97
|
+
"description": {
|
98
|
+
"type": "string",
|
99
|
+
"description": "A detailed description of the degree.",
|
100
|
+
"maxLength": 2048
|
101
|
+
},
|
102
|
+
"recipient": {
|
103
|
+
"$ref": "#/definitions/PersonName_Schema"
|
104
|
+
},
|
105
|
+
"alignment": {
|
106
|
+
"type": "array",
|
107
|
+
"description": "A public resource to which the degree is aligned.",
|
108
|
+
"minItems": 1,
|
109
|
+
"items": {
|
110
|
+
"$ref": "#/definitions/Alignment_Schema"
|
111
|
+
}
|
112
|
+
}
|
113
|
+
}
|
114
|
+
},
|
115
|
+
"Json-ld-context_Schema": {
|
116
|
+
"title": "json-ld-context",
|
117
|
+
"oneOf": [
|
118
|
+
{
|
119
|
+
"type": "string",
|
120
|
+
"maxLength": 2048
|
121
|
+
},
|
122
|
+
{
|
123
|
+
"type": "array",
|
124
|
+
"minItems": 1,
|
125
|
+
"items": {
|
126
|
+
"type": "string",
|
127
|
+
"maxLength": 2048
|
128
|
+
}
|
129
|
+
}
|
130
|
+
],
|
131
|
+
"description": "Simplified context for Velocity Publishers to Use"
|
132
|
+
},
|
133
|
+
"Alignment_Schema": {
|
134
|
+
"title": "Alignment",
|
135
|
+
"type": "object",
|
136
|
+
"additionalProperties": false,
|
137
|
+
"properties": {
|
138
|
+
"type": {
|
139
|
+
"type": "string",
|
140
|
+
"default": "AlignmentObject"
|
141
|
+
},
|
142
|
+
"targetName": {
|
143
|
+
"type": "string",
|
144
|
+
"description": "Name of the target alignment.",
|
145
|
+
"maxLength": 256
|
146
|
+
},
|
147
|
+
"targetUrl": {
|
148
|
+
"type": "string",
|
149
|
+
"format": "uri",
|
150
|
+
"description": "URL of the target alignment. ",
|
151
|
+
"maxLength": 2048
|
152
|
+
},
|
153
|
+
"targetDescription": {
|
154
|
+
"type": "string",
|
155
|
+
"description": "Detailed description of the target alignment. ",
|
156
|
+
"maxLength": 2048
|
157
|
+
},
|
158
|
+
"targetCode": {
|
159
|
+
"type": "string",
|
160
|
+
"description": "Code of the target alignment. ",
|
161
|
+
"maxLength": 256
|
162
|
+
},
|
163
|
+
"targetFramework": {
|
164
|
+
"type": "string",
|
165
|
+
"description": "The framework to which the target belongs. ",
|
166
|
+
"maxLength": 256
|
167
|
+
}
|
168
|
+
},
|
169
|
+
"required": [
|
170
|
+
"targetName",
|
171
|
+
"targetUrl"
|
172
|
+
]
|
173
|
+
},
|
174
|
+
"Date_Schema": {
|
175
|
+
"title": "Calendar date",
|
176
|
+
"type": "string",
|
177
|
+
"pattern": "^[1,2]\\d\\d\\d(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\\d|30|31))?)?$",
|
178
|
+
"description": ""
|
179
|
+
},
|
180
|
+
"Did_Schema": {
|
181
|
+
"title": "DID",
|
182
|
+
"type": "string",
|
183
|
+
"pattern": "^did:[a-z0-9]+:[A-Za-z0-9._:?=&%;-]+$"
|
184
|
+
},
|
185
|
+
"Organization_Schema": {
|
186
|
+
"title": "Organization",
|
187
|
+
"type": "object",
|
188
|
+
"additionalProperties": false,
|
189
|
+
"properties": {
|
190
|
+
"type": {
|
191
|
+
"type": "string",
|
192
|
+
"default": "Organization"
|
193
|
+
},
|
194
|
+
"name": {
|
195
|
+
"type": "string",
|
196
|
+
"description": "The name of the organization.",
|
197
|
+
"maxLength": 256
|
198
|
+
},
|
199
|
+
"identifier": {
|
200
|
+
"$ref": "#/definitions/Did_Schema"
|
201
|
+
},
|
202
|
+
"place": {
|
203
|
+
"$ref": "#/definitions/Place_Schema"
|
204
|
+
},
|
205
|
+
"image": {
|
206
|
+
"type": "string",
|
207
|
+
"maxLength": 2048,
|
208
|
+
"format": "uri",
|
209
|
+
"description": "IRI representing the logo of the organization. This must be JPG, PNG or SVG file. \nFor PNG or JPG: 300px x 300px minimum, maximum size 500kb. "
|
210
|
+
}
|
211
|
+
},
|
212
|
+
"required": [
|
213
|
+
"name",
|
214
|
+
"place"
|
215
|
+
]
|
216
|
+
},
|
217
|
+
"PersonName_Schema": {
|
218
|
+
"title": "Person name",
|
219
|
+
"type": "object",
|
220
|
+
"additionalProperties": false,
|
221
|
+
"properties": {
|
222
|
+
"type": {
|
223
|
+
"type": "string",
|
224
|
+
"default": "PersonName"
|
225
|
+
},
|
226
|
+
"givenName": {
|
227
|
+
"type": "string",
|
228
|
+
"description": "The given name or first name of the person.",
|
229
|
+
"maxLength": 64
|
230
|
+
},
|
231
|
+
"familyName": {
|
232
|
+
"type": "string",
|
233
|
+
"description": "The family name or surname of the person.",
|
234
|
+
"maxLength": 64
|
235
|
+
},
|
236
|
+
"middleName": {
|
237
|
+
"type": "string",
|
238
|
+
"description": "The middle name of the person.",
|
239
|
+
"maxLength": 256
|
240
|
+
},
|
241
|
+
"namePrefix": {
|
242
|
+
"type": "string",
|
243
|
+
"description": "A prefix to the name such as Dr or Sir.",
|
244
|
+
"maxLength": 8
|
245
|
+
},
|
246
|
+
"nameSuffix": {
|
247
|
+
"type": "string",
|
248
|
+
"description": "A suffix to the name such as Jr. or Sr.",
|
249
|
+
"maxLength": 16
|
250
|
+
}
|
251
|
+
},
|
252
|
+
"required": [
|
253
|
+
"givenName",
|
254
|
+
"familyName"
|
255
|
+
]
|
256
|
+
},
|
257
|
+
"Place_Schema": {
|
258
|
+
"title": "Place",
|
259
|
+
"type": "object",
|
260
|
+
"additionalProperties": false,
|
261
|
+
"properties": {
|
262
|
+
"type": {
|
263
|
+
"type": "string",
|
264
|
+
"default": "Place"
|
265
|
+
},
|
266
|
+
"name": {
|
267
|
+
"type": "string",
|
268
|
+
"description": "The name of the place, e.g., building name, branch name, etc.",
|
269
|
+
"maxLength": 256
|
270
|
+
},
|
271
|
+
"addressLocality": {
|
272
|
+
"type": "string",
|
273
|
+
"description": "The locality where the place is, e.g., town or city name.",
|
274
|
+
"maxLength": 256
|
275
|
+
},
|
276
|
+
"addressRegion": {
|
277
|
+
"type": "string",
|
278
|
+
"pattern": "^[A-Z]{2}(-[A-Z0-9]{1,3})?$",
|
279
|
+
"description": "The region where the place is. These are states, provinces, etc. Must be an [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2)",
|
280
|
+
"maxLength": 6
|
281
|
+
},
|
282
|
+
"addressCountry": {
|
283
|
+
"type": "string",
|
284
|
+
"description": "The country where the place is. Must be an [ISO 3166 2 letter country code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)",
|
285
|
+
"pattern": "^[A-Z]{2}$",
|
286
|
+
"maxLength": 2
|
287
|
+
}
|
288
|
+
},
|
289
|
+
"required": [
|
290
|
+
"addressCountry"
|
291
|
+
]
|
292
|
+
},
|
293
|
+
"Score_Schema": {
|
294
|
+
"title": "Score",
|
295
|
+
"type": "object",
|
296
|
+
"additionalProperties": false,
|
297
|
+
"properties": {
|
298
|
+
"scoreMethod": {
|
299
|
+
"type": "object",
|
300
|
+
"description": "The method according to which the score is given. ",
|
301
|
+
"additionalProperties": false,
|
302
|
+
"properties": {
|
303
|
+
"type": {
|
304
|
+
"type": "string",
|
305
|
+
"default": "ScoreMethod"
|
306
|
+
},
|
307
|
+
"scoreMethodType": {
|
308
|
+
"type": "string",
|
309
|
+
"enum": [
|
310
|
+
"NormReferenced",
|
311
|
+
"CriterionReferenced"
|
312
|
+
],
|
313
|
+
"description": "One of: NormReferenced, CriterionReferenced."
|
314
|
+
},
|
315
|
+
"alignment": {
|
316
|
+
"type": "array",
|
317
|
+
"description": "A public resource to which the scoring method is aligned.",
|
318
|
+
"minItems": 1,
|
319
|
+
"items": {
|
320
|
+
"$ref": "#/definitions/Alignment_Schema"
|
321
|
+
}
|
322
|
+
},
|
323
|
+
"scoreMethodDescription": {
|
324
|
+
"type": "string",
|
325
|
+
"description": "A description of the scoring method used.",
|
326
|
+
"maxLength": 2048
|
327
|
+
},
|
328
|
+
"passingScore": {
|
329
|
+
"type": "string",
|
330
|
+
"description": "The minimum passing score",
|
331
|
+
"maxLength": 16
|
332
|
+
}
|
333
|
+
}
|
334
|
+
},
|
335
|
+
"type": {
|
336
|
+
"type": "string",
|
337
|
+
"default": "Score"
|
338
|
+
},
|
339
|
+
"scoreValue": {
|
340
|
+
"type": "string",
|
341
|
+
"description": "The score achieved by the person.",
|
342
|
+
"maxLength": 16
|
343
|
+
},
|
344
|
+
"result": {
|
345
|
+
"type": "string",
|
346
|
+
"description": "The result achieved by the person, e.g. acceptable, excellent, poor. Applicable when results are not stated as scores. ",
|
347
|
+
"maxLength": 2048
|
348
|
+
},
|
349
|
+
"passFail": {
|
350
|
+
"type": "string",
|
351
|
+
"enum": [
|
352
|
+
"Pass",
|
353
|
+
"Fail"
|
354
|
+
],
|
355
|
+
"description": "One of: Pass, Fail"
|
356
|
+
},
|
357
|
+
"scoreDescription": {
|
358
|
+
"type": "string",
|
359
|
+
"description": "Explanation or description of the meaning of the score and/or result achieved.",
|
360
|
+
"maxLength": 2048
|
361
|
+
}
|
362
|
+
},
|
363
|
+
"description": ""
|
364
|
+
}
|
365
|
+
}
|
366
|
+
}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
{
|
2
|
+
"title": "Email",
|
3
|
+
"$id": "https://velocitynetwork.foundation/schemas/email-v1.0",
|
4
|
+
"type": "object",
|
5
|
+
"additionalProperties": false,
|
6
|
+
"properties": {
|
7
|
+
"@context": {
|
8
|
+
"$ref": "#/definitions/Json-ld-context_Schema"
|
9
|
+
},
|
10
|
+
"type": {
|
11
|
+
"type": "string",
|
12
|
+
"default": "Email"
|
13
|
+
},
|
14
|
+
"email": {
|
15
|
+
"type": "string",
|
16
|
+
"format": "email",
|
17
|
+
"description": "The email address.",
|
18
|
+
"maxLength": 256
|
19
|
+
}
|
20
|
+
},
|
21
|
+
"required": [
|
22
|
+
"email"
|
23
|
+
],
|
24
|
+
"definitions": {
|
25
|
+
"Json-ld-context_Schema": {
|
26
|
+
"title": "json-ld-context",
|
27
|
+
"oneOf": [
|
28
|
+
{
|
29
|
+
"type": "string",
|
30
|
+
"maxLength": 2048
|
31
|
+
},
|
32
|
+
{
|
33
|
+
"type": "array",
|
34
|
+
"minItems": 1,
|
35
|
+
"items": {
|
36
|
+
"type": "string",
|
37
|
+
"maxLength": 2048
|
38
|
+
}
|
39
|
+
}
|
40
|
+
],
|
41
|
+
"description": "Simplified context for Velocity Publishers to Use"
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
@@ -0,0 +1,267 @@
|
|
1
|
+
{
|
2
|
+
"title": "Current employment position",
|
3
|
+
"$id": "https://velocitynetwork.foundation/schemas/employment-current-v1.1",
|
4
|
+
"allOf": [
|
5
|
+
{
|
6
|
+
"$ref": "#/definitions/Employment-base_Schema"
|
7
|
+
},
|
8
|
+
{
|
9
|
+
"type": "object",
|
10
|
+
"properties": {
|
11
|
+
"startDate": {
|
12
|
+
"$ref": "#/definitions/Date_Schema"
|
13
|
+
}
|
14
|
+
}
|
15
|
+
}
|
16
|
+
],
|
17
|
+
"required": [
|
18
|
+
"legalEmployer",
|
19
|
+
"role",
|
20
|
+
"startDate",
|
21
|
+
"recipient"
|
22
|
+
],
|
23
|
+
"definitions": {
|
24
|
+
"Employment-base_Schema": {
|
25
|
+
"title": "Employment-base",
|
26
|
+
"type": "object",
|
27
|
+
"properties": {
|
28
|
+
"@context": {
|
29
|
+
"$ref": "#/definitions/Json-ld-context_Schema"
|
30
|
+
},
|
31
|
+
"type": {
|
32
|
+
"type": "string",
|
33
|
+
"default": "Employment"
|
34
|
+
},
|
35
|
+
"legalEmployer": {
|
36
|
+
"$ref": "#/definitions/Organization_Schema"
|
37
|
+
},
|
38
|
+
"role": {
|
39
|
+
"type": "string",
|
40
|
+
"description": "The role the person has in the organization.",
|
41
|
+
"maxLength": 256
|
42
|
+
},
|
43
|
+
"description": {
|
44
|
+
"type": "string",
|
45
|
+
"description": "A detailed description of the position.",
|
46
|
+
"maxLength": 2048
|
47
|
+
},
|
48
|
+
"employmentType": {
|
49
|
+
"type": "array",
|
50
|
+
"minItems": 1,
|
51
|
+
"description": "Any of: Full-time, full-time, Part-time, part-time, Contract, contract, Temporary, temporary, Permanent, permanent, Internship, internship, Other, other. ",
|
52
|
+
"items": {
|
53
|
+
"type": "string",
|
54
|
+
"enum": [
|
55
|
+
"Contract",
|
56
|
+
"Temporary",
|
57
|
+
"Permanent",
|
58
|
+
"Internship",
|
59
|
+
"Full-time",
|
60
|
+
"Part-time",
|
61
|
+
"Other",
|
62
|
+
"contract",
|
63
|
+
"temporary",
|
64
|
+
"permanent",
|
65
|
+
"internship",
|
66
|
+
"full-time",
|
67
|
+
"part-time",
|
68
|
+
"other"
|
69
|
+
]
|
70
|
+
}
|
71
|
+
},
|
72
|
+
"place": {
|
73
|
+
"$ref": "#/definitions/Place_Schema"
|
74
|
+
},
|
75
|
+
"recipient": {
|
76
|
+
"$ref": "#/definitions/PersonName_Schema"
|
77
|
+
},
|
78
|
+
"alignment": {
|
79
|
+
"type": "array",
|
80
|
+
"description": "A public resource to which the employment position is aligned.",
|
81
|
+
"minItems": 1,
|
82
|
+
"items": {
|
83
|
+
"$ref": "#/definitions/Alignment_Schema"
|
84
|
+
}
|
85
|
+
}
|
86
|
+
}
|
87
|
+
},
|
88
|
+
"Json-ld-context_Schema": {
|
89
|
+
"title": "json-ld-context",
|
90
|
+
"oneOf": [
|
91
|
+
{
|
92
|
+
"type": "string",
|
93
|
+
"maxLength": 2048
|
94
|
+
},
|
95
|
+
{
|
96
|
+
"type": "array",
|
97
|
+
"minItems": 1,
|
98
|
+
"items": {
|
99
|
+
"type": "string",
|
100
|
+
"maxLength": 2048
|
101
|
+
}
|
102
|
+
}
|
103
|
+
],
|
104
|
+
"description": "Simplified context for Velocity Publishers to Use"
|
105
|
+
},
|
106
|
+
"Alignment_Schema": {
|
107
|
+
"title": "Alignment",
|
108
|
+
"type": "object",
|
109
|
+
"additionalProperties": false,
|
110
|
+
"properties": {
|
111
|
+
"type": {
|
112
|
+
"type": "string",
|
113
|
+
"default": "AlignmentObject"
|
114
|
+
},
|
115
|
+
"targetName": {
|
116
|
+
"type": "string",
|
117
|
+
"description": "Name of the target alignment.",
|
118
|
+
"maxLength": 256
|
119
|
+
},
|
120
|
+
"targetUrl": {
|
121
|
+
"type": "string",
|
122
|
+
"format": "uri",
|
123
|
+
"description": "URL of the target alignment. ",
|
124
|
+
"maxLength": 2048
|
125
|
+
},
|
126
|
+
"targetDescription": {
|
127
|
+
"type": "string",
|
128
|
+
"description": "Detailed description of the target alignment. ",
|
129
|
+
"maxLength": 2048
|
130
|
+
},
|
131
|
+
"targetCode": {
|
132
|
+
"type": "string",
|
133
|
+
"description": "Code of the target alignment. ",
|
134
|
+
"maxLength": 256
|
135
|
+
},
|
136
|
+
"targetFramework": {
|
137
|
+
"type": "string",
|
138
|
+
"description": "The framework to which the target belongs. ",
|
139
|
+
"maxLength": 256
|
140
|
+
}
|
141
|
+
},
|
142
|
+
"required": [
|
143
|
+
"targetName",
|
144
|
+
"targetUrl"
|
145
|
+
]
|
146
|
+
},
|
147
|
+
"Date_Schema": {
|
148
|
+
"title": "Calendar date",
|
149
|
+
"type": "string",
|
150
|
+
"pattern": "^[1,2]\\d\\d\\d(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\\d|30|31))?)?$",
|
151
|
+
"description": ""
|
152
|
+
},
|
153
|
+
"Did_Schema": {
|
154
|
+
"title": "DID",
|
155
|
+
"type": "string",
|
156
|
+
"pattern": "^did:[a-z0-9]+:[A-Za-z0-9._:?=&%;-]+$"
|
157
|
+
},
|
158
|
+
"Organization_Schema": {
|
159
|
+
"title": "Organization",
|
160
|
+
"type": "object",
|
161
|
+
"additionalProperties": false,
|
162
|
+
"properties": {
|
163
|
+
"type": {
|
164
|
+
"type": "string",
|
165
|
+
"default": "Organization"
|
166
|
+
},
|
167
|
+
"name": {
|
168
|
+
"type": "string",
|
169
|
+
"description": "The name of the organization.",
|
170
|
+
"maxLength": 256
|
171
|
+
},
|
172
|
+
"identifier": {
|
173
|
+
"$ref": "#/definitions/Did_Schema"
|
174
|
+
},
|
175
|
+
"place": {
|
176
|
+
"$ref": "#/definitions/Place_Schema"
|
177
|
+
},
|
178
|
+
"image": {
|
179
|
+
"type": "string",
|
180
|
+
"maxLength": 2048,
|
181
|
+
"format": "uri",
|
182
|
+
"description": "IRI representing the logo of the organization. This must be JPG, PNG or SVG file. \nFor PNG or JPG: 300px x 300px minimum, maximum size 500kb. "
|
183
|
+
}
|
184
|
+
},
|
185
|
+
"required": [
|
186
|
+
"name",
|
187
|
+
"place"
|
188
|
+
]
|
189
|
+
},
|
190
|
+
"PersonName_Schema": {
|
191
|
+
"title": "Person name",
|
192
|
+
"type": "object",
|
193
|
+
"additionalProperties": false,
|
194
|
+
"properties": {
|
195
|
+
"type": {
|
196
|
+
"type": "string",
|
197
|
+
"default": "PersonName"
|
198
|
+
},
|
199
|
+
"givenName": {
|
200
|
+
"type": "string",
|
201
|
+
"description": "The given name or first name of the person.",
|
202
|
+
"maxLength": 64
|
203
|
+
},
|
204
|
+
"familyName": {
|
205
|
+
"type": "string",
|
206
|
+
"description": "The family name or surname of the person.",
|
207
|
+
"maxLength": 64
|
208
|
+
},
|
209
|
+
"middleName": {
|
210
|
+
"type": "string",
|
211
|
+
"description": "The middle name of the person.",
|
212
|
+
"maxLength": 256
|
213
|
+
},
|
214
|
+
"namePrefix": {
|
215
|
+
"type": "string",
|
216
|
+
"description": "A prefix to the name such as Dr or Sir.",
|
217
|
+
"maxLength": 8
|
218
|
+
},
|
219
|
+
"nameSuffix": {
|
220
|
+
"type": "string",
|
221
|
+
"description": "A suffix to the name such as Jr. or Sr.",
|
222
|
+
"maxLength": 16
|
223
|
+
}
|
224
|
+
},
|
225
|
+
"required": [
|
226
|
+
"givenName",
|
227
|
+
"familyName"
|
228
|
+
]
|
229
|
+
},
|
230
|
+
"Place_Schema": {
|
231
|
+
"title": "Place",
|
232
|
+
"type": "object",
|
233
|
+
"additionalProperties": false,
|
234
|
+
"properties": {
|
235
|
+
"type": {
|
236
|
+
"type": "string",
|
237
|
+
"default": "Place"
|
238
|
+
},
|
239
|
+
"name": {
|
240
|
+
"type": "string",
|
241
|
+
"description": "The name of the place, e.g., building name, branch name, etc.",
|
242
|
+
"maxLength": 256
|
243
|
+
},
|
244
|
+
"addressLocality": {
|
245
|
+
"type": "string",
|
246
|
+
"description": "The locality where the place is, e.g., town or city name.",
|
247
|
+
"maxLength": 256
|
248
|
+
},
|
249
|
+
"addressRegion": {
|
250
|
+
"type": "string",
|
251
|
+
"pattern": "^[A-Z]{2}(-[A-Z0-9]{1,3})?$",
|
252
|
+
"description": "The region where the place is. These are states, provinces, etc. Must be an [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2)",
|
253
|
+
"maxLength": 6
|
254
|
+
},
|
255
|
+
"addressCountry": {
|
256
|
+
"type": "string",
|
257
|
+
"description": "The country where the place is. Must be an [ISO 3166 2 letter country code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)",
|
258
|
+
"pattern": "^[A-Z]{2}$",
|
259
|
+
"maxLength": 2
|
260
|
+
}
|
261
|
+
},
|
262
|
+
"required": [
|
263
|
+
"addressCountry"
|
264
|
+
]
|
265
|
+
}
|
266
|
+
}
|
267
|
+
}
|