IFC 4.3.0.0 (IFC4X3) final

4.4.3.2 Element Openings

Elements may have openings (geometric voids) defined, which may be a partial recess or extend the full depth. Openings may optionally be filled by another element such as a door or window.

The 'Body' representation of an element does not account for voids, for which CSG operations are required to produce the resulting shape.

The 'Mesh' representation of an element does account for voids, such that no additional operations are required.

The following diagram shows the generic classes and relationships used when applying this concept. In addition, concepts may have particular importance to common or standardised industry practices and scenarios. For these specific usage scenarios, the tables below shows a recommended list of general usage patterns that users may adopt.

G IfcElement IfcElement GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] HasAssignments [0:?] Nests [0:1] IsNestedBy [0:?] HasContext [0:1] IsDecomposedBy [0:?] Decomposes [0:1] HasAssociations [0:?] ObjectType [0:1] IsDeclaredBy [0:1] Declares [0:?] IsTypedBy [0:1] IsDefinedBy [0:?] ObjectPlacement [0:1] Representation [0:1] ReferencedBy [0:?] PositionedRelativeTo [0:?] ReferencedInStructures [0:?] Tag [0:1] FillsVoids [0:1] ConnectedTo [0:?] IsInterferedByElements [0:?] InterferesElements [0:?] HasProjections [0:?] HasOpenings HasOpenings [0:?] IsConnectionRealization [0:?] ProvidesBoundaries [0:?] ConnectedFrom [0:?] ContainedInStructure [0:1] HasCoverings [0:?] HasSurfaceFeatures [0:?] IfcRelVoidsElement IfcRelVoidsElement GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] RelatingBuildingElement [1:1] RelatedOpeningElement RelatedOpeningElement [1:1] IfcElement:HasOpenings1->IfcRelVoidsElement:RelatingBuildingElement0 IfcOpeningElement IfcOpeningElement GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] HasAssignments [0:?] Nests [0:1] IsNestedBy [0:?] HasContext [0:1] IsDecomposedBy [0:?] Decomposes [0:1] HasAssociations [0:?] ObjectType [0:1] IsDeclaredBy [0:1] Declares [0:?] IsTypedBy [0:1] IsDefinedBy [0:?] ObjectPlacement [0:1] Representation [0:1] ReferencedBy [0:?] PositionedRelativeTo [0:?] ReferencedInStructures [0:?] Tag [0:1] FillsVoids FillsVoids [0:1] ConnectedTo [0:?] IsInterferedByElements [0:?] InterferesElements [0:?] HasProjections [0:?] HasOpenings [0:?] IsConnectionRealization [0:?] ProvidesBoundaries [0:?] ConnectedFrom [0:?] ContainedInStructure [0:1] HasCoverings [0:?] HasSurfaceFeatures [0:?] VoidsElements [1:1] OpeningElementType PredefinedType [0:1] HasFillings [0:?] IfcRelVoidsElement:RelatedOpeningElement1->IfcOpeningElement:IfcOpeningElement0 IfcOpeningElementTypeEnum IfcOpeningElementTypeEnum IfcOpeningElement:PredefinedType1->IfcOpeningElementTypeEnum:IfcOpeningElementTypeEnum0 IfcRelFillsElement IfcRelFillsElement GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] RelatingOpeningElement [1:1] RelatedBuiltElement RelatedBuildingElement [1:1] IfcOpeningElement:FillsVoids1->IfcRelFillsElement:RelatedBuildingElement0 IfcDoor IfcDoor GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] HasAssignments [0:?] Nests [0:1] IsNestedBy [0:?] HasContext [0:1] IsDecomposedBy [0:?] Decomposes [0:1] HasAssociations [0:?] ObjectType [0:1] IsDeclaredBy [0:1] Declares [0:?] IsTypedBy [0:1] IsDefinedBy [0:?] ObjectPlacement [0:1] Representation [0:1] ReferencedBy [0:?] PositionedRelativeTo [0:?] ReferencedInStructures [0:?] Tag [0:1] FillsVoids [0:1] ConnectedTo [0:?] IsInterferedByElements [0:?] InterferesElements [0:?] HasProjections [0:?] HasOpenings [0:?] IsConnectionRealization [0:?] ProvidesBoundaries [0:?] ConnectedFrom [0:?] ContainedInStructure [0:1] HasCoverings [0:?] HasSurfaceFeatures [0:?] OverallHeight [0:1] OverallWidth [0:1] PredefinedType [0:1] OperationType [0:1] UserDefinedOperationType [0:1] IfcRelFillsElement:RelatedBuildingElement1->IfcDoor:IfcDoor0 IfcWindow IfcWindow GlobalId [1:1] OwnerHistory [0:1] Name [0:1] Description [0:1] HasAssignments [0:?] Nests [0:1] IsNestedBy [0:?] HasContext [0:1] IsDecomposedBy [0:?] Decomposes [0:1] HasAssociations [0:?] ObjectType [0:1] IsDeclaredBy [0:1] Declares [0:?] IsTypedBy [0:1] IsDefinedBy [0:?] ObjectPlacement [0:1] Representation [0:1] ReferencedBy [0:?] PositionedRelativeTo [0:?] ReferencedInStructures [0:?] Tag [0:1] FillsVoids [0:1] ConnectedTo [0:?] IsInterferedByElements [0:?] InterferesElements [0:?] HasProjections [0:?] HasOpenings [0:?] IsConnectionRealization [0:?] ProvidesBoundaries [0:?] ConnectedFrom [0:?] ContainedInStructure [0:1] HasCoverings [0:?] HasSurfaceFeatures [0:?] OverallHeight [0:1] OverallWidth [0:1] PredefinedType [0:1] PartitioningType [0:1] UserDefinedPartitioningType [0:1] IfcRelFillsElement:RelatedBuildingElement1->IfcWindow:IfcWindow0
Figure 4.4.3.2.A

General Usage

ApplicableEntity
IfcElement
Table 4.4.3.2.B