IfcConstraintAggregationRelationship

Definition from IAI: An IfcConstraintAggregationRelationship is an objectified relationship that enables instances of IfcConstraint and its subtypes to be aggregated together logically.

> HISTORY: New Entity in IFC Release 2.0. Modified in IFC 2x2

### Use Definition

The IfcConstraintAggregationRelationship allows the aggregation link between constraints to be logically defined (AND, OR). In this way, where an object or property has multiple constraints assigned, the linkage between them can be specified. Thus linked constraints might show as (> X AND < Y) which is useful for an allowed range or bounded value or as (A OR B OR C) which is valuable for an enumerated property where a selection is constrained to be one of A, B or C.

EXPRESS specification:

ENTITY IfcConstraintAggregationRelationship;
Name | : | OPTIONAL IfcLabel;
Description | : | OPTIONAL IfcText;
RelatingConstraint | : | IfcConstraint;
RelatedConstraints | : | LIST [1:?] OF UNIQUE IfcConstraint;
LogicalAggregator | : | IfcLogicalOperatorEnum;
WHERE
WR11 | : | SIZEOF(QUERY(temp <* RelatedConstraints | temp :=: RelatingConstraint )) = 0;
END_ENTITY;

Attribute definitions:

Name | : | A name used to identify or qualify the constraint aggregation.
Description | : | A description that may apply additional information about a constraint aggregation.
RelatingConstraint | : | Constraint to which the other Constraints are associated.
RelatedConstraints | : | Constraints that are aggregated in using the LogicalAggregator.
LogicalAggregator | : | Enumeration that identifies the logical type of aggregation.

Formal Propositions:

WR11 | : | The instance to which the relation RelatingConstraint points shall not be the same as the RelatedConstraint.

Inheritance graph

ENTITY IfcConstraintAggregationRelationship;
ENTITY IfcConstraintAggregationRelationship;
Name | : | OPTIONAL IfcLabel;
Description | : | OPTIONAL IfcText;
RelatingConstraint | : | IfcConstraint;
RelatedConstraints | : | LIST [1:?] OF UNIQUE IfcConstraint;
LogicalAggregator | : | IfcLogicalOperatorEnum;
END_ENTITY;