Ubiquitous Language

Browse and discover ubiquitous language terms in the BIM Ontology domain

BIM Ontology Domain Language(29 terms)

Object Class

A kind of building object BuildPlan can classify, specify, and eventually build. Aggregate root; Airtable object_classes. Answers "what kind of thing is this?" — not a product, a model, or a Revit category.

View details

Product parent graph

The single-parent ancestry between object classes (ADR-0046). At most one parent per class, acyclic. This is the edge set only; parameter inheritance is a separate concept that reads it.

View details

root_object_class

The parentless ancestor at the top of a class's lineage. Derived and persisted on each row. Explicitly NOT an input to Revit category resolution — that was a DAG-era rule retired with ADR-0046.

View details

External classification mapping

Uniformat, Masterformat, OmniClass, and ObjectClass codes cross-referenced from a class. The first three plus Revit category use inherit-by-default fill with make-unique (ADR-0050); OmniClass is a flat non-propagating link.

View details

Make unique

ADR-0050 fill rule. Stewards author *_direct only; make-unique is inferred on edit. The value fills down from the nearest make-unique ancestor until the next one. Effective mirrors materialized *_direct, so no read-time walk happens.

View details

Revit category classification link

The single Revit category an object class classifies as (0..1), with health status current | stale | needs_review | unresolved and provenance authored | inherited. Distinct from Revit category scope — this classifies a class, that describes a parameter binding's coverage.

View details

Parameter Key

The canonical identity and meaning of one parameter, independent of where it is used or how it is rendered. Aggregate root; Airtable parameter_keys; REST /parameter-keys. Owned by bim-ontology, consumed by product-marketplace (ADR-0006).

View details

Parameter lifecycle

draft → active → approved → archived, invariant-checked. ParameterKey is the only aggregate with active. See the "Why active exists" section below — it is the scraping contract, not an extra step.

View details

Parameter Usage

Which product contexts a key participates in — variant_option, product_spec, bim_parameter, mfg_takeoff, qto_takeoff. Non-empty set. bim_parameter membership is load-bearing - it gates automatic Revit projection. Not the same as Revit document altitude.

View details

Parameter Spec

The value semantics of a key — what kind of value, whether measurable, which unit system. BuildPlan's own semantics, mapped onto an Autodesk RevitSpecType. Airtable parameter_specs.

View details

Parameter Control

How a parameter is presented for authoring or selection. Constrains the interaction where ParameterSpec constrains the value. Airtable parameter_controls.

View details

Parameter Group

The authoring grouping that organizes related keys for humans. The source both Revit group projections derive from; not itself a Revit artifact.

View details

Parameter Value

One canonical value a key can take, optionally carrying measured quantities. Quantity roles distinguish primary, alternate, min, max, and modifier readings.

View details

Parameter Value Group

A reusable ordered set of parameter values applied as a template.

View details

Unit

A canonical unit of measure, referenced from quantity values and constrained by ParameterSpec. Belongs to neither.

View details

Class Parameter

The assignment of one parameter key to one object class, with the local rules governing it. Aggregate root. Called assignment, never binding — binding is reserved for Revit placement.

View details

Assignment Origin

How an assignment came to exist — direct, rendered, or legacy_unknown. Only direct rows accept deletion and allowed-value edits. Server-owned; hidden from stewards.

View details

Inheritance Mode

On direct rows only — unique (this node only) or apply_to_descendants. The retired wire vocabulary self_only / self_plus_descendants / descendants_only is gone from the HTTP contract.

View details

Child Behavior

On rendered rows only — inherit (default), suppress (this class only), or override (this class only, local values).

View details

Effective parameter set

The resolved answer to "what parameters does this class actually have", computed on request with an explanation. Resolution kinds are direct, inherited, override, suppressed. Rendered rows are a cache for Airtable's benefit; the resolution is authoritative.

View details

Revit Parameter Projection

The Revit-facing expression of exactly one parameter key — one definition identity plus optional placements. Aggregate root; lifecycle draft → approved → archived. System-created, steward-completed.

View details

Revit definition form

shared, family_local, project_local, built_in, legacy_unknown. Definition means an identity BuildPlan authors and owns; Reference means an external identity it reads but never authors.

View details

Revit shared parameter GUID

Minted once for a shared definition and never regenerated. That immutability is what makes shared definitions portable, and why retirement archives a projection rather than deleting it.

View details

Revit category scope

The set of Revit categories a project binding covers, resolved from effective class assignments. Derived only — the steward override was removed. Scope in this module means this and nothing else.

View details

Revit binding kind

instance or type — Revit's own vocabulary and the one sanctioned bare use of the word "type". RevitBindingKindPreference holds the aggregate-level default.

View details

Document altitude (revit_usages)

Which Revit document kinds a projection is enabled for — family and/or project — derived at write time from the two placements, plus an authored primary preference. Same word as ParameterUsage, different altitude.

View details

Effective Revit name

Normally derived from the canonical name, optionally pinned by override. Because it is derived, editing the canonical name drifts the projection — which is what the derivation-drift report and resync exist to reconcile.

View details

Common parameters

A stewarded allowlist of platform-wide parameters in the bp.common.* handle space that project with a fixed shape. Sheet, view, and annotation categories are denylisted from common project binding.

View details

AT-A1 / AT-A2 / AT-B1 / AT-C1

The Airtable steward-UI mutation patterns. AT-A1 is a flag-based action table, AT-A2 a record-detail action button, AT-B1 a create-request table, AT-C1 a watched-field recompute (ADR-0047). Every one calls the API; none writes domain state directly.

View details