fixed some inconsitency in awards.json and starting awards.schema.json to validate awards.json

JSON-Schemas
Matthew Chambers 2021-08-30 14:01:07 -05:00
rodzic 628e5d598e
commit fb7f925676
2 zmienionych plików z 185 dodań i 148 usunięć

Wyświetl plik

@ -44,7 +44,9 @@
"Phone"
],
"type": "dxcc2band",
"unique": 100
"unique": [
100
]
},
"sponsor": "ARRL",
"tooltip": "Five-Band DXCC"
@ -139,7 +141,9 @@
"Phone"
],
"type": "cont2band",
"unique": 6
"unique": [
6
]
},
"sponsor": "ARRL",
"tooltip": "Five-Band Worked All Continents"
@ -196,7 +200,9 @@
"Phone"
],
"type": "states2band",
"unique": 50
"unique": [
50
]
},
"sponsor": "ARRL",
"tooltip": "5 Band Worked All States"
@ -665,7 +671,9 @@
"Digital"
],
"type": "cont52band",
"unique": 5
"unique": [
5
]
},
"sponsor": "ERC",
"tooltip": "5-Band Worked All Continents"
@ -5228,7 +5236,9 @@
"FT8"
],
"type": "calls2dxcc",
"unique": 5
"unique": [
5
]
},
"sponsor": "FT8DMC",
"tooltip": "Worked All Black Sea"
@ -6314,7 +6324,9 @@
"FT8"
],
"type": "states2band",
"unique": 50
"unique": [
50
]
},
"sponsor": "FT8DMC",
"tooltip": "5-Band Worked All States"
@ -9552,7 +9564,9 @@
"Mixed"
],
"type": "calls2band",
"unique": 100
"unique": [
100
]
},
"sponsor": "GT",
"tooltip": "Worked 100 Stations in 4 bands"

Wyświetl plik

@ -3,7 +3,7 @@
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "List of awards by sponsor and programmatic definitions of each",
"patternProperties": {
"[0-9A-Z]{3,10}": {
"[0-9A-Z]{2,10}": {
"title": "Awards Tracker Definitions",
"type": "object",
"required": [
@ -14,152 +14,175 @@
"sponsor",
"website"
],
"awards": {
"description": "A list of awards from this sponsor with a programmatic description of each",
"type": "object",
"patternProperties": {
"[0-9A-Z]{3,10}": {
"title": "Awards",
"type": "object",
"required": [
"name",
"rule",
"sponsor",
"tooltip"
],
"name": {
"type": "string",
"description": "Full name of the award"
},
"rule": {
"properties": {
"awards": {
"description": "A list of awards from this sponsor with a programmatic description of each",
"type": "object",
"patternProperties": {
"[0-9A-Z]{3,10}": {
"title": "Awards",
"type": "object",
"description": "Award rules",
"required": [
"name",
"rule",
"sponsor",
"tooltip"
],
"properties": {
"band": {
"type": "array",
"description": "Array of bands this award is valid for, or single array value mixed",
"items": {
"type": "string",
"enum": [
"Mixed",
"160m",
"80m",
"60m",
"40m",
"30m",
"20m",
"17m",
"15m",
"12m",
"11m",
"10m",
"6m",
"4m",
"2m",
"1.25m",
"70cm",
"33cm",
"23cm"
]
}
},
"call": {
"type": "array",
"description": "Array of valid callsigns needed to work for award",
"items": {
"type": "string"
}
},
"count": {
"type": "array",
"description": "Array of the count of type that is needed for this award",
"items": {
"type": "integer"
}
},
"dxcc": {
"type": "array",
"description": "DXCC entity by ARRL DXCC entity number that are valid for award",
"items": {
"type": "integer"
}
},
"endorse": {
"type": "array",
"description": "Array of bands to that count as single band endorsements (if any)",
"items": {
"type": "string",
"enum": [
"Mixed",
"160m",
"80m",
"60m",
"40m",
"30m",
"20m",
"17m",
"15m",
"12m",
"11m",
"10m",
"6m",
"4m",
"2m",
"1.25m",
"70cm",
"33cm",
"23cm"
]
}
},
"mode": {
"type": "array",
"description": "Array of modes valid for award",
"items": {
"type": "string",
"enum": [
"Mixed",
"CW",
"Digital",
"Phone"
]
}
},
"type": {
"name": {
"type": "string",
"description": "The type of award",
"enum": [
"call",
"callarea",
"calls2band",
"calls2dxcc",
"cnty",
"cont",
"cont2band",
"cont5",
"cont52band",
"count",
"dxcc",
"dxcc2band",
"grids",
"mode",
"state",
"states2band"
]
"description": "Full name of the award"
},
"unique": {
"type": "integer",
"description": "Number of uniques that is required"
"rule": {
"type": "object",
"description": "Award rules",
"properties": {
"band": {
"type": "array",
"description": "Array of bands this award is valid for, or single array value mixed",
"items": {
"type": "string",
"enum": [
"Mixed",
"160m",
"80m",
"60m",
"40m",
"30m",
"20m",
"17m",
"15m",
"12m",
"11m",
"10m",
"6m",
"4m",
"2m",
"1.25m",
"70cm",
"33cm",
"23cm"
]
}
},
"call": {
"type": "array",
"description": "Array of valid callsigns needed to work for award",
"items": {
"type": "string"
}
},
"count": {
"type": "array",
"description": "Array of the count of type that is needed for this award",
"items": {
"type": "integer"
}
},
"dxcc": {
"type": "array",
"description": "DXCC entity by ARRL DXCC entity number that are valid for award",
"items": {
"type": "integer"
}
},
"endorse": {
"type": "array",
"description": "Array of bands to that count as single band endorsements (if any)",
"items": {
"type": "string",
"enum": [
"Mixed",
"160m",
"80m",
"60m",
"40m",
"30m",
"20m",
"17m",
"15m",
"12m",
"11m",
"10m",
"6m",
"4m",
"2m",
"1.25m",
"70cm",
"33cm",
"23cm"
]
}
},
"mode": {
"type": "array",
"description": "Array of modes valid for award",
"items": {
"type": "string",
"enum": [
"Mixed",
"CW",
"Digital",
"FT8",
"FT4",
"Phone"
]
}
},
"type": {
"type": "string",
"description": "The type of award",
"enum": [
"call",
"callarea",
"calls2band",
"calls2dxcc",
"cnty",
"cont",
"cont2band",
"cont5",
"cont52band",
"count",
"cqz",
"dxcc",
"dxcc2band",
"grids",
"IOTA",
"mode",
"numsfx",
"px",
"pxa",
"pxplus",
"sfx",
"states",
"states2band"
]
},
"unique": {
"type": "array",
"description": "Number of uniques that is required",
"items": {
"type": "integer"
}
},
"zone": {
"type": "array",
"description": "Zone Numbers that must be worked for award",
"items": {
"type": "integer"
}
}
}
},
"sponsor": {
"type": "string",
"description": "Short name of award sponsor"
},
"tooltip": {
"type": "string",
"description": "Text for award tracker tooltip"
}
}
},
"sponsor": {
"type": "string",
"description": "Short name of award sponsor"
},
"tooltip": {
"type": "string",
"description": "Text for award tracker tooltip"
}
}
}