Governance
Councils, meetings, resolutions, votes, bylaws and rules.
Working draft v0.1.0-draft · not yet released
Purpose and scope
Represent how decisions are made and recorded: who serves on council, which meetings were held, what was resolved, and which bylaws and rules are in effect.
In scope
- Strata councils and council members
- Annual and special general meetings
- Council meetings
- Resolutions, vote thresholds and outcomes
- Aggregate voting records
- Bylaws and rules
Out of scope
- Individual owner votes (open proposal)
- Evaluating whether a meeting or resolution complied with legislation
Entity definitions
A bylaw or rule of the strata corporation. Bylaws are adopted by the owners; rules may be made by council and later ratified.
A meeting of the strata council.
A person serving on a strata council, with any officer role they hold.
A meeting of the owners: an annual general meeting or a special general meeting.
A motion or resolution considered at a general or council meeting, with the vote threshold required and its outcome.
The council elected by the owners to exercise the powers and perform the duties of the strata corporation for a term.
Aggregate tally of votes on a resolution. Individual votes are intentionally not modelled in this draft.
Each entity page lists data types, required and optional fields, controlled vocabularies, validation rules and an example payload.
Fields at a glance
| Entity | Required fields | Optional fields |
|---|---|---|
| Bylaw | id, strataCorporationId, kind, title, status | reference, text, approvedByResolutionId, effectiveDate, filedDate, extensions |
| CouncilMeeting | id, councilId, scheduledStart, status | format, location, minutesDocumentId, extensions |
| CouncilMember | id, councilId, personId, role, startDate | endDate, extensions |
| GeneralMeeting | id, strataCorporationId, meetingType, scheduledStart, status | format, location, noticeDate, quorumAchieved, minutesDocumentId, extensions |
| Resolution | id, meetingType, meetingId, title, voteThreshold, outcome | text, votingRecordId, extensions |
| StrataCouncil | id, strataCorporationId, termStartDate | termEndDate, electedAtMeetingId, extensions |
| VotingRecord | id, resolutionId, votesFor, votesAgainst | method, abstentions, votesByProxy, extensions |
Relationships
- Bylaw.strataCorporationId→StrataCorporation(required)
- Bylaw.approvedByResolutionId→Resolution
- CouncilMeeting.councilId→StrataCouncil(required)
- CouncilMeeting.minutesDocumentId→Document
- CouncilMember.councilId→StrataCouncil(required)
- CouncilMember.personId→Person(required)
- GeneralMeeting.strataCorporationId→StrataCorporation(required)
- GeneralMeeting.minutesDocumentId→Document
- Resolution.votingRecordId→VotingRecord
- StrataCouncil.strataCorporationId→StrataCorporation(required)
- StrataCouncil.electedAtMeetingId→GeneralMeeting
- VotingRecord.resolutionId→Resolution(required)
Planned work
- ProxyPlanned
Appointment of a proxy for a general meeting.
- HearingPlanned
A hearing requested by an owner or tenant before council.
Open issues and proposals
Individual vote records and privacy
Whether per-lot votes belong in the standard or only aggregate tallies.
Custom officer roles
Bylaws can change officer roles; consider an extensible role vocabulary.
Individual vote records and privacy
Decide whether per-lot votes belong in the standard or only aggregate tallies.
Version history
- v0.1.0-draft (2026-10-27, unreleased) — Initial working draft. Details