| { |
| "$schema": "https://json-schema.org/draft/2020-12/schema", |
| "$id": "https://resmp.dev/schemas/benchmark-instrument-rev01.json", |
| "title": "RESMP Benchmark Instrument Rev 01", |
| "type": "object", |
| "required": ["title", "series", "groups"], |
| "additionalProperties": false, |
| "properties": { |
| "title": {"type": "string", "minLength": 1}, |
| "subtitle": {"type": "string"}, |
| "higherIsBetter": {"type": "boolean", "default": true}, |
| "series": { |
| "type": "array", "minItems": 1, |
| "items": { |
| "type": "object", "required": ["id", "label", "color"], "additionalProperties": false, |
| "properties": { |
| "id": {"type": "string", "pattern": "^[A-Za-z][A-Za-z0-9_-]*$"}, |
| "label": {"type": "string", "minLength": 1}, |
| "color": {"type": "string", "pattern": "^#[0-9A-Fa-f]{6}$"} |
| } |
| } |
| }, |
| "groups": { |
| "type": "array", "minItems": 1, |
| "items": { |
| "type": "object", "required": ["name", "panels"], "additionalProperties": false, |
| "properties": { |
| "name": {"type": "string", "minLength": 1}, |
| "panels": { |
| "type": "array", "minItems": 1, |
| "items": { |
| "type": "object", "required": ["name", "values"], "additionalProperties": false, |
| "properties": { |
| "name": {"type": "string", "minLength": 1}, |
| "values": { |
| "type": "object", |
| "additionalProperties": {"type": ["number", "null"]} |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
|
|