8.16.3.1 IfcComplexProperty
8.16.3.1.1 Semantic definition
IfcComplexProperty is used to define complex properties to be handled completely within a property set. The included set of properties may be a mixed or consistent collection of IfcProperty subtypes. This enables the definition of a set of properties to be included as a single 'property' entry in an IfcPropertySet. The definition of such an IfcComplexProperty can be reused in many different IfcPropertySet's.
8.16.3.1.2 Entity inheritance
8.16.3.1.3 Attributes
| # | Attribute | Type | Description | 
|---|---|---|---|
| IfcPropertyAbstraction (1) | |||
| HasExternalReferences | SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects | 
 Reference to an external reference, e.g. library, classification, or document information, that is associated to the property definition.  | 
|
| IfcProperty (8) | |||
| 1 | Name | IfcIdentifier | 
 Name for this property. This label is the significant name string that defines the semantic meaning for the property.  | 
| 2 | Specification | OPTIONAL IfcText | 
 URI reference to a location with semantic definition or informative text to explain the property.  | 
| PartOfPset | SET [0:?] OF IfcPropertySet FOR HasProperties | 
 Reference to the IfcPropertySet by which the IfcProperty is referenced.  | 
|
| PropertyForDependance | SET [0:?] OF IfcPropertyDependencyRelationship FOR DependingProperty | 
 The property on whose value that of another property depends.  | 
|
| PropertyDependsOn | SET [0:?] OF IfcPropertyDependencyRelationship FOR DependantProperty | 
 The relating property on which the value of the property depends.  | 
|
| PartOfComplex | SET [0:?] OF IfcComplexProperty FOR HasProperties | 
 Reference to the IfcComplexProperty in which the IfcProperty is contained.  | 
|
| HasConstraints | SET [0:?] OF IfcResourceConstraintRelationship FOR RelatedResourceObjects | 
 User-defined constraints for the property.  | 
|
| HasApprovals | SET [0:?] OF IfcResourceApprovalRelationship FOR RelatedResourceObjects | 
 User-defined approvals for the property.  | 
|
| Click to show 9 hidden inherited attributes Click to hide 9 inherited attributes | |||
| IfcComplexProperty (2) | |||
| 3 | UsageName | IfcIdentifier | 
 Usage description of the IfcComplexProperty within the property set which references the IfcComplexProperty.  | 
| 4 | HasProperties | SET [1:?] OF IfcProperty | 
 Set of properties that can be used within this complex property (may include other complex properties).  | 
8.16.3.1.4 Formal propositions
| Name | Description | 
|---|---|
| WR21 | 
 The IfcComplexProperty should not reference itself within the list of HasProperties.  | 
 | 
|
| WR22 | 
 Each property within the complex property shall have a unique name attribute.  | 
 | 
|
8.16.3.1.5 Formal representation
ENTITY IfcComplexProperty
 SUBTYPE OF (IfcProperty);
	UsageName : IfcIdentifier;
	HasProperties : SET [1:?] OF IfcProperty;
 WHERE
	WR21 : SIZEOF(QUERY(temp <* HasProperties | SELF :=: temp)) = 0;
	WR22 : IfcUniquePropertyName(HasProperties);
END_ENTITY;