Skip to main content

Module entity

Module entity 

Source
Expand description

The entity record — a type name plus positional attributes.

§Why entities are not Rust structs

IFC4 declares 776 entity types; IFC4x3 declares 876, and renames some of IFC4’s. Generating a struct per entity per schema version is what makes IfcOpenShell heavy, and it forces a recompile to support a new schema.

Here an entity is a type name and an attribute vector. The schema explains what the slots mean; domain crates interpret them. The immediate benefit is requirement 3 of the design: an entity whose type nothing understands is still stored perfectly and written back unchanged.

Structs§

Entity
One IFC entity instance.