I would like to clarify the below misunderstandings of IFC’s capabilities.
In IFC, you are able to describe multiple sites, and multiple buildings.
In more concrete terms, an IfcProject can contain through IfcRelAggregates multiple IfcSite objects. Each IfcSite, can have its CompositionType parameter set to COMPLEX, for instance. Each IfcSite can then have another IfcRelAggregates to decompose itself into another IfcSite object, which also has a CompositionType parameter set to ELEMENT or PARTIAL. The spec currently allows up to 3 levels of IfcSite nesting (COMPLEX -> ELEMENT -> PARTIAL). This arbitrary limitation of 3 levels deep may be removed in a future IFC version.
Similarly, each IfcSite, seemingly at any level of CompositionType, can contain one or more IfcBuilding objects. Each IfcBuilding object has the same 3 levels of CompositionType. (COMPLEX -> ELEMENT -> PARTIAL) The spec is a little bit more specific here, nominating that the COMPLEX type refers to a “building complex”, like a group of buildings, and an ELEMENT type is a single building. This creates a bit of ambiguity whether or not a group of buildings is a one to many IfcBuilding (COMPLEX) -> IfcBuilding (ELEMENT) or if a group of buildings is a one to many IfcSite -> IfcBuilding (ELEMENT).
This page about IfcSpatialStructureElement describes how it works, and shows that it applies to any spatial structure. So my description applies to things like IfcSpace too, and now maybe even IfcFacility in the new spec.
In short, despite the ambiguity, which hopefully somebody (@TLiebich ? @jonm ? ) can clarify, it is clear that IFC supports more than one site and building.