Primitive Index
This page is the primitive checklist. A primitive is required if agents need to create it, target it, evaluate it, export it, or refer to it in documentation.
Two cross-cutting primitive systems apply everywhere:
- Coordinates And Formats defines coordinate spaces, frames, CRS handling, and why GeoJSON is an adapter format.
- Params defines the typed params operations should use.
Primitive Families
Section titled “Primitive Families”| Family | Purpose | Typical path |
|---|---|---|
| Project | Document root, units, coordinate systems, source maps | project |
| Site | Site context, survey, terrain, infrastructure | site.main |
| Parcel | Land plots, boundaries, frontage, easements, access | site.main.parcels.pcl_001 |
| Terrain | Toposurfaces, contours, slope regions, drainage | site.main.terrain.existing |
| Planning | Zoning, setbacks, height, FAR, coverage, envelopes | site.main.parcels.pcl_001.constraints |
| Envelope | Derived buildable volumes and no-build regions | site.main.envelopes.primary |
| Building | Massing, floorplates, systems, units, spaces | buildings.b_001 |
| Systems | Core, circulation, structure, facade, services | buildings.b_001.systems.core.main |
| Elements | Walls, slabs, roofs, columns, openings, stairs | buildings.b_001.elements.walls.w_101 |
| Spaces | Rooms, zones, units, program blocks | buildings.b_001.units.u_204.spaces.bedroom_1 |
| Operations | Patchable graph mutations | patch.ops[] |
| Params | Typed operation arguments | patch.ops[].params |
| Coordinate spaces | CRS-aware frames and transforms | site.main.frames.local |
| Evals | Deterministic findings, metrics, repair hints | eval.findings[] |
| Artifacts | Source, graph, reports, previews, exports | artifacts.builtEnvironmentGraph |
| Backends | IFC, Blender, USD, Archicad, Revit, GIS | adapters.ifc |
Required Entity Primitives
Section titled “Required Entity Primitives”These are the initial semantic entity categories from the spec.
| Primitive | Group | Canonical path pattern |
|---|---|---|
| Site | Site | site.{site} |
| Parcel | Site / parcel | site.{site}.parcels.{parcel} |
| Parcel boundary | Site / parcel | site.{site}.parcels.{parcel}.boundary |
| Survey point | Site / survey | site.{site}.survey.points.{point} |
| Terrain surface | Terrain | site.{site}.terrain.{surface} |
| Contour line | Terrain | site.{site}.terrain.{surface}.contours.{contour} |
| Breakline | Terrain | site.{site}.terrain.{surface}.breaklines.{breakline} |
| Slope region | Terrain | site.{site}.terrain.{surface}.slope_regions.{region} |
| Drainage path | Terrain | site.{site}.terrain.{surface}.drainage_paths.{path} |
| Easement | Parcel constraints | site.{site}.parcels.{parcel}.easements.{easement} |
| Road | Infrastructure | site.{site}.infrastructure.roads.{road} |
| Path | Infrastructure | site.{site}.infrastructure.paths.{path} |
| Utility | Infrastructure | site.{site}.infrastructure.utilities.{utility} |
| Zoning overlay | Planning | site.{site}.zoning_overlays.{overlay} |
| Buildable envelope | Planning | site.{site}.envelopes.{envelope} |
| Building | Building | buildings.{building} |
| Building part | Building | buildings.{building}.parts.{part} |
| Massing | Building | buildings.{building}.massing.{mass} |
| Floor plate | Building | buildings.{building}.levels.{level}.floorplate |
| Core | Systems | buildings.{building}.systems.core.{core} |
| Circulation system | Systems | buildings.{building}.systems.circulation.{system} |
| Structural grid | Systems | buildings.{building}.systems.structure.grids.{grid} |
| Facade system | Systems | buildings.{building}.systems.facade.{facade} |
| Service system | Systems | buildings.{building}.systems.services.{system} |
| Unit | Spaces | buildings.{building}.units.{unit} |
| Level | Building | buildings.{building}.levels.{level} |
| Grid | Building | buildings.{building}.grids.{grid} |
| Wall | Elements | buildings.{building}.elements.walls.{wall} |
| Slab | Elements | buildings.{building}.elements.slabs.{slab} |
| Roof | Elements | buildings.{building}.elements.roofs.{roof} |
| Column | Elements | buildings.{building}.elements.columns.{column} |
| Beam | Elements | buildings.{building}.elements.beams.{beam} |
| Stair | Elements / systems | buildings.{building}.systems.vertical.stairs.{stair} |
| Ramp | Elements / systems | buildings.{building}.systems.circulation.ramps.{ramp} |
| Opening | Elements | buildings.{building}.elements.openings.{opening} |
| Door | Elements | buildings.{building}.elements.doors.{door} |
| Window | Elements | buildings.{building}.elements.windows.{window} |
| Curtain wall | Elements | buildings.{building}.systems.facade.curtain_walls.{curtain_wall} |
| Space | Spaces | buildings.{building}.spaces.{space} |
| Zone | Spaces | buildings.{building}.zones.{zone} |
| Furniture | Elements | buildings.{building}.elements.furniture.{item} |
| Equipment | Elements | buildings.{building}.elements.equipment.{item} |
| Annotation | Documentation | annotations.{annotation} |
| Generic mass | Building | buildings.{building}.massing.generic.{mass} |
| Mesh proxy | Geometry | geometry.mesh_proxies.{proxy} |
Required Operation Primitives
Section titled “Required Operation Primitives”Operations are patch primitives. They must accept targetPath, target, or selector.
| Operation | Family | Typical target |
|---|---|---|
createEntity | Primitive graph | Any collection path |
deleteEntity | Primitive graph | Any entity path |
updateProperties | Primitive graph | Entity, property, or constraint path |
setGeometry | Primitive graph | Boundary, terrain, element, or floorplate path |
addRelation | Primitive graph | Relation group |
removeRelation | Primitive graph | Relation path |
addConstraint | Primitive graph | .constraints group |
removeConstraint | Primitive graph | Constraint path |
createSite | Site | site.{site} |
importSurvey | Site | site.{site}.survey |
plotParcel | Parcel | site.{site}.parcels |
editParcelBoundary | Parcel | site.{site}.parcels.{parcel}.boundary |
classifyParcelEdge | Parcel | site.{site}.parcels.{parcel}.boundary.edges.{edge} |
addNeighborParcel | Parcel topology | site.{site}.parcels.{parcel} |
addEasement | Parcel constraints | site.{site}.parcels.{parcel}.easements |
addSiteAccess | Parcel access | site.{site}.parcels.{parcel}.access |
createTerrainSurface | Terrain | site.{site}.terrain |
contourToTerrain | Terrain | site.{site}.terrain.{surface}.contours |
addTerrainPoint | Terrain | site.{site}.terrain.{surface}.points |
addBreakline | Terrain | site.{site}.terrain.{surface}.breaklines |
calculateSlopeRegions | Terrain eval | site.{site}.terrain.{surface} |
calculateDrainagePaths | Terrain eval | site.{site}.terrain.{surface} |
gradeRegion | Terrain edit | site.{site}.terrain.{surface}.grading |
calculateCutFill | Terrain eval | site.{site}.terrain.{surface} |
createZoningOverlay | Planning | site.{site}.zoning_overlays |
addPlanningRule | Planning | .constraints or .zoning_overlays |
computeSetbacks | Planning | site.{site}.parcels.{parcel}.constraints.setbacks |
computeBuildableEnvelope | Planning | site.{site}.parcels.{parcel} |
findBuildableRegions | Planning | site.{site}.parcels.{parcel} |
createLevel | Building | buildings.{building}.levels |
createGrid | Building | buildings.{building}.grids |
createBuilding | Building | buildings |
createMassing | Building | buildings.{building}.massing |
fitMassingToEnvelope | Building | buildings.{building} |
generateFloorplates | Building | buildings.{building} |
placeCore | Systems | buildings.{building}.systems.core |
placeStairs | Systems | buildings.{building}.systems.vertical.stairs |
placeElevators | Systems | buildings.{building}.systems.vertical.elevators |
createStructuralGrid | Systems | buildings.{building}.systems.structure |
createFacadeSystem | Systems | buildings.{building}.systems.facade |
createServiceShaft | Systems | buildings.{building}.systems.services.shafts |
distributeProgram | Program | buildings.{building}.program |
generateUnitMix | Program | buildings.{building}.units |
generateCirculation | Systems | buildings.{building}.systems.circulation |
createParkingLayout | Site / building | site.{site}.parking or buildings.{building}.parking |
createWall | Elements | buildings.{building}.elements.walls |
moveWall | Elements | buildings.{building}.elements.walls.{wall} |
offsetWall | Elements | buildings.{building}.elements.walls.{wall} |
splitWall | Elements | buildings.{building}.elements.walls.{wall} |
joinWalls | Elements | wall selector |
insertOpening | Elements | host wall path |
resizeOpening | Elements | opening, door, or window path |
createSpace | Spaces | buildings.{building}.spaces |
recomputeSpaceBoundary | Spaces | buildings.{building}.spaces.{space} |
resizeSpace | Spaces | buildings.{building}.spaces.{space} |
setAssembly | Elements | element selector |
setMaterial | Materials | element or assembly selector |
assignProgram | Program | space, unit, level, or building path |
rerouteCorridor | Circulation | corridor path |
stackCore | Systems | buildings.{building}.systems.core.{core} |
Required Artifact Primitives
Section titled “Required Artifact Primitives”| Artifact | Purpose |
|---|---|
source | User-authored SDK or DSL source |
builtEnvironmentGraph | Canonical semantic graph |
operationLog | Ordered patch history |
patch | Candidate or committed patch |
evalReport | Structured eval result |
evalTrace | Detailed rule trace |
surveyImport | Normalized survey or cadastral source |
terrainSurface | Terrain source or derived surface |
zoningOverlay | Planning source or derived overlay |
buildableEnvelope | Derived envelope |
optionSet | Generated options and ranking data |
previewMesh | Lightweight UI mesh |
ifc | IFC exchange export |
usd | USD scene export |
gltf | Web preview export |
blenderScript | Reproducible Blender Python script |
blenderFile | Optional generated .blend file |
archicadTransaction | Archicad transaction or mapping |
revitTransaction | Revit transaction or mapping |
thumbnail | Image preview |
jobLog | Async job logs |