IFC and taxonomies

Personally, I think Product should be product, it’s odd to me: " IfcProduct represents occurrences in space such as physical building elements and spatial locations."

Products are processed, finished items that are offered for sale

So, what about subdivide IfcObjectDefinition into “seven” fundamental concepts:

  1. actors (“who”),
  2. context (“where”),
  3. controls (“why”),
  4. groups (“what”),
  5. products (“which”),
  6. processes (“when”),
  7. resources (“how”).

I mean IfcContext represents “where”: represents occurrences in space

Then I think we can move IfcSite, IfcBuilding, IfcBuildingStorey, IfcSpace, and even the whole IfcSpatialElement into IfcContext

Then IfcContext will contain:
IfcProject
IfcProjectLibrary
IfcSite
IfcBuilding
IfcBuildingStorey
IfcSpace

And IfcProduct will represent anything related to products

Alternative: Or have that six fundamental concepts, but change products (“where”) to products (“which”) and move IfcSite, IfcBuilding, IfcBuildingStorey, IfcSpace, and even the whole IfcSpatialElement into IfcContext