4.3.2.1 External Data Constraints

The constraint model may be used to indicate mappings between data in the IFC model and external documents. This concept template may also be used by software applications to translate data to/from spreadsheets without necessarily instantiating constraint relationships within an IFC data set.

To indicate an explicit mapping to a particular file or database, IFC classes may be mapped to tabular data formats using IfcResourceConstraintRelationship attached to IfcDocumentInformation.

Default mappings may be indicated using the IfcRelAssociatesConstraint relationship, with RelatingConstraint pointing to IfcObjective.

An IfcObjective of type EXTERNAL has ConstraintSource set to the name of the IFC entity (e.g. 'IfcSpace') with Benchmarks containing a single IfcMetric with DataValue set to an IfcTable. On IfcTable, the Name is set to the name of the external database table or worksheet, and the Columns attribute indicates the external table columns in order as IfcTableColumn. For each IfcTableColumn, the Name indicates the field name or column header, and the ReferencePath identifies the corresponding object attribute, for which standard mappings are indicated.

Within this document, attribute paths (as used for IfcReference) are encoded using syntax in the form 'IfcSpace.OwnerHistory\IfcOwnerHistory.CreationDate' with the following conventions:

Upon import from a spreadsheet, tables shall be identified by worksheet name regardless of order, and columns shall be identified by header name regardless of order. For export to a new spreadsheet, worksheets shall be provided with identifying name for each entity and sequenced in the order specified, and within each worksheet a header row shall be provided with with each column having an identifying name and sequenced in the order specified.

Attributes are mapped to spreadsheet cells, where either NULL, an empty string, or the reserved value 'n/a' indicates a null value. Specific base types are mapped as follows:

Specific mappings are defined at corresponding entities, where the following standard column names are used:

Figure 8 illustrates an instance diagram.

External Data ConstraintsIfcObjectDefinitionIfcRelAssociatesConstraintIfcLabelIfcObjectiveIfcMetricIfcTableIfcLabelIfcTableColumnIfcLabelIfcTextIfcContextDependentUnitIfcReferenceIfcObjectiveEnum

Figure 8 — External Data Constraints


Construction Operations

This concept is used by entities for exchanges as shown.

IfcActionRequestX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
R
R
X
X
X
X
R
R
X
X
X
X
X
X
R
R
R
R
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
IfcActorR
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcAnnotation-
-
-
-
-
-
-
-
-
-
O
O
O
O
O
O
O
O
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IfcBuildingStoreyO
O
O
O
O
O
O
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcConstructionProductResource-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
IfcConstructionProductResourceType-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
R
R
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IfcElementX
X
X
X
X
X
X
X
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
IfcElementTypeX
X
X
X
X
X
X
X
O
O
O
O
O
O
O
O
O
O
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcProjectR
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcPropertySetO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
IfcRelAssociatesDocumentO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
IfcRelConnectsPorts-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
O
O
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IfcRelConnectsWithRealizingElements-
-
-
-
-
-
-
-
-
-
-
-
-
-
O
O
-
-
-
-
-
-
-
-
-
-
-
-
O
O
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IfcSpaceO
O
O
O
O
O
O
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcSystemO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
IfcTaskX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
IfcWorkSchedule-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
O
O
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IfcZoneO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O

Link to this page  Link to this page