1
|
{
|
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
3
|
"$id": "https://hydrilla.koszko.org/schemas/api_source_description-2.schema.json",
|
4
|
"title": "Source description",
|
5
|
"description": "Built description of a Hydrilla source package",
|
6
|
"type": "object",
|
7
|
"required": [
|
8
|
"$schema",
|
9
|
"source_name",
|
10
|
"source_copyright",
|
11
|
"source_archives",
|
12
|
"upstream_url",
|
13
|
"definitions"
|
14
|
],
|
15
|
"properties": {
|
16
|
"$schema": {
|
17
|
"description": "Mark this instance as conforming to source description schema 2.x",
|
18
|
"type": "string",
|
19
|
"pattern": "^https://hydrilla\\.koszko\\.org/schemas/api_source_description-2\\.(([1-9][0-9]*|0)\\.)*schema\\.json$"
|
20
|
},
|
21
|
"source_name": {
|
22
|
"$ref": "./common_definitions-2.schema.json#/definitions/source_name"
|
23
|
},
|
24
|
"source_copyright": {
|
25
|
"description": "Which files indicate license terms of the source package",
|
26
|
"$ref": "./common_definitions-2.schema.json#/definitions/file_ref_list_sha256"
|
27
|
},
|
28
|
"source_archives": {
|
29
|
"description": "What archive extensions are available for this package's sources",
|
30
|
"type": "object",
|
31
|
"required": ["zip"],
|
32
|
"additionalProperties": {
|
33
|
"description": "What is the SHA256 sum of given source archive",
|
34
|
"type": "object",
|
35
|
"required": ["sha256"],
|
36
|
"properties": {
|
37
|
"sha256": {
|
38
|
"$ref": "./common_definitions-2.schema.json#/definitions/sha256"
|
39
|
}
|
40
|
}
|
41
|
},
|
42
|
"examples": [{
|
43
|
"zip": {
|
44
|
"sha256": "688461da362ffe2fc8e85db73e709a5356d41c8aeb7d1eee7170c64ee21dd2a2"
|
45
|
}
|
46
|
}]
|
47
|
},
|
48
|
"upstream_url": {
|
49
|
"description": "Where this software/work initially comes from",
|
50
|
"type": "string"
|
51
|
},
|
52
|
"comment": {
|
53
|
"$ref": "./common_definitions-2.schema.json#/definitions/comment"
|
54
|
},
|
55
|
"definitions": {
|
56
|
"description": "References to site resources and pattern->payload mappings",
|
57
|
"type": "array",
|
58
|
"items": {
|
59
|
"$ref": "./common_definitions-2.schema.json#/definitions/typed_item_ref"
|
60
|
}
|
61
|
},
|
62
|
"generated_by": {
|
63
|
"$ref": "./common_definitions-2.schema.json#/definitions/generated_by"
|
64
|
}
|
65
|
}
|
66
|
}
|