| There are a number of specifications, guidelines, examples and tools that support the development of IFC enabled software solutions. In addition the buildingSMART International bSI has established the Implementers Support Group ISG to coordinate implementation support.
IFC Developers should know the following things
- The Implementers Support Group (ISG) website technical.buildingsmart.org/community/implementation-support-group/
- buildingSMART forum forums.buildingsmart.org/
Specification and supporting documents
The IFC specification and guiding documentations are issued by the Model Support Group MSG on behalf of bSI. All recent documentations are now available from the dedicated technical website of buildingSMART International >> wwww.buildingsmart-tech.org.
- A full documentation of all IFC versions is available from the official bSI technical website
- The current IFC2x3 TC1 EXPRESS schema can be found there as well
- IFC2x3 Implementation guides can be found here
- Implementer agreements for IFC2x3 (starting with 2006) are available here
- Sample IFC files for testing are available from different sources, see Examples
Toolboxes and other development software
There is a number of development tools, including commercial and non commercial software, these tools comprise e.g.,
- IFC Toolboxes, a generic toolbox compiles the IFC (or any other) EXPRESS data model into executable code that provides basic functionality such as reading and writing the IFC file structure (identical with the STEP physical file structure following ISO 10303-21). In addition it provides an API to the developer for one or more programming languages (like C++, Java, VB). Other functionality may include persistent database storage, support of ifcXML reading and writing, or others.
- IFC Model Server, a database or model server applications that provide a multi-user database management system and allow to used the IFC schema as the underlying database structure. In addition model servers often offer support for web services, check-in and check-out, thin clients, etc.
No application software implements the whole IFC specification. IFC data exchange is achieved with subsets -called views- of the whole IFC specification. Each view is designed to satisfy one or several data exchange scenarios. Current view definitions include:
- IFC2x3 Coordination View Version 2.0 - the IFC subset for coordinating the architectural, building service and structural disciplines during the design phase of a construction project. The specification of the Coordination View Version 2.0 is available here.
- Other view definitions are currently developed:
- IFC2x3 Structural Analysis View - the IFC subset to exchange the structural analysis model from a structural modeling to a structural analysis application
- IFC2x3 Quantity Take-off View - the IFC subset to hand over the quantities of a building information model to cost estimation and calculation
- IFC2x3 FM HandOver View - the IFC subset to handover the facility management relevant information of spaces, furniture, fixture and equipment to Computer-Aided Facility Management CAFM software
- GTDS - Global Testing and Documentation Server gtds.buildingsmart.com. This server environment is also used within the new "IFC Certification" 2.0 process.