From d88979e37a6b9367c18c15dfe978ab8fbf9812c4 Mon Sep 17 00:00:00 2001 From: Lars Date: Tue, 12 Aug 2025 10:22:03 +0200 Subject: [PATCH] =?UTF-8?q?schemas/plan=5Ftemplates.json=20hinzugef=C3=BCg?= =?UTF-8?q?t?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- schemas/plan_templates.json | 38 +++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 schemas/plan_templates.json diff --git a/schemas/plan_templates.json b/schemas/plan_templates.json new file mode 100644 index 0000000..3e5b2b2 --- /dev/null +++ b/schemas/plan_templates.json @@ -0,0 +1,38 @@ +{ + "$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" } + } +} \ No newline at end of file