{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Disciplinary Warning Letter","description":"Formal written warning with incident facts, breached rules, expected correction, correction deadline and escalation path. Includes acknowledgement-of-receipt block.","type":"object","required":["employer","employee","letter_date","delivery_method","warning_level","incident_facts","expected_corrections","correction_deadline","signatory"],"additionalProperties":false,"properties":{"employer":{"type":"object","required":["name","address"],"additionalProperties":false,"properties":{"name":{"type":"string","minLength":1},"address":{"type":"string","minLength":1},"reference":{"type":"string"}}},"employee":{"type":"object","required":["name","position","address"],"additionalProperties":false,"properties":{"name":{"type":"string","minLength":1},"position":{"type":"string","minLength":1},"address":{"type":"string","minLength":1}}},"letter_date":{"type":"string","format":"date"},"delivery_method":{"type":"string","enum":["hand","registered_mail","email"]},"warning_level":{"type":"string","enum":["verbal_confirmed","first_written","final_written"]},"incident_facts":{"type":"array","minItems":1,"items":{"type":"object","required":["date","description"],"additionalProperties":false,"properties":{"date":{"type":"string","format":"date"},"location":{"type":"string"},"description":{"type":"string","minLength":1}}}},"rules_breached":{"type":"array","items":{"type":"string","minLength":1}},"prior_warnings":{"type":"array","items":{"type":"object","required":["date","level","summary"],"additionalProperties":false,"properties":{"date":{"type":"string","format":"date"},"level":{"type":"string","enum":["verbal_confirmed","first_written","final_written"]},"summary":{"type":"string","minLength":1}}}},"expected_corrections":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"correction_deadline":{"type":"string","format":"date"},"signatory":{"type":"object","required":["name","role"],"additionalProperties":false,"properties":{"name":{"type":"string","minLength":1},"role":{"type":"string","minLength":1}}}}}