# Introduction

The Industry Foundation Classes IFC represent an open specification for Building Information Modeling BIM data that is exchanged and shared among the various participants in a building construction or facility management project. IFC's are the international openBIM standard.

This document contains the specification of the IFC standard. The specification consists of the data schema, represented as an EXPRESS schema specification and alternatively as an XML Schema specification, and reference data, represented as XML definitions of property and quantity definitions.

An conforming software application is required to support a well defined subset of the data schema and referenced data. The subset it refered to as a Model View Definition MVD. A particular model view definition is defined to support one or many recognized work flows in the building construction and facility management industry sector. Each work flow identifies data exchange requirements that are to be supported by the conforming software applications.

buildingSMART International publishes official model view definitions and exchange requirements as related specifications. The official website for publication of this specification, related model view definitions and exchange requirements, and supporting materials such as implementer agreements, example data sets, references to development tools, discussion forum and issue database, and certification programs is http://www.buildingSMART-tech.org

The IFC specification includes terms, concepts and data specification items that originate from use within disciplines, trades, and professions of the construction and facility management industry sector. Terms and concepts uses the plain English words, the data items within the data specification follow a naming convention.

- the data item names for types, entities, rules and functions start with the prefix "Ifc" and continue with the English words in CamelCase naming convention (no underscore, first letter in word in upper case);
- the attribute names within an entity follow the CamelCase nameing convention with no prefix;
- the property set definitions that are part of this standard start with the prefix "Pset_" and continue with the English words in CamelCase naming convention;
- the quantity set definitions that are part of this standard start with the prefix "Qto_" and continue with the English words in CamelCase naming convention.

The data schema architecture of IFC defines four conceptual layers, each individual schema is assigned to exactly one conceptual layer. Figure 1 shows the schema architecture

Figure 1 — Data schema architecture with conceptual layers

1. Resource layer — the lowest layer includes all individual schemas containing resource definitions, those definitions do not include an globally unique identifier and shall not be used independently of a definition declared at a higher layer;
2. Core layer — the next layer includes the kernel schema and the core extenstion schemas, containing the most general entity definitions, all entities defined at the core layer, or above carry a globally unique id and optionally owner and history information;
3. Interoperability layer — the next layer includes schemas containing entity definitions that are specific to a general product, process or resource specialization used across several disciplines, those definitions are typicly utilized for inter-domain exchange and sharing of construction information;
4. Domain layer — the highest layer includes schemas containing entity definitions that are specializations of products, processes or resources specific to a certain discipline, those definitions are typically utilized for intra-domain exchange and sharing of information.