## 8.8.3.2.1 Semantic definition

The IfcAdvancedBrepWithVoids is a specialization of an advanced B-rep which contains one or more voids in its interior. The voids are represented as closed shells which are defined so that the shell normal point into the void.

Informal Propositions:

1. Each void shell shall be disjoint from the outer shell and from every other void shell
2. Each void shell shall be enclosed within the outer shell but not within any other void shell. In particular the outer shell is not in the set of void shells
3. Each shell in the IfcManifoldSolidBrep shall be referenced only once.
4. All the faces of all the shells in the IfcAdvancedBrep and the IfcAdvancedBrepWithVoids.Voids shall be of type IfcAdvancedFace.

## 8.8.3.2.5 Formal representation

ENTITY IfcAdvancedBrepWithVoids
Voids : SET [1:?] OF IfcClosedShell;
WHERE
VoidsHaveAdvancedFaces : SIZEOF (QUERY (Vsh <* Voids |
SIZEOF (QUERY (Afs <* Vsh.CfsFaces |
)) = 0
)) = 0;
END_ENTITY;