{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Production Plan","description":"Master production plan over a defined period, listing planned SKUs, quantities, raw-material requirements (MRP), planned labour and capacity utilisation. Structure aligned with APICS / ASCM production-planning practice and ISO 9001:2015 clause 8.1 (operational planning and control).","type":"object","additionalProperties":false,"required":["entity","plan_period","products","schedule_overview","capacity_utilisation_pct","planner"],"$defs":{"period":{"type":"object","additionalProperties":false,"required":["start_date","end_date"],"properties":{"start_date":{"type":"string","format":"date"},"end_date":{"type":"string","format":"date"}}},"raw_material":{"type":"object","additionalProperties":false,"required":["material","required_quantity","unit","available_quantity"],"properties":{"material":{"type":"string"},"required_quantity":{"type":"number","minimum":0},"unit":{"type":"string"},"available_quantity":{"type":"number","minimum":0}}},"product":{"type":"object","additionalProperties":false,"required":["sku","description","planned_quantity","unit","target_completion_date","production_line_or_cell","raw_material_requirements","labour_hours_planned"],"properties":{"sku":{"type":"string"},"description":{"type":"string"},"planned_quantity":{"type":"number","minimum":0},"unit":{"type":"string"},"target_completion_date":{"type":"string","format":"date"},"production_line_or_cell":{"type":"string"},"raw_material_requirements":{"type":"array","items":{"$ref":"#/$defs/raw_material"}},"labour_hours_planned":{"type":"number","minimum":0},"capacity_constraint":{"type":"string"}}}},"properties":{"entity":{"type":"object","additionalProperties":false,"required":["name"],"properties":{"name":{"type":"string"},"registration":{"type":"string"},"site":{"type":"string"}}},"plan_period":{"$ref":"#/$defs/period"},"products":{"type":"array","minItems":1,"items":{"$ref":"#/$defs/product"}},"schedule_overview":{"type":"string"},"capacity_utilisation_pct":{"type":"number","minimum":0,"maximum":100},"risks":{"type":"array","items":{"type":"string"}},"planner":{"type":"object","additionalProperties":false,"required":["name","title"],"properties":{"name":{"type":"string"},"title":{"type":"string"}}}}}