Project

General

Profile

Download (2 KB) Statistics
| Branch: | Tag: | Revision:

hydrilla-json-schemas / api_source_description-2.schema.json @ master

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
}
(9-9/14)