> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gingerbim.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Categorising Objects

> Sort your model into component buckets — automatically from layer/tag names with Auto-categorise, or manually — and refine categories in the viewer.

Every element in GingerBIM has a **category** — Wall, Door, Window, Slab, and so on. The category drives almost everything downstream: which IFC-SG property sets apply, which presets match, how schedules group elements, and how elements are tagged on drawings.

Categorising starts in the **connector**: you sort objects into **component buckets** before sending. The buckets are:

**Wall** (Generic, Brick, RC, Block, Drywall) · **Slab** · **Beam** · **Column** · **Ramp** · **Finishes** (Wall, Floors, Ceilings) · **Door** · **Window** · **Opening** · **Stair** · **Railing** · **Lift** · **Roof** · **Site Parameters** (Gridline, Site Boundary, Setback) · **Generic**

**Opening** holds placeholder boxes that GingerBIM's door and window generator uses to place doors and windows — see [Openings for doors and windows](/connectors/modelling-guidelines#openings-for-doors-and-windows).

## Auto-categorise from layers and tags

If you organise your model with **Rhino layers** or **SketchUp tags** — and most modellers already do — the **Auto-categorise** button sorts selected objects into buckets by reading the layer/tag names. No manual bucket-by-bucket work.

Matching is deliberately forgiving:

* **Case-insensitive**, and any separator works: `wall::RC`, `A-Door-Sliding`, `roof_metal_deck`, `T0_PAINT FINISH::P01` all match.
* **Common aliases** are recognised per category — e.g. `floor` → Slab, `column`/`col` → Column, `staircase` → Stair, `railing` → Railing, `opening`/`openings` → Opening — plus CP83-style codes (`WALLFIRE` → Wall, `SITEBNRY` → Site Boundary, `WINDSKYL` → Window).
* **Subtypes match from the same name**: `wall::RC` lands in Wall → RC; `FNSH::WALL` in Finishes → Wall.
* Nested layer paths and multi-word names are handled left-to-right — the first segment that matches a category wins. So `WALL_OPENING` still lands in Wall and `WINDOW_OPENING` in Window, while `OPENING_DOOR` goes to Opening.

| Layer / tag name | Bucket |
| - | - |
| `rhino::wall::RC` | Wall → RC |
| `A-Window-Louvre` | Window |
| `OPENING`, `A-Openings`, `rhino::opening::box` | Opening |
| `floor` or `SLAB` | Slab |
| `FLOR` / `CEIL` | Finishes → Floors / Ceilings (not Slab) |
| `site`, `gridline`, `SITEBNRY` | Site Parameters |
| `T0_PAINT FINISH::P01` | Finishes |

A few rules keep it safe:

* **Already-categorised objects are skipped** — Auto-categorise never overwrites your manual sorting.
* Objects still have to pass the bucket's [geometry rules](/connectors/modelling-guidelines) — a matched object with the wrong geometry is reported as "not added" so you can fix or place it manually.
* **Rhino**: a group whose members sit on layers mapping to different categories is skipped ("Layers map to more than one component") — add it to a bucket manually.
* **SketchUp**: an object's **own tag** is what counts; only untagged objects fall back to the tag of the group that contains them.

The result dialog summarises what was added and what wasn't, and can highlight the objects that need manual attention.

## Adding to buckets manually

You can always select objects and add them to a component bucket yourself — useful for the odd object out, for anything Auto-categorise skipped, and for models without a layer/tag convention. The same geometry rules apply on add, with a clear message when an object doesn't qualify (for example, an open surface offered to the Wall bucket).

## Refining categories in the viewer

After sending, each element carries its category as its **IfcType** in GingerBIM. IFC uploads usually arrive already classified from the authoring tool; anything still uncategorised shows as **"No IFC Type assigned"**.

1. In the 3D viewer, click an element — the **object sidebar** opens.
2. Set or correct the **IfcType**. The matching IFC-SG property sets (`SGPset_*` and the agency sets) become available immediately.
3. For bulk edits, select multiple elements — the sidebar groups the selection by category so you can reclassify a whole set in one edit.

<Tip>
  Categorise **before** filling in property data. The category determines which property sets and presets are relevant — set it first and the rest of the workflow lines up. See [IFC-SG & Element Properties](/model-data/element-properties).
</Tip>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.