{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","required":["company","employee","request"],"properties":{"company":{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},"employee":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"department":{"type":"string"},"employee_id":{"type":"string"},"manager":{"type":"string"}}},"request":{"type":"object","required":["date","type","start_date","end_date","total_days"],"properties":{"date":{"type":"string"},"type":{"type":"string","enum":["annual_leave","sick_leave","unpaid_leave","parental_leave","other"]},"start_date":{"type":"string"},"end_date":{"type":"string"},"total_days":{"type":"number"},"reason":{"type":"string"}}},"status":{"type":"string","enum":["pending","approved","rejected"],"default":"pending"},"approved_by":{"type":"object","properties":{"name":{"type":"string"},"date":{"type":"string"}}},"notes":{"type":"string"}}}