Skip to content
Octo × IFC and openBIM PT Request an assessment

Octo for IFC and openBIM

The model in an open format, checked by rule.

IFC is the international standard for exchanging construction model information (ISO 16739-1), also published by ABNT. Around it, buildingSMART publishes BCF, for issues, and IDS, for information requirements. With open tools like IfcOpenShell, Octo can validate, convert and check IFC models without depending on an authoring program.

An IFC model, the requirements in IDS and another IFC go into Octo, which returns the validation and the issues in BCF. INPUT .IFC MODEL .IDS REQUIREMENTS ANOTHER .IFC VALIDATION IFCTESTER BCF ISSUES IfcConvert model.ifc model.glb OCTO × CONSTRUCTION OPENBIM CC-04
ISO 16739-12024the IFC standard; the 2018 edition was withdrawn
ABNT NBR ISO 16739-12026identical to ISO, published August 6, 2026
IfcOpenShellLGPL-3.0open core, in C++ and Python
Sources14listed at the end of the page
01

What Octo does with IFC.

Five possible deliverables, all with open tools that run in the client's environment.

Validation against IDS

It can write the information requirements the contract calls for in IDS and validate each IFC received with IfcTester, which produces reports in HTML, JSON, BCF and other formats.

Deliverable: validation report per file

Clashes between IFC models

It can run IfcClash on one or more IFC models from the command line, with JSON output and, if the team wants, BCF.

Deliverable: clash list in JSON or BCF

Issues in BCF

It can return validation and clash results as BCF issues, as a file (BCF-XML) or through the BCF-API.

Deliverable: issues for the coordination team

Geometry conversion

It can convert IFC geometry to OBJ, DAE, GLB, STEP, IGES, SVG and other formats with IfcConvert.

Deliverable: converted files, with the command on record

Reading and editing by script

It can read IFC in Python with IfcOpenShell and generate spreadsheets, or create and edit entities with the ifcopenshell.api functions.

Deliverable: spreadsheet or edited IFC, for review
02

Eight arms, one open file.

The same Octo cycle, applied to this workstream. Each arm has a narrow role; the people who approve and sign are on your team.

  1. Discovery

    Identifies the IFC version

    Which programs export it, in which schema (IFC2X3, IFC4, IFC4.3) and with which export settings.

  2. Data

    Writes the requirements

    What each element must contain, by phase and by discipline, written in IDS, which is machine-readable.

  3. Security

    Runs on your machine

    IfcOpenShell runs locally; the models don't need to leave the client's environment.

  4. Architecture

    Picks the tool

    IfcTester to validate, IfcClash for clashes, IfcConvert for geometry, Python for the rest and BCF to return the result.

  5. Development

    Writes the script

    Python scripts on top of IfcOpenShell, with the schema and IDS versions noted.

  6. Review

    Checks on a known model

    First validates an IFC the team has already reviewed and compares the issues.

  7. Release

    Delivers the issues

    With your OK, it leaves the reports and BCF in the project folder or on the team's BCF server.

  8. Documentation

    Records rule and version

    The IDS, the IfcOpenShell version and the settings for each round are recorded.

Octo does not approve models. Whether the IFC meets the contract is decided by the coordination team and the client.

03

Each task, its own path.

The criteria Octo uses to choose. The tool your team already uses remains the reference.

TaskPathNote
Check whether the IFC has the required informationIDS + IfcTesterReport to console, JSON, HTML, ODS, SQLite or BCF
Clashes between IFC modelsIfcClashCommand line or library; JSON, BCF optional
Return issues to the teamBCF-XML or BCF-APIThe BCF-API is RESTful, with JSON
Convert the geometryIfcConvert input.ifc output.objOBJ, DAE, GLB, STP, IGS, XML, SVG and others
Create or edit IFC by scriptifcopenshell.api, in PythonIFC2X3, IFC4 and IFC4.3
04

From request to routine.

Three steps. Each one only makes sense after the previous one has shown results on your team.

A proposal, not a promise

1 Today

On-demand validations

You send the IFC and the rule, and Octo returns the report.

  • Contract requirements written in IDS
  • Validation with IfcTester
  • Issues in BCF
Benefit: what's missing from the model shows up before delivery
2 Next

A round with every delivery

Every IFC received from the designers can go through the same validation and the same clash test.

  • IDS by phase and by discipline
  • IfcClash between disciplines
  • Report compared with the previous round
Benefit: the same yardstick for every designer
3 Later

Continuous exchange

Issues can flow through the BCF-API, on the server the team already uses.

  • Issues opened and closed through BCF
  • Log of each round
  • Conversions for people who don't use an authoring program
Benefit: the coordination workflow runs on an open standard
05

Confirmed by sources.

Every point below has a source published by the vendor, the project or the responsible agency. The sources are in the next section.

6

points with a published source, each with its reference alongside.

ConfirmedThe IFC standard
ISO 16739-1:2024 is the standard for the IFC data schema; the 2018 edition was withdrawn. Version 4.3.2.0 is the one approved by ISO, published in buildingSMART's official repository.Source: ISO/TC 59/SC 13 catalog; GitHub, buildingSMART/IFC4.3.x-development
ConfirmedIFC at ABNT
ABNT NBR ISO 16739-1:2026, published on August 6, 2026 and in force, is identical to ISO 16739-1:2024 and replaces the 2023 edition, canceled on January 15, 2026.Source: ABNT catalog
ConfirmedBCF
BCF is the open standard for BIM project issues, developed by buildingSMART's Open CDE group. The latest final version is 3.0. The BCF-API exchanges issues between programs through a RESTful web interface.Source: GitHub, buildingSMART/BCF-XML and BCF-API
ConfirmedIDS
IDS is buildingSMART's standard, in machine-readable XML, for specifying information requirements on IFC. Version 1.0 was published as a final standard.Source: GitHub, buildingSMART/IDS
ConfirmedIfcOpenShell
An open library for IFC, with a C++ and Python API and an LGPL-3.0-or-later core. It supports IFC2X3, IFC4 and IFC4.3 and reads and writes IFC-SPF, IFCJSON, IFCXML and SQLite.Source: IfcOpenShell GitHub and documentation
ConfirmedIfcOpenShell tools
IfcConvert converts IFC geometry to other formats; IfcClash detects clashes in one or more IFC models, from the command line or as a library; IfcTester validates IFC against IDS and generates reports.Source: IfcOpenShell documentation
06

What Octo does and what stays with you.

Octo prepares everything, but does not sign. The document of record stays with whoever is accountable for it.

Octo prepares

Surveys, calculates, organizes and produces the documents: spreadsheets, reports, drawing sheets and drafts.

Deliverable: material ready to check

Your team checks

The licensed professional checks what Octo delivered before signing. If something doesn't add up, it goes back to Octo with the correction.

Step: review by the signer

Who signs

Octo does not sign. Designs, technical reports, ART/RRT (Brazil's professional responsibility records), accountability reports and any official document are still signed by the company's or agency's licensed professional: here, the responsible engineer or architect, with an ART or RRT.

Sign-off: engineer or architect, with ART/RRT
07

Sources.

ISO and ABNT catalogs, buildingSMART's official repositories and the IfcOpenShell documentation. Accessed on October 28, 2026.

The IFC that comes in, checked before it counts.

The assessment starts with an IFC and a requirement your team already knows, without changing the models. You get a proposal for what can be checked by rule and decide with it in hand.