Skip to content

Validation & the coordinated world

Fablnx keeps two things separate, on purpose:

  • A scene is rich and drawing-shaped — everything you traced over one sheet.
  • The world is the project's single, coordinated source of truth — the verified facts about the building, assembled from every scene you've committed.

Validation is the gate between them. You never write to the world directly; you validate a scene, resolve what it flags, and commit its facts. This page explains what gets checked, what the world actually stores, and how the two stay in agreement.

The two checks and the commit

Building the model is three deliberate steps, all reachable from the scene's head bar:

StepWhat it asks
1. Validate sceneIs this sheet complete and internally consistent on its own?
2. Validate against the worldDoes this sheet agree with everything already committed?
3. CommitPush this sheet's verified facts into the coordinated world.

Each check turns whatever it finds into RFIs. Commit is blocked while any RFI is open — so a committed model is, by construction, one where every question has been answered.

1. Scene validation — is the sheet complete?

Validate scene checks a scene against itself only. It never looks at other sheets. It's asking whether what you traced is complete and consistent enough to be trusted. What it looks for:

The grid

  • The scene actually has grid lines.
  • Every grid line has a name.
  • Every grid line can be located — a chain of recorded bay distances (or a station label) ties it back to the rest of its family.
  • A plan has two directions of grid, so intersections exist.
  • No dimension points at a grid line that isn't in the scene.

Every column, beam and brace

  • Each end sits on a real grid intersection (and names grid lines that exist).
  • On an elevation, the member actually lies on that elevation's plane.
  • The two grid lines at an end genuinely cross (they're not parallel or the same line).
  • The member resolves to a level.
  • It has a profile and a grade — and a column has a rotation.

The cut & elevations

  • An elevation view names the grid line it's cut on.
  • A framing plan has a cut level.
  • Every named grid line resolves to an elevation (a Z height).

Anything missing becomes an RFI like "Beam det-b156 is missing a grade" or "Column CO-8 must be at a grid intersection", each with a Fix: hint and a click that zooms you to the spot.

2. Validate against the world — does it agree?

Once a scene passes on its own, Validate against the world compares its facts to everything already committed by other sheets. This is what keeps a multi-sheet model coordinated. It catches:

  • Bay-distance conflicts — this sheet spaces two grid lines differently than another sheet already did.
  • Elevation conflicts — a grid line or intersection sits at a different height than the committed one.
  • Member conflicts — the same member (same grid-anchored identity) has a different profile, grade or rotation than the world already holds.
  • Grid-family conflicts — the sheet groups or orders grid lines in a way that contradicts the committed grid.
  • Clashes — two pieces of steel physically overlap, checked against real profile depths and widths.

The important rule: you can always freely revise your own sheet's facts. You're only blocked when your sheet disagrees with a fact another sheet already committed — so two detailers can't quietly draw the same grid line at two different spacings.

3. Commit — publishing verified facts

Commit pushes the scene's facts into the world. Before it writes, it confirms there are no open RFIs and re-runs both checks one more time, so a stale "passed" can't sneak an edited scene through.

Committing is a reconciliation, not a dump. Each fact is either:

  • added (new to the world),
  • confirmed (your sheet now also vouches for an existing fact),
  • revised (updated — only allowed when your sheet is the fact's only source), or
  • withdrawn (removed once the last sheet asserting it stops).

Every world fact remembers which sheets assert it, which is exactly what lets you revise your own work while staying blocked from overwriting someone else's.

What the world actually stores

The world is deliberately sparse — it keeps the minimum set of verified facts and solves the 3D model from them when you open it. In plain terms, a fact is one atomic verified assertion. The world holds:

FactIn plain terms
Grid familiesEach set of parallel grid lines (e.g. the numbered lines, the lettered lines), by their angle to project north.
Grid linesEach named line — which family it's in and where it sits in that family's order.
BaysThe measured distance, in feet, between two named grid lines.
ElevationsSparse height (Z) assertions — a grid line's height at a level, or an intersection's height from an elevation view.
MembersEach unique column, beam and brace — its profile, grade, rotation and grid-anchored identity. A column is the same column at every level.

Because the model is solved from these facts, the coordinated viewer can also tell you what it couldn't place (an "unstationed" line or member) instead of inventing a location.

Reusing what the project already knows

You don't have to re-enter a bay distance or a member size that was already verified on another sheet. Fill from knowledge (in the scene inspector) pulls the world's facts that touch the grid lines in your current scene — the bay distances between lines you have, and the members whose anchors are all present — and offers them as a patch you can accept. It reuses verified knowledge instead of making you retype it.

Where this shows up

Fablnx — the AI copilot for structural steel design & detailing. · Version: Unreleased