{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://example.local/schemas/plan_templates.json", "title": "PlanTemplate", "type": "object", "additionalProperties": false, "required": [ "id", "name", "discipline", "age_group", "target_group", "total_minutes", "sections", "goals", "equipment_allowed", "created_by", "version" ], "properties": { "id": { "type": "string" }, "name": { "type": "string", "minLength": 1 }, "discipline": { "type": "string" }, "age_group": { "type": "string" }, "target_group": { "type": "string" }, "total_minutes": { "type": "integer", "minimum": 0 }, "sections": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": ["name", "target_minutes", "must_keywords", "forbid_keywords", "capability_targets"], "properties": { "name": { "type": "string" }, "target_minutes": { "type": "integer", "minimum": 0 }, "must_keywords": { "type": "array", "items": { "type": "string" } }, "forbid_keywords": { "type": "array", "items": { "type": "string" } }, "capability_targets": { "type": "object", "additionalProperties": { "type": "integer" } } } } }, "goals": { "type": "array", "items": { "type": "string" } }, "equipment_allowed": { "type": "array", "items": { "type": "string" } }, "created_by": { "type": "string" }, "version": { "type": "string" } } }