| Entity |
Common base class for everything in the project graph. Has identity, lifecycle, and status. |
no |
| TimeRecord |
Planned work record with baseline and actual dates, optionally linked to model entities and a time plan. — Set milestone_at to mark as a zero-duration checkpoint. — Populate component_time_items to act as a plan container. |
no |
| CostRecord |
Cost record for estimation, catalog pricing, and calculation. Use cost_record_role to distinguish catalog cost/price (on Product) from project estimate/actual lines. Populate component_cost_items to act as an assembly (aggregated unit price). |
no |
| Agent |
Abstract base class for human and software actors in workflow and communication roles. |
no |
| Person |
Individual stakeholder, contributor, assignee, or responsible party represented in the schema. Instances may contain personal data; privacy slots govern lawful processing, consent, retention, and redaction. |
no |
| Company |
Organization, company, or legal entity participating in the project or asset lifecycle. |
no |
| SoftwareAgent |
Automated actor (integration, bot, or pipeline) acting in workflow roles. |
no |
| Decision |
Decision entity for workflow traceability and governance. Entity.status covers lifecycle; decision_status uses workflow vocabulary URIs. |
no |
| Task |
Task entity for implementation and follow-up workflows. Entity.status covers lifecycle; task_status uses action status vocabulary URIs. Links to related entities via applies_to_entities. |
no |
| Process |
Running BPMN process instance in the project graph. Use process_definition_uri for the BPMN definition key or artifact. When orchestration state lives in an external engine, set external_instance_uri to that system of record. |
no |
| Message |
Message entity for coordination and traceability. Links to related entities via applies_to_entities. |
no |
| Artifact |
External project artifact (text document, model, or plan) at storage_link. Used for provenance (Requirement.source_artifact). Not a modeled building element. |
no |
| Contract |
Commercial agreement entity for project scope, parties, and governance. Links to a signed artifact and related model entities via applies_to_entities. Entity.status covers record lifecycle; contract_status uses workflow vocabulary URIs. |
no |
| Project |
Business delivery scope for spatial context, systems, and workflow entities. |
no |
| Program |
Portfolio or capital program scope grouping related projects. |
no |
| Product |
Commercial product or service offering sold by a company. |
no |
| Deliverable |
Outcome or handover item produced within a project. |
no |
| Requirement |
Prescriptive requirement entity (content_kind requirement). Applies to model entities via applies_to_entities. Domain is discriminated by concrete subclass (PerformanceRequirement, SpatialRequirement, DeliverableRequirement, etc.), not a separate slot. |
no |
| PerformanceRequirement |
Performance target requirement (U-value, fire rating, airflow, acoustic, etc.). Boolean targets use target_value_boolean with requirement_property_key aligned to entity slot names where applicable (for example is_heated on Space). Application pipelines compare the subject entity slot to the requirement target and record the outcome as MatchChange (match_status met, unmet, or unknown). |
no |
| SpatialRequirement |
Spatial constraint requirement (min area, min height, adjacency, etc.). |
no |
| RegulatoryRequirement |
Regulatory reference requirement (building code, norm, standard). |
no |
| BriefRequirement |
Client or programme requirement, including free-standing brief items. |
no |
| DeliverableRequirement |
Deliverable or documentation requirement (model LOD, O&M manual, export format, etc.). |
no |
| ScheduleRequirement |
Schedule obligation requirement (deadline, milestone, or start/finish window). |
no |
| CostRequirement |
Cost or budget requirement (unit-cost cap, total budget limit, etc.). |
no |
| MaterialRequirement |
Material or product specification requirement for matching against assigned materials. |
no |
| PhysicalElement |
Base class for physical elements that can be placed in built asset/level context. |
no |
| Separator |
Abstract base class for elements that separate spaces or zones. |
no |
| SeparatorWall |
Wall-based separating element. |
no |
| SeparatorSlab |
Slab-based separating element (for example floor/roof/base slab separators). |
no |
| ConnectionPhysical |
Physical connector providing functional connection between spaces (for example door, window, duct, pipe, cable). |
no |
| Boundary |
Physical element acting as a boundary treatment (for example covering). |
no |
| Equipment |
Endpoint or device element (for example terminal, unit, control device, sensor) located in a space and assigned to a system. |
no |
| VirtualEntity |
Abstract base class for non-physical, conceptual, or informational entities. |
no |
| SpatialContext |
Context node used to represent perimeter, legal site, built asset, level, or zone. |
no |
| PerimeterContext |
Spatial context node constrained to perimeter semantics. |
no |
| LegalSiteContext |
Spatial context node constrained to legal site semantics. |
no |
| BuiltAssetContext |
Abstract spatial context for built assets such as buildings and civil structures. |
no |
| BuildingContext |
Spatial context node constrained to building semantics. |
no |
| CivilStructureContext |
Spatial context node constrained to civil structure semantics. |
no |
| LevelContext |
Spatial context node constrained to level/storey semantics. |
no |
| ZoneContext |
Spatial context node constrained to zone semantics. |
no |
| Space |
Spatial container used for occupancy, circulation, service, or analysis. |
no |
| System |
Building service system grouping that serves spaces or zones. |
no |
| ConnectionVirtual |
Logical or topological connection between spaces and/or physical elements. |
no |
| Material |
Material definition that can be associated with one or more entities. |
no |