ifc-author
Schema-checked IFC authoring: construct entities by attribute name with arity and type validation.
| Status | Implemented |
| Latest release | 0.3.0 (2026-09-29) |
| Registries | crates.io ifc-author |
| Via the facade | openbim-ifc feature author |
| API documentation | rustdoc · docs.rs |
| Source | crates/ifc-author/ |
Overview
ifc-author — schema-checked construction and editing of IFC entities.
Depends on
Changes
Latest release, 0.3.0 (2026-09-29):
Changed (breaking)
PersonDraft,OrganizationDraft,ApplicationDraftandOwnerHistoryDraftare#[non_exhaustive](#214), so a later release can add a field without another break. Struct literals no longer compile outside the crate: build each withnew(...)and field-named setters,PersonDraft::new(),OrganizationDraft::new(name),ApplicationDraft::new(developer, version, full_name, identifier)andOwnerHistoryDraft::new(owning_user, owning_application, creation_date)(then e.g..change_action("ADDED")). Fields stay public.
Changed
- Links no bundled schema table itself: every entry point takes the
Schemafrom the caller. A consumer that used a table through this crate's dependency (ifc_schema::ifc4()) enables it on its ownifc-schemadependency (default features bundle every release). - A type declaration form
ifc-schemaadds later resolves as unresolved (no refusal on shape, no form claim) instead of failing to compile; followsifc_schema::TypeKindbecoming#[non_exhaustive].
Full history: crates/ifc-author/CHANGELOG.md