BIM Viewport — BIM Knowledge Graph
Route: /graph
Purpose: Create, browse and analyse building elements in the live BIM graph
7.1 What is the Purple8 Graph?
The Purple8 Graph replaces the Revit file. Every building element (room, wall, column, beam, system) is a node in a property graph. Relationships (adjacency, support, containment) are edges. The graph is:
- Live — updates in real time
- Multi-tenant — each project is isolated
- Queryable — via AI, algorithms, and the analytics API
- Persistent — survives server restarts via the WAL (Write-Ahead Log)
7.2 Element Types
| Type | Description | Key Properties |
|---|---|---|
site / building | Top-level project context | location, boundary, climate, elevation |
storey / level | Vertical organisation level | elevation, gross_area, height |
space / zone | Room or functional zone | name, area_sqft, function, occupancy |
wall | Vertical partition | thickness, height, material, load_bearing |
slab / roof | Horizontal/sloped enclosure | thickness, span, pitch, u_value |
column | Structural column | section, material, height, load |
beam | Structural beam | section, span, material, load |
foundation | Structural base | type, depth, bearing_capacity |
facade | External envelope | U-value, material, glazing_ratio |
door / window | Openings and fenestration | width, height, fire_rating, acoustic |
stair / ramp | Vertical circulation | risers, treads, slope, width |
furniture / fixture | FF&E (Furniture, Fixtures & Equipment) | manufacturer, model, cost, lifecycle |
system / equipment | MEP system & components | type (HVAC/plumbing), capacity, specification |
material | Material definition | density, embodied_carbon, thermal_conductivity |
document | Linked project document | source, type, status, url |
annotation | 2D/3D markup, note, or sketch | text, author, timestamp, type |
7.3 Creating Elements
- Click + in the left panel
- Enter a name (e.g.
Living Room 1A) - Select element type from the dropdown
- Add properties as JSON:
{"area_sqft": 210, "function": "living"} - Click Create
7.4 Viewport
The 2D viewport renders your elements spatially. It auto-arranges elements when coordinates are not specified. Set explicit coordinates via the properties JSON: {"x": 0, "y": 0, "width": 5, "height": 4} (in metres).
7.5 Compliance Tab
Click Compliance in the right panel to run regulatory checks:
- UK Building Regulations Part A, B, E, L, M
- Fire escape route distances
- Accessible design requirements (Part M)
- Energy performance (Part L / SAP/SBEM)
Results show as pass/fail with specific regulation references.
7.6 BOM (Bill of Materials) Tab
Click BOM to generate a Bill of Materials from the current graph:
- Element list with quantities
- Material schedule
- Elemental cost benchmarks (from P8G cost database)
- Export to CSV