{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://os2ai.com/schema/case-1.0.json","title":"CaseForge Case (SSOT)","type":"object","additionalProperties":false,"required":["schema_version","slug","title","summary","entities","relations","timeline","evidence","issues","opinions","decisions","sources"],"properties":{"schema_version":{"const":"1.0"},"slug":{"type":"string","pattern":"^[a-z0-9][a-z0-9\\-]{1,62}$"},"title":{"type":"string","maxLength":300},"title_en":{"type":"string","maxLength":300},"summary":{"type":"string","maxLength":20000},"summary_en":{"type":"string","maxLength":20000},"overview":{"type":"string","maxLength":20000},"status":{"enum":["open","pending","closed","archived"]},"tags":{"type":"array","items":{"type":"string","maxLength":300},"maxItems":50},"disclaimer":{"type":"string","maxLength":20000},"is_demo":{"type":"boolean"},"entities":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["name","type"],"additionalProperties":false,"properties":{"name":{"type":"string","maxLength":300},"type":{"enum":["person","org","court","agency","document","place","other"]},"role":{"type":"string","maxLength":300},"description":{"type":"string","maxLength":20000},"aliases":{"type":"array","items":{"type":"string","maxLength":300}}}},"maxProperties":2000},"relations":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["from","to","type"],"additionalProperties":false,"properties":{"from":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"to":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"type":{"type":"string","maxLength":300},"label":{"type":"string","maxLength":300},"note":{"type":"string","maxLength":20000}}},"maxProperties":2000},"timeline":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["date","title"],"additionalProperties":false,"properties":{"date":{"type":"string","pattern":"^\\d{4}(-\\d{2}(-\\d{2})?)?$|^$"},"title":{"type":"string","maxLength":300},"detail":{"type":"string","maxLength":20000},"refs":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"}}}},"maxProperties":2000},"evidence":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["title"],"additionalProperties":false,"properties":{"title":{"type":"string","maxLength":300},"kind":{"type":"string","maxLength":300},"date":{"type":"string","pattern":"^\\d{4}(-\\d{2}(-\\d{2})?)?$|^$"},"description":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":300},"status":{"enum":["have","missing","requested","disputed"]},"refs":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"}}}},"maxProperties":2000},"issues":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["title"],"additionalProperties":false,"properties":{"title":{"type":"string","maxLength":300},"description":{"type":"string","maxLength":20000},"status":{"enum":["open","resolved","parked"]},"positions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"string","maxLength":20000}}}},"maxProperties":2000},"opinions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["author","text"],"additionalProperties":false,"properties":{"author":{"type":"string","maxLength":300},"role":{"type":"string","maxLength":300},"text":{"type":"string","maxLength":20000},"date":{"type":"string","pattern":"^\\d{4}(-\\d{2}(-\\d{2})?)?$|^$"},"issue":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"}}},"maxProperties":2000},"decisions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["title","text"],"additionalProperties":false,"properties":{"title":{"type":"string","maxLength":300},"text":{"type":"string","maxLength":20000},"date":{"type":"string","pattern":"^\\d{4}(-\\d{2}(-\\d{2})?)?$|^$"},"status":{"enum":["draft","final"]},"verdict":{"type":"string","maxLength":300},"by":{"type":"string","maxLength":300}}},"maxProperties":2000},"sources":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_\\-]{1,48}$"},"additionalProperties":{"type":"object","required":["title"],"additionalProperties":false,"properties":{"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":300},"note":{"type":"string","maxLength":20000}}},"maxProperties":2000}}}