{ "name": "Training", "type": "object", "properties": { "training_id": { "type": "string", "description": "Training record ID" }, "training_name": { "type": "string", "description": "Name of the training program" }, "training_type": { "type": "string", "enum": [ "food_safety", "alcohol_service", "customer_service", "safety", "onboarding", "culinary_skills", "equipment_operation", "compliance", "leadership", "other" ], "description": "Type of training" }, "description": { "type": "string" }, "workforce_id": { "type": "string", "description": "Worker enrolled in this training" }, "workforce_name": { "type": "string" }, "staff_id": { "type": "string", "description": "Staff record ID (if different from workforce)" }, "vendor_id": { "type": "string", "description": "Vendor sponsoring this training" }, "vendor_name": { "type": "string" }, "client_id": { "type": "string", "description": "Client-specific training (if applicable)" }, "client_name": { "type": "string" }, "instructor_name": { "type": "string", "description": "Instructor or training provider" }, "training_format": { "type": "string", "enum": [ "in_person", "online", "hybrid", "on_the_job", "video" ], "default": "online" }, "duration_hours": { "type": "number", "minimum": 0, "description": "Total training duration in hours" }, "enrollment_date": { "type": "string", "format": "date", "description": "When worker was enrolled" }, "start_date": { "type": "string", "format": "date", "description": "Training start date" }, "completion_date": { "type": "string", "format": "date", "description": "Date training was completed" }, "expiry_date": { "type": "string", "format": "date", "description": "When this training expires and needs renewal" }, "status": { "type": "string", "enum": [ "not_started", "enrolled", "in_progress", "completed", "failed", "expired", "cancelled" ], "default": "not_started", "description": "Training status" }, "score": { "type": "number", "minimum": 0, "maximum": 100, "description": "Score achieved (if graded)" }, "passing_score": { "type": "number", "default": 70, "description": "Minimum passing score" }, "certification_earned": { "type": "string", "description": "Name of certification earned upon completion" }, "certification_id": { "type": "string", "description": "Reference to Certification entity if one was issued" }, "cost": { "type": "number", "minimum": 0, "description": "Cost of this training" }, "billable_to_client": { "type": "boolean", "default": false }, "notes": { "type": "string" } }, "required": [ "training_name", "training_type", "workforce_id", "status" ] }