Skip to content
OpenCOOS

JSON Schema definitions

Every drafted entity is defined by a JSON Schema (draft 2020-12) file. Shared types live in common.schema.json.

Stable URLs

Files for each version are published under a URL that includes the version and does not change:

https://opencoos.org/spec/0.1.0-draft/

For example, schemas/core/StrataLot.schema.json and examples/StrataLot.example.json. Working drafts like 0.1.0-draft are published the same way so they can be reviewed, but they are not releases.

Schema identifiers

Each schema's $id is a URN, independent of where the file is hosted:

{
  "$id": "urn:coos:schema:StrataLot",
  "properties": {
    "strataCorporationId": { "$ref": "urn:coos:schema:common#/$defs/Identifier" }
  }
}

Load common.schema.json together with the entity schemas so that $refs resolve. The version a schema belongs to is the version of the release you downloaded it from.

Files

EntityStatusSchemaExample
(shared definitions)common.schema.json
BuildingExperimentalBuilding.schema.jsonBuilding.example.json
CommonPropertyExperimentalCommonProperty.schema.jsonCommonProperty.example.json
OrganizationProposedOrganization.schema.jsonOrganization.example.json
OwnershipInterestExperimentalOwnershipInterest.schema.jsonOwnershipInterest.example.json
PersonProposedPerson.schema.jsonPerson.example.json
StrataCorporationProposedStrataCorporation.schema.jsonStrataCorporation.example.json
StrataLotProposedStrataLot.schema.jsonStrataLot.example.json
StrataPlanProposedStrataPlan.schema.jsonStrataPlan.example.json
UnitExperimentalUnit.schema.jsonUnit.example.json
BylawProposedBylaw.schema.jsonBylaw.example.json
CouncilMeetingProposedCouncilMeeting.schema.jsonCouncilMeeting.example.json
CouncilMemberProposedCouncilMember.schema.jsonCouncilMember.example.json
GeneralMeetingProposedGeneralMeeting.schema.jsonGeneralMeeting.example.json
ResolutionProposedResolution.schema.jsonResolution.example.json
StrataCouncilProposedStrataCouncil.schema.jsonStrataCouncil.example.json
VotingRecordExperimentalVotingRecord.schema.jsonVotingRecord.example.json
BudgetProposedBudget.schema.jsonBudget.example.json
FinancialTransactionExperimentalFinancialTransaction.schema.jsonFinancialTransaction.example.json
FundProposedFund.schema.jsonFund.example.json
LevyExperimentalLevy.schema.jsonLevy.example.json
CommonAssetExperimentalCommonAsset.schema.jsonCommonAsset.example.json
MaintenanceRequestProposedMaintenanceRequest.schema.jsonMaintenanceRequest.example.json
WorkOrderExperimentalWorkOrder.schema.jsonWorkOrder.example.json
DocumentProposedDocument.schema.jsonDocument.example.json
InsurancePolicyExperimentalInsurancePolicy.schema.jsonInsurancePolicy.example.json