The IfcDoc tool was developed for buildingSMART International to improve the consistent and computer-interpretable definition of Model View Definitions (MVD) as true subsets of the IFC Specification with enhanced definition of concepts.

The latest version of the IfcDoc software can be downloaded here; it is based on the mvdXML specification. The tool and methodology can be applied to all IFC releases, we currently provide the baseline for IFC2x3 and for IFC4.


Currently, buildingSMART provides limited support of the IfcDoc tool through the GitHub repository and the Forums.

The IfcDoc User Guide can be found in the GitHub IfcDoc repository Wiki.

Additional tutorial videos can be found on YouTube:

Overview: https://youtu.be/OD3Zubve-as

Introduction: https://youtu.be/oQcS4VlzBwQ

Model Views: https://youtu.be/qU46JMf_nSk

Concept Templates: https://youtu.be/851D9MZGDec

Property Sets: https://youtu.be/pbIrOisCcAk

Custom Schemas: https://youtu.be/7nd70Hnf9H8

IFC Technical Primer: https://youtu.be/DDJLY82_uc8

Baseline Definitions & Samples

The development of MVD's using the ifcDoc application start with importing a baseline file. The baseline file contains the full computer interpretable IFC schema specification (including all documentation) and a pre-selected set of reusable MVD concept definitions.

The starting point of a Model View Definition is the underlying IFC schema specification and a set of reusable MVD concept templates and concept use definitions. The ifcDoc file format allows to capture all of the IFC schema definitions (the IFC schema as such, the property set definitions and the quantity set definitions). In addition it can include already MVD content (reusable concept templates, MVD specific concept use definitions, and MVD definitions with Exchange Requirements incorporated).

Currently available baseline .ifcdoc files include:

To download, right-click in the linked text above and choose "Save Link As..." option to save the .ifcdoc files locally.


This baseline file also includes re-usable concept templates for mvdXML, such as for defining property sets, composition rules, materials, ports, and other concepts.  Once the schema has been loaded, use the Insert menu to create a new Model View, which may contain multiple Exchange Definitions.  Concept Templates may also be created, each of which may contain sub-templates.  To mark an entity within scope of a model view, select the entity within the tree, choose Insert Concept Root, and select the Model View.

To add a concept to an entity, select the Concept Root just created, choose Insert Concept Leaf, and select the Concept Template.  To customize the concept, select the Concept Leaf and choose Edit Properties. From here, you may define configurations of the concept and indicate import/export requirements for each Exchange Definition.


Feedback is always welcome.  Please relay questions, comments, or bug reports to the Forums.