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

Wyświetl plik

@ -3,7 +3,7 @@
"$schema": "https://json-schema.org/draft/2020-12/schema", "$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "List of awards by sponsor and programmatic definitions of each", "description": "List of awards by sponsor and programmatic definitions of each",
"patternProperties": { "patternProperties": {
"[0-9A-Z]{3,10}": { "[0-9A-Z]{2,10}": {
"title": "Awards Tracker Definitions", "title": "Awards Tracker Definitions",
"type": "object", "type": "object",
"required": [ "required": [
@ -14,152 +14,175 @@
"sponsor", "sponsor",
"website" "website"
], ],
"awards": { "properties": {
"description": "A list of awards from this sponsor with a programmatic description of each", "awards": {
"type": "object", "description": "A list of awards from this sponsor with a programmatic description of each",
"patternProperties": { "type": "object",
"[0-9A-Z]{3,10}": { "patternProperties": {
"title": "Awards", "[0-9A-Z]{3,10}": {
"type": "object", "title": "Awards",
"required": [
"name",
"rule",
"sponsor",
"tooltip"
],
"name": {
"type": "string",
"description": "Full name of the award"
},
"rule": {
"type": "object", "type": "object",
"description": "Award rules", "required": [
"name",
"rule",
"sponsor",
"tooltip"
],
"properties": { "properties": {
"band": { "name": {
"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": {
"type": "string", "type": "string",
"description": "The type of award", "description": "Full name of the award"
"enum": [
"call",
"callarea",
"calls2band",
"calls2dxcc",
"cnty",
"cont",
"cont2band",
"cont5",
"cont52band",
"count",
"dxcc",
"dxcc2band",
"grids",
"mode",
"state",
"states2band"
]
}, },
"unique": { "rule": {
"type": "integer", "type": "object",
"description": "Number of uniques that is required" "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"
} }
} }
} }