{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Project plan - Plan de projet / Projectplan (BE)","description":"The plan of a project: company and optional client, project identity with version and baseline date, objectives, scope, deliverables with acceptance criteria, phases, tasks with dependencies, milestones, a critical path typed by the user, resources, budget, assumptions, constraints, a reference to the risk register, acceptance and revision history. Durations and percentages are typed, never computed, and no status count is printed. Internal by default; when shared_with_client is true the enterprise number and a payment account of the company are required (CDE art. III.25).","type":"object","additionalProperties":false,"required":["company","project","objectives","scope","deliverables","phases","plan_owner"],"properties":{"company":{"type":"object","description":"The enterprise that keeps the record. Internal by default; the CDE art. III.25 mentions are required when shared_with_client is true.","additionalProperties":false,"properties":{"name":{"type":"string"},"legal_form":{"type":"string","description":"Legal form (for example SRL, SA, SC), as the enterprise writes it."},"address":{"type":"string","description":"Seat address as the enterprise writes it."},"enterprise_number":{"type":"string","pattern":"^[01][0-9]{3}\\.[0-9]{3}\\.[0-9]{3}$","description":"Belgian enterprise number (KBO/BCE), written 0123.456.789."},"vat_number":{"type":"string","pattern":"^BE[01][0-9]{9}$","description":"Belgian VAT number, written BE0123456789 (leave out if the enterprise has none)."},"rpm_court":{"type":"string","description":"Court of the seat for the RPM / RPR mention."},"in_liquidation":{"type":"boolean","description":"Prints 'in liquidation' only when true."},"iban":{"type":"string","description":"IBAN of a payment account the enterprise holds (Code of economic law art. III.25, al. 2)."}},"required":["name"]},"client":{"type":"object","description":"The client, when the record concerns a contract.","additionalProperties":false,"properties":{"name":{"type":"string"},"enterprise_number":{"type":"string","pattern":"^[01][0-9]{3}\\.[0-9]{3}\\.[0-9]{3}$","description":"Belgian enterprise number of the client, written 0123.456.789."},"address":{"type":"string"}},"required":["name"]},"shared_with_client":{"type":"boolean","description":"Whether the record is handed to the client. When true the CDE art. III.25 mentions of the enterprise are required."},"project":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"code":{"type":"string"},"manager":{"type":"string"},"version":{"type":"string"},"baseline_date":{"type":"string","format":"date"},"planned_start":{"type":"string","format":"date"},"planned_end":{"type":"string","format":"date"}},"required":["name","code","manager","version","baseline_date","planned_start","planned_end"]},"objectives":{"type":"array","items":{"type":"string"},"minItems":1},"scope":{"type":"string"},"deliverables":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"acceptance_criteria":{"type":"string"},"due_date":{"type":"string","format":"date"}},"required":["name"]},"minItems":1},"phases":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"lead":{"type":"string"},"percent_complete":{"type":"number","minimum":0,"maximum":100}},"required":["id","name","start","end","lead"]},"minItems":1},"tasks":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"owner":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"duration_days":{"type":"number","minimum":0},"dependencies":{"type":"array","items":{"type":"string"}},"status":{"type":"string","enum":["not_started","in_progress","done","blocked"]},"percent_complete":{"type":"number","minimum":0,"maximum":100}},"required":["id","name","owner","start","end","status"]}},"critical_path":{"type":"array","items":{"type":"string"}},"milestones":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"date":{"type":"string","format":"date"}},"required":["name","date"]}},"resources":{"type":"array","items":{"type":"string"}},"budget":{"type":["string","number"]},"assumptions":{"type":"array","items":{"type":"string"}},"constraints":{"type":"array","items":{"type":"string"}},"risks_reference":{"type":"string"},"acceptance":{"type":"object","additionalProperties":false,"properties":{"by":{"type":"string"},"method":{"type":"string"}}},"revisions":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"version":{"type":"string"},"date":{"type":"string","format":"date"},"author":{"type":"string"},"change":{"type":"string"}},"required":["version","date","author","change"]}},"plan_owner":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"title":{"type":"string"}},"required":["name","title"]}}}