Voids
Overview
Describes a relationship in which a feature element (either an opening element or an edge feature) subtracts material from another element (which may be a building element or other subtype of element).
To ensure that there is clarity about entities that are participating in the voiding relationship, reference to this functional part within the IDM will indicate parameters for the aggregation as:
--->> fp_voids (element, feature_element_subtraction_type)
where the feature element subtraction type is either an opening or an edge feature.
Results
Declares the existence of a specific voiding relationship
| Description | Entity/Pset/Functional Part | MAN | REC | OPT |
|---|---|---|---|---|
| Set the occurrence of the element in which the void is to be created | IfcElement | |||
| Set the occurrence of the feature element subtraction that will create the void | IfcOpeningElement OR IfcEdgeFeature |
|||
| Assert the relationship to the element | IfcRelVoids.RelatingBuildingElement | |||
| Assert the relationship to the feature creating the void | IfcRelVoids.RelatedOpeningElement |
IFC Entities Required
- IfcElement
- IfcFeatureElement
- IfcFeatureElementSubtraction
- IfcObject
- IfcProduct
- IfcRelationship
- IfcRelConnects
- IfcRelVoids
- IfcRoot
IFC Datatypes Required
- IfcGloballyUniqueId
- IfcIdentifier
- IfcLabel
- IfcText
IFC Functions Required
- -
IFC Property Sets Required
- -
IDM Functional Parts Required
- fp_apply_owner_history
EXPRESS Schema
SCHEMA FP_VOIDS;
TYPE IfcGloballyUniqueId = STRING (22) FIXED;
END_TYPE;
TYPE IfcIdentifier = STRING;
END_TYPE;
TYPE IfcLabel = STRING;
END_TYPE;
TYPE IfcText = STRING;
END_TYPE;
ENTITY IfcProduct
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcObject);
WHERE
WR1 : (EXISTS(Representation) AND EXISTS(ObjectPlacement))
OR (EXISTS(Representation) AND
(NOT('IFC2X2_FINAL.IFCPRODUCTDEFINITIONSHAPE' IN TYPEOF(Representation))))
OR (NOT(EXISTS(Representation)));
END_ENTITY;
ENTITY IfcObject
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRoot);
ObjectType : OPTIONAL IfcLabel;
WHERE
WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X2_FINAL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
END_ENTITY;
ENTITY IfcRoot
ABSTRACT SUPERTYPE OF (ONEOF(IfcObject, IfcRelationship));
GlobalId : IfcGloballyUniqueId;
Name : OPTIONAL IfcLabel;
Description : OPTIONAL IfcText;
xOwnerHistory : fp_apply_owner_history;
UNIQUE
UR1 : GlobalId;
END_ENTITY;
ENTITY IfcRelationship
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRoot);
END_ENTITY;
ENTITY IfcRelConnects
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRelationship);
END_ENTITY;
ENTITY IfcElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcProduct);
Tag : OPTIONAL IfcIdentifier;
INVERSE
HasOpenings : SET OF IfcRelVoidsElement FOR RelatingBuildingElement;
END_ENTITY;
ENTITY IfcFeatureElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcElement);
END_ENTITY;
ENTITY IfcFeatureElementSubtraction
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcFeatureElement);
INVERSE
VoidsElements : IfcRelVoidsElement FOR RelatedOpeningElement;
END_ENTITY;
ENTITY IfcRelVoidsElement
SUBTYPE OF(IfcRelConnects);
RelatingBuildingElement : IfcElement;
RelatedOpeningElement : IfcFeatureElementSubtraction;
END_ENTITY;
ENTITY fp_apply_owner_history;
END_ENTITY;
END_SCHEMA;