IFC4.3.x-development
IFC4.3.x-development copied to clipboard
Semantic meaning of cardinality of IfcPropertySet association
IfcPropertySet.DefinesOccurrence is defined as SET [0:?] OF IfcRelDefinesByProperties FOR RelatingPropertyDefinition
Scenario 1:
IfcWallX <- IfcRelDefinesByProperties -> IfcPropertySetX IfcSlabX <- IfcRelDefinesByProperties -> IfcPropertySetX
Scenario 2:
IfcWallX, IfcSlabX <- IfcRelDefinesByProperties -> IfcPropertySetX
What's the difference between the two scenarios?
If SET [0:?] were changed to SET [0:1] then that would enforce scenario 2, which seems a bit cleaner to me.
These kind of things impact partial models. I would rather prefer the other extreme where we change all relationship entities to be 1-1 (it would still allow n-n relationships just with more rel instances), but it'd be harder to impose cardinality constraints I think. But computing subgraphs or joining models without the need to modify instances seems so important to me.
The proposed change is also not a backwards compatible change in terms of validity of the serializations so I'd say we better postpone this discussion and redo the discussion for IFC5 taking into account partial exchanges.