IFC File Format

Overview

The IFC file format (Industry Foundation Classes) is a crucial standard in the architecture, engineering, and construction (AEC) industry. It was designed to facilitate seamless data exchange between various software applications used by architects, engineers, contractors, and facility managers. By establishing a common language for building objects and their properties, IFC ensures that information remains intact and useful as it moves from one application to another. This format supports a wide range of data types, including geometry, calculations, quantities, and more, making it indispensable for professionals involved in the entire lifecycle of a building project.

Developers and technical users rely on IFC because it promotes interoperability and reduces information loss during transmission. Whether you’re working with CAD software or project management tools, understanding how to work with IFC files is essential for maintaining data integrity across different platforms and applications.

Key Features

  • Interoperable Data Exchange: Facilitates seamless transfer of building-related data between various AEC software.
  • Comprehensive Data Types: Supports a wide range of information including geometry, calculations, quantities, facility management details, and more.
  • Versioned Standards: Regular updates ensure compatibility with the latest industry requirements and advancements.
  • Resource Layer Architecture: Organized into four conceptual layers to provide structured data definitions for different levels of specialization.
  • XML and ZIP Support: Offers flexibility through XML representation and compressed formats for efficient storage and transmission.

Technical Specifications

Format Structure

IFC files are typically in the STEP (Standard for the Exchange of Product model data) format, adhering to ISO 10303 standards. The default IFC file has a .ifc extension. Additionally, there is an XML version (IFC-XML) that follows ISO 10303-28 and can be compressed into a ZIP archive for efficient storage and transmission.

Core Components

The structure of IFC files includes several layers:

  • Resource Layer: Contains resource definitions without globally unique identifiers.
  • Core Layer: Includes the kernel schema with entities carrying globally unique IDs, owner information, and history data.
  • Interoperability Layer: Specializes in inter-domain exchange for construction information.
  • Domain Layer: Focuses on intra-domain exchanges specific to certain disciplines.

Standards & Compatibility

IFC adheres to international standards set by buildingSMART International. The format supports multiple versions, with the latest being IFC4 Add2 (2016). Backward compatibility is maintained across different versions, ensuring that older files can still be read and used in newer applications. Platform support includes Windows, macOS, and Linux.

History & Evolution

The initiative to develop IFC began in 1994 by Autodesk with the goal of supporting integrated application development. Early adopters included companies like Honeywell, Butler Manufacturing, and AT&T. In 1995, membership was opened to anyone under the name International Alliance for Interoperability (IAI). The organization later became buildingSMART International in 2005.

Over the years, IFC has undergone several revisions to enhance its capabilities and adapt to evolving industry needs. Major milestones include:

  • IFC 1.5 (1997): Initial release with basic data exchange features.
  • IFC 2x3 (2006): Expanded support for additional building components and processes.
  • IFC4 (2013): Introduced significant enhancements in data representation and interoperability.

Working with IFC Files

Opening IFC Files

To open and view IFC files, you can use specialized software such as Tekla Structures, Allplan, or ArchiCAD. These applications are compatible across Windows, macOS, and Linux platforms. Additionally, web-based viewers like IfcJS provide an easy way to visualize IFC data in a browser.

Converting IFC Files

Common conversion scenarios include translating IFC files into other formats such as JSON for easier manipulation by programming languages or converting between different versions of the IFC format itself. The approach typically involves using dedicated software tools that support these conversions, ensuring data integrity and compatibility with target applications.

Creating IFC Files

IFC files are usually created through CAD software like Revit, ArchiCAD, or Bentley MicroStation. These programs generate IFC files according to the latest standards set by buildingSMART International, allowing seamless integration into other AEC workflows.

Common Use Cases

  1. Project Collaboration: Facilitating data exchange between architects and engineers during project planning stages.
  2. Facility Management: Managing facility information throughout a building’s lifecycle for maintenance and operations.
  3. Construction Documentation: Creating detailed construction documents that include all necessary specifications and requirements.
  4. Cost Estimation: Providing accurate cost estimates based on comprehensive building data.
  5. Sustainability Analysis: Evaluating the environmental impact of buildings through detailed material and energy use analysis.

Advantages & Limitations

Advantages:

  • Enhanced Interoperability: Ensures seamless data exchange between different AEC software applications.
  • Comprehensive Data Types: Supports a wide range of building-related information, enhancing project management capabilities.
  • Regular Updates: Continuously updated to meet evolving industry standards and requirements.

Limitations:

  • Complexity: The detailed structure and multiple layers can make it challenging for new users to understand and implement effectively.
  • File Size: XML versions of IFC files are significantly larger compared to binary formats, impacting storage and transmission efficiency.

Developer Resources

Programming with IFC files is supported through various APIs and libraries. Code examples and implementation guides will be added soon.

Frequently Asked Questions

  1. What tools can open IFC files?

    • Specialized software like Tekla Structures, Allplan, ArchiCAD, or web-based viewers such as IfcJS are commonly used to open and view IFC files.
  2. How do you convert an IFC file to another format?

    • Use dedicated conversion tools provided by CAD software vendors or third-party applications that support IFC-to-JSON conversions for easier programming integration.
  3. Why is the XML version of IFC larger than the binary version?

    • The XML version includes extensive metadata and human-readable formatting, making it more verbose compared to a compact binary format like STEP.

References

 English