| additions | where_rules | CorrectPredefinedType |
| deletions | where_rules | WR1 |
The flow controller type IfcDamperType defines commonly shared information for occurrences of dampers. The set of shared information may include:
It is used to define a damper type specification indicating the specific product information that is common to all occurrences of that product type. The IfcDamperType may be declared within IfcProject or IfcProjectLibrary using IfcRelDeclares and may be exchanged with or without occurrences of the type. Occurrences of IfcDamperType are represented by instances of IfcDamper. Refer to the documentation at IfcDamper for supported property sets, materials, composition, and ports.
| # | Attribute | Type | Description |
|---|---|---|---|
| IfcRoot | |||
| 1 | GlobalId | IfcGloballyUniqueId | Assignment of a globally unique identifier within the entire software world. |
| 2 | OwnerHistory | OPTIONAL IfcOwnerHistory | Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object, > NOTE only the last modification in stored - either as addition, deletion or modification. > IFC4 CHANGE The attribute has been changed to be OPTIONAL. |
| 3 | Name | OPTIONAL IfcLabel | Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule. |
| 4 | Description | OPTIONAL IfcText | Optional description, provided for exchanging informative comments. |
| IfcObjectDefinition | |||
| HasAssignments | SET [0:?] OF IfcRelAssigns FOR RelatedObjects | Reference to the relationship objects, that assign (by an association relationship) other subtypes of IfcObject to this object instance. Examples are the association to products, processes, controls, resources or groups. | |
| Nests | SET [0:1] OF IfcRelNests FOR RelatedObjects | References to the decomposition relationship being a nesting. It determines that this object definition is a part within an ordered whole/part decomposition relationship. An object occurrence or type can only be part of a single decomposition (to allow hierarchical strutures only). > IFC4 CHANGE The inverse attribute datatype has been added and separated from Decomposes defined at IfcObjectDefinition. | |
| IsNestedBy | SET [0:?] OF IfcRelNests FOR RelatingObject | References to the decomposition relationship being a nesting. It determines that this object definition is the whole within an ordered whole/part decomposition relationship. An object or object type can be nested by several other objects (occurrences or types). > IFC4 CHANGE The inverse attribute datatype has been added and separated from IsDecomposedBy defined at IfcObjectDefinition. | |
| HasContext | SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions | References to the context providing context information such as project unit or representation context. It should only be asserted for the uppermost non-spatial object. > IFC4 CHANGE The inverse attribute datatype has been added. | |
| IsDecomposedBy | SET [0:?] OF IfcRelAggregates FOR RelatingObject | References to the decomposition relationship being an aggregation. It determines that this object definition is whole within an unordered whole/part decomposition relationship. An object definitions can be aggregated by several other objects (occurrences or parts). > IFC4 CHANGE The inverse attribute datatype has been changed from the supertype IfcRelDecomposes to subtype IfcRelAggregates. | |
| Decomposes | SET [0:1] OF IfcRelAggregates FOR RelatedObjects | References to the decomposition relationship being an aggregation. It determines that this object definition is a part within an unordered whole/part decomposition relationship. An object definitions can only be part of a single decomposition (to allow hierarchical strutures only). > IFC4 CHANGE The inverse attribute datatype has been changed from the supertype IfcRelDecomposes to subtype IfcRelAggregates. | |
| HasAssociations | SET [0:?] OF IfcRelAssociates FOR RelatedObjects | Reference to the relationship objects, that associates external references or other resource definitions to the object.. Examples are the association to library, documentation or classification. | |
| IfcTypeObject | |||
| 5 | ApplicableOccurrence | OPTIONAL IfcIdentifier | The attribute optionally defines the data type of the occurrence object, to which the assigned type object can relate. If not present, no instruction is given to which occurrence object the type object is applicable. The following conventions are used: * The IFC entity name of the applicable occurrence using the IFC naming convention, CamelCase with IFC prefix * It can be optionally followed by the predefined type after the separator "/" (forward slash), using uppercase * If one type object is applicable to many occurrence objects, then those occurrence object names should be separate by comma "," forming a comma separated string. > EXAMPLE Refering to a furniture as applicable occurrence entity would be expressed as 'IfcFurnishingElement', refering to a brace as applicable entity would be expressed as 'IfcMember/BRACE', refering to a wall and wall standard case would be expressed as 'IfcWall, IfcWallStandardCase'. |
| 6 | HasPropertySets | OPTIONAL SET [1:?] OF IfcPropertySetDefinition | Set ~~list~~ of unique property sets, that are associated with the object type and are common to all object occurrences referring to this object type. > IFC2x3 CHANGE The attribute aggregate type has been changed from LIST to SET. |
| Types | SET [0:1] OF IfcRelDefinesByType FOR RelatingType | Reference to the relationship IfcRelDefinedByType and thus to those occurrence objects, which are defined by this type. | |
| IfcTypeProduct | |||
| 7 | RepresentationMaps | OPTIONAL LIST [1:?] OF UNIQUE IfcRepresentationMap | List of unique representation maps. Each representation map describes a block definition of the shape of the product style. By providing more than one representation map, a multi-view block definition can be given. |
| 8 | Tag | OPTIONAL IfcLabel | The tag (or label) identifier at the particular type of a product, e.g. the article number (like the EAN). It is the identifier at the specific level. |
| ReferencedBy | SET [0:?] OF IfcRelAssignsToProduct FOR RelatingProduct | Reference to the IfcRelAssignsToProduct relationship, by which other products, processes, controls, resources or actors (as subtypes of IfcObjectDefinition) can be related to this product type. > IFC4 CHANGE New inverse relationship. | |
| IfcElementType | |||
| 9 | ElementType | OPTIONAL IfcLabel | The type denotes a particular type that indicates the object further. The use has to be established at the level of instantiable subtypes. In particular it holds the user defined type, if the enumeration of the attribute 'PredefinedType' is set to USERDEFINED. |
| IfcDistributionElementType | |||
| IfcDistributionFlowElementType | |||
| IfcFlowControllerType | |||
| IfcDamperType | |||
| 10 | PredefinedType | IfcDamperTypeEnum | Type of damper. |
This represents the 3D flow path of the item having IfcShapeRepresentation.RepresentationType of 'Curve3D' and containing a single IfcBoundedCurve subtype such as IfcPolyline, IfcTrimmedCurve, or IfcCompositeCurve. For elements containing directional ports (IfcDistributionPort with FlowDirection of SOURCE or SINK), the direction of the curve indicates direction of flow where a SINK port is positioned at the start of the curve and a SOURCE port is positioned at the end of the curve. This representation is most applicable to flow segment types (pipes, ducts, cables), however may be used at other elements to define a primary flow path if applicable.
If an element type is defined parametrically (such as a flow segment type defining common material profile but no particular length or path), then no representations shall be asserted at the type.
NOTE The product representations are defined as representation maps (at the level of the supertype IfcTypeProduct, which get assigned by an element occurrence instance through the IfcShapeRepresentation.Item[1] being an IfcMappedItem.
| Type | Geometry |
|---|---|
| 'Curve3D' | 'IfcBoundedCurve' |
Any object occurrence or object type can have a reference to a specific classification reference, i.e. to a particular facet within a classification system.
This represents the 3D clearance volume of the item having RepresentationType of 'Surface3D'. Such clearance region indicates space that should not intersect with the 'Body' representation between element occurrences, though may intersect with the 'Clearance' representation of other element occurrences. The particular use of clearance space may be for safety, maintenance, or other purposes.
| Type | Geometry |
|---|---|
| 'Surface3D' | 'IfcSurface' |
IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept.
This represents the light emission of the item having IfcShapeRepresentation.RepresentationType of 'LightSource' and containing one or more IfcLightSource subtypes. This representation is most applicable to lamps and light fixtures, however may be used at other elements that emit light.
| Type | Geometry |
|---|---|
| 'LightSource' | 'IfcLightSource' |
The RepresentationMaps define the type product shape and multiple geometric representations can be assigned. If a product occurrence is assigned to the type by using the IfcRelDefinesByType relationship, then these occurrences have to reference the representation maps. The reference is created by one or multiple IfcShapeRepresentation's having an IfcMappedItem as Items, that places the IfcRepresentationMap of the type product into the spatial contexts, i.e. by using an Cartesian transformation operator to transform the IfcRepresentationMap into the object coordinate system of the product occurrence.
Figure 136 illustrates an example of referencing a representation map by the shape representation of a product occurrence. Here the Cartesian transformation operator only uses translation, but no rotation, mirroring, or scaling.
![]() |
Figure 136 — Product type geometry with single placement |
Figure 137 illustrates an example of referencing a representation multiple times map by the shape representation of a product occurrence. Here the Cartesian transformation operator only uses translation, but no rotation, mirroring, or scaling. The different translation values determine the pattern of the multiple placement.
![]() |
Figure 137 — Product type geometry with multiple placement |
Ownership, history, and merge state is captured using IfcOwnerHistory.
ENTITY IfcDamperType SUBTYPE OF (IfcFlowControllerType); PredefinedType : IfcDamperTypeEnum; WHERE CorrectPredefinedType : (PredefinedType <> IfcDamperTypeEnum.USERDEFINED) OR ((PredefinedType = IfcDamperTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType)); END_ENTITY;