IFC 4.3.x development

6.1.3.58 IfcWindowType

Change log

IFC4

added

IFC4X3_RC3

modificationssupertypeChanged from IfcBuildingElementType to IfcBuiltElementType

6.1.3.58.1 Semantic definitions at the entity

The element type IfcWindowType defines commonly shared information for occurrences of windows. The set of shared information may include:

  • common properties within shared property sets
  • common material information
  • common partitioning of panels
  • common operation types of panels
  • common shape representations

A window type defines the particular parameter of the lining and one (or several) panels through the IfcWindowLiningProperties and the IfcWindowPanelProperties as predefined property sets applicable to windows only.

It is used to define a window specification, or window style (the specific product information that is common to all occurrences of that window type). Window types may be exchanged without being already assigned to occurrences.

Occurrences of the IfcWindowType within building models are represented by instances of IfcWindow or IfcWindowStandardCase.

HISTORY  New entity in IFC4. The entity IfcWindowType replaces the previous definition IfcWindowStyle (which is deprecated in IFC4).

Partitioning type use definition

The IfcWindowTypePartitioningEnum defines the general layout of the window type and its symbolic presentation. Depending on the enumerator, the appropriate instances of IfcWindowLiningProperties and IfcWindowPanelProperties are attached in the list of HasPropertySets. The IfcWindowTypePartitioningEnum mainly determines the way of partitioning the window into individual window panels and thereby number and position of window panels.

See geometry use definitions at IfcWindowTypePartitioningEnum for the correct usage of panel partitioning and IfcWindowPanelProperties for the opening symbols for different panel operation types.

Material Use Definition

The material of the IfcWindowType is defined by the IfcMaterialConstituentSet or as fall back by IfcMaterial and attached by the IfcRelAssociatesMaterial.RelatingMaterial. It is accessible by the inverse HasAssociations relationship.

The following keywords for IfcMaterialConstituentSet.MaterialConstituents[n].Name shall be used:

  • 'Lining' - to indicate that the material constituent applies to to the window lining
  • 'Framing' - to indicate that the material constituent applies to to the window panels, if not provided, the 'Lining' material information applied to panels as well
  • 'Glazing' - to indicate that the material constituent applies to to the glazing part

If the fall back single IfcMaterial is referenced, it applies to the lining and framing of the window.

Geometry Use Definitions:

The IfcWindowType may define the common shape of window occurrences. The common shape can be defined by

6.1.3.58.1 Attributes

# 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 RelatingProductReference 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.
IfcBuiltElementType
IfcWindowType
10 PredefinedType IfcWindowTypeEnum Identifies the predefined types of a window element from which the type required may be set.
11 PartitioningType IfcWindowTypePartitioningEnum Type defining the general layout of the window type in terms of the partitioning of panels.
12 ParameterTakesPrecedence OPTIONAL IfcBoolean The Boolean value reflects, whether the parameter given in the attached lining and panel properties exactly define the geometry (TRUE), or whether the attached style shape take precedence (FALSE). In the last case the parameter have only informative value. If not provided, no such information can be infered.
13 UserDefinedPartitioningTypeOPTIONAL IfcLabel Designator for the user defined partitioning type, shall only be provided, if the value of PartitioningType is set to USERDEFINED.

6.1.3.58.2 Entity inheritance

dot_inheritance IfcWindowType IfcWindowType IfcBuiltElementType IfcBuiltElementType IfcWindowType->IfcBuiltElementType IfcBuiltElementType_children 23 more... IfcBuiltElementType_children->IfcBuiltElementType IfcElementType IfcElementType IfcBuiltElementType->IfcElementType IfcElementType_children 7 more... IfcElementType_children->IfcElementType IfcTypeProduct IfcTypeProduct IfcElementType->IfcTypeProduct IfcTypeProduct_children 3 more... IfcTypeProduct_children->IfcTypeProduct IfcTypeObject IfcTypeObject IfcTypeProduct->IfcTypeObject IfcTypeProcess IfcTypeProcess IfcTypeProcess->IfcTypeObject IfcObjectDefinition IfcObjectDefinition IfcTypeObject->IfcObjectDefinition IfcTypeResource IfcTypeResource IfcTypeResource->IfcTypeObject IfcContext IfcContext IfcContext->IfcObjectDefinition IfcRoot IfcRoot IfcObjectDefinition->IfcRoot IfcObject IfcObject IfcObject->IfcObjectDefinition IfcPropertyDefinition IfcPropertyDefinition IfcPropertyDefinition->IfcRoot IfcRelationship IfcRelationship IfcRelationship->IfcRoot

6.1.3.58.3 Definitions applying to General Usage

6.1.3.58.3.1 Body Geometry

6.1.3.58.3.2 Classification Association

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.

6.1.3.58.3.3 Identity

IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept.

6.1.3.58.3.4 Product Type Shape

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.

representation map

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.

representation map

Figure 137 — Product type geometry with multiple placement

6.1.3.58.3.5 Property Sets for Types

Two subtypes of IfcPreDefinedPropertySet are applicable to IfcWindowType:

6.1.3.58.3.6 Revision Control

Ownership, history, and merge state is captured using IfcOwnerHistory.

6.1.3.58.4 Formal representations

ENTITY IfcWindowType
 SUBTYPE OF (IfcBuiltElementType);
	PredefinedType : IfcWindowTypeEnum;
	PartitioningType : IfcWindowTypePartitioningEnum;
	ParameterTakesPrecedence : OPTIONAL IfcBoolean;
	UserDefinedPartitioningType : OPTIONAL IfcLabel;
 WHERE
	CorrectPredefinedType : (PredefinedType <> IfcWindowTypeEnum.USERDEFINED) OR
((PredefinedType = IfcWindowTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
END_ENTITY;