The Industry Foundation Classes (IFC) schema is an international standard for building and infrastructure information modeling. One of the key elements of the IFC schema is the system of relationships between different objects in the model. Each object in the IFC model can be linked to other objects using various types of relationships. These relationships help to define how the individual building elements are connected to each other and how they affect each other.
- All you need to know about IFC 4.3 for infrastructure
- IFC 4.3 in road projects – case study
- Spatial Breakdown Structure in IFC 4.3
- IFC 4.3 on construction site
- Webinar about IFC 4.3
- Ticket to openBIM
- Export to IFC 4.3
- The Key Changes in IFC Schema Shaping OpenBIM for Infrastructure
- Webinar about IFC 4.3 export from Quadri
NOTE: Discussed IFC 4.3 model was created in the Trimble Quadri software. The model is provided for educational purposes. At this point, it is possible to create a IFC 4.3 model in the development environment to which I have access as a Trimble employee. If you want to know more about the Trimble Quadri product, write directly to me on Linkedin.
ifcRelationship
The ifcRelationship is a generic object in the IFC schema that can be used to represent any type of relationship between two or more objects in the model. There are several different subtypes of the ifcRelationship, each of which is used to represent a specific type of relationship.
Some of the most common and important relationships in the IFC schema include
- ifcRelContainedinSpatialStructure,
- ifcRelAggregates,
- ifcRelVoidsElement,
- ifcRelAssociatesMaterial,
- ifcRelAssignsToGroup,
- ifcRelNests
These are the relationships I use to create hierarchy in infrastructure models.
ifcRelContainedinSpatialStructure
The ifcRelContainedinSpatialStructure relationship is used to specify that an object or collection of objects are contained within a spatial structure, such as a site, road. The ifcRelContainedinSpatialStructure object includes properties that define the specific nature of the containment relationship it represents, such as the objects being contained and the spatial structure they are contained within. This object is often used to represent relationships such as “is contained within” or “is a part of” and allows for precise specification of the hierarchical structure of a building / infrastructure model.
Simply put, we can use this relationship between an spatial objects (ifcSite, ifcRoad, ifcRoadPart) and object having a shape, geometry (ifcAlignment, ifcSlab, ifcEarthworks) or collection of objects (ifcPavement, ifcElementAssembly, ifcEarthworksFill).
In example, this relationship I used:
- Between ifcSite and ifcAlignment, ifcGeomodel
- In Road model, between ifcRoadPart (Longitudinal) and ifcPavement, ifcEartwhorksFill and ifcElementAssembly
- In road model, between ifcRoadPart (Lateral) and ifcCourse (top surfaces of the road), ifcEarthworksFill (slope surfaces) and ifcDistributrionChamber (trench)
- In Water and Sewer model, between ifcSite and ifcElementAssembly that is used as a main collection of all utility parts
ifcRelAggregates
The ifcRelAggregates relationship is used to specify that one object is composed of multiple other objects. For instance, it can be used to specify that a Road is composed of multiple parts, or that a pavement is made up of individual layers. This relationship is important for defining the composition of building and infrastructure elements.
This relationship is used in two main cases. Between spatial objects that divide the facility/area into successive parts/areas and between collections/groups and their parts.
In example, this relationship I used:
- In road model, between spatial objects such as: ifcProject, ifcSite, ifcRoad, ifcRoadPart
- In road model, between ifcPavement and its layers (ifcCourse)
- In road model, between ifcEarthworksFill collection and different types of earthworks.
- In Water and Sewer model, between ifcElementAssembly representing the whole collection of utilities and ifcDistributionSystem and two others ifcElementAssemblies including trench parts and stakeout data.
- In Water and Sewer model, between ifcElementAssembly collection defining trench and its parts such as ifcEarthworksFill, ifcBuiltElement, ifcCourse, ifcDistributionChamberELement
ifcRelVoidsElement
In example, this relationship I used:
- In Road and Water and Sewer models between ifcGeomodel and ifcEarthworksCut
ifcRelAssociatesMaterial
In example, this relationship I used:
- In road model, between ifcCourse and ifcMaterial
ifcRelAssignsToGroup
In my example, this relationship I used:
- In Water and Sewer model, between ifcDistributionSystem and ifcElementAssembly representing collection of Manhole parts
ifcRelNests
In example, this relationship I used:
- In Road model, between ifcAlignment, ifcVerticalAlignment, ifcHorizontalAlignment and ifcAlignmentSegment
make more topics about it, It is really interesting. Also, do you have video references ?
thanks