Pillar 03 · Automation
A2 Data Contract Template
Agree expectations before the data moves, not after it breaks.
Form Document and YAML
What it's for
A third-party property manager changes its rent roll export, and one building's rent arrives monthly instead of annually. It flows into the valuation model and the investor pack, and nobody notices for six weeks. A data contract would have said 'annual, in GBP', and a check would have enforced it on day one.
A data contract is a written agreement between the team that produces a dataset and the teams that use it: the schema, the meaning, the quality thresholds, the delivery schedule and how changes are made. This template adds a section most contracts lack: what AI tools may and may not do with the data, and what they need from it.
What you get
- Schema Every column a consumer relies on, linked to its certified term in M1.
- Quality Each threshold points to a check in the library (A1), with its severity from the severity policy (A3).
- AI consumers What AI tools may do with this data
- Change management The notice each kind of change needs, and who approves it.
How it connects
Its quality section points to A1 checks with A3's severity, its meaning section to M1's certified terms, and its AI consumers are S1 use cases.
A flavour of the worked example
| Dataset or feed | fact_rent_roll: Monthly rent roll from external property managers |
|---|---|
| Producer | Property management partners |
| Consumers | Valuation model, Quarterly investor pack, EX-02, EX-04 |
| A quality threshold | A-05b: rent moves under 50% between periods (Critical) |
| Delivery | Monthly, by the 5th working day after period end |
A few fields from one record of the toolkit's worked example, with long text shortened.
Next step
Guided build coming next.
Request access
Ask for access to the guided builds, including this kit's when it is ready.