#### IfcRelAssociatesMaterial

Natural language names

##### Semantic definitions at the entity

Entity definition

Objectified relationship between a material definition and elements or element types to which this material definition applies. The material definition can be:

- A single material
- A material list, e.g. for composite elements
- A material layer set, for layered elements with an indication of the layering direction and individual layer thicknesses
- A material layer set usage, i.e. a material layer set with positioning information along the reference axis or surface of the element.

The IfcRelAssociatesMaterial relationship is a special type of the IfcRelAssociates relationship. It can be applied to subtypes of IfcElement and subtypes of IfcElementType.

- The IfcElement has an inverse relation to its material definition by the HasAssociations attribute, inherited from IfcObject.
- The IfcElementType has an inverse relation to its material definition by the HasAssociations attribute, inherited from IfcPropertyDefinition.

If both, the element occurrence (by an instance of IfcElement) and the element type (by an instance of IfcElementType, connected through IfcRelDefinesByType) have an associated material, then the material associated to the element occurrence overrides the material associated to the element type.

> HISTORY New entity in IFC Release 2.x.

Informal proposition

1. An IfcMaterialLayerSetUsage shall not be associated with a subtype of IfcElementType, it should only be associated with individual occurrences

Attribute definitions

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
6 | RelatingMaterial | IfcMaterialSelect | [1:1] | Material definition (either a single material, a list of materials, or a set of material layers) assigned to the elements. | X

Formal Propositions

Rule | Description
--- | ---
WR21 | The material information must not be associated to a substraction feature (such as an opening) or to a virtual element.
WR22 | The material information, using IfcMaterialSelect should be associated to a product occurrence or an product type.

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
IfcRoot
1 | GlobalId | IfcGloballyUniqueId | [1:1] | Assignment of a globally unique identifier within the entire software world. | X
2 | OwnerHistory | IfcOwnerHistory | [1:1] | 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. | X
3 | Name | IfcLabel | [0:1] | 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. | X
4 | Description | IfcText | [0:1] | Optional description, provided for exchanging informative comments. | X
IfcRelationship
IfcRelAssociates
5 | RelatedObjects | IfcRoot | S[1:?] | Objects or Types, to which the external references or information is associated. | X
IfcRelAssociatesMaterial
6 | RelatingMaterial | IfcMaterialSelect | [1:1] | Material definition (either a single material, a list of materials, or a set of material layers) assigned to the elements. | X

##### Formal representations

XSD Specification
`<xs:element name="IfcRelAssociatesMaterial" type="ifc:IfcRelAssociatesMaterial" substitutionGroup="ifc:IfcRelAssociates" nillable="true"/>
<xs:complexType name="IfcRelAssociatesMaterial">
<xs:complexContent>
<xs:extension base="ifc:IfcRelAssociates">
<xs:sequence>
<xs:element name="RelatingMaterial">
<xs:complexType>
<xs:group ref="ifc:IfcMaterialSelect"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcRelAssociatesMaterial
SUBTYPE OF (IfcRelAssociates);
RelatingMaterial : IfcMaterialSelect;
WHERE
WR21 : SIZEOF(QUERY(temp <* SELF\IfcRelAssociates.RelatedObjects | ('IFCPRODUCTEXTENSION.IFCFEATUREELEMENTSUBTRACTION' IN TYPEOF(temp)) OR ('IFCPRODUCTEXTENSION.IFCVIRTUALELEMENT' IN TYPEOF(temp)) )) = 0;
WR22 : SIZEOF(QUERY(temp <* SELF\IfcRelAssociates.RelatedObjects | (NOT('IFCKERNEL.IFCPRODUCT' IN TYPEOF(temp)) AND NOT('IFCKERNEL.IFCTYPEPRODUCT' IN TYPEOF(temp))) )) = 0;
END_ENTITY;

EXPRESS-G diagram

`

Link to this page