buildingSMART / buildingSMART/NextGen-IFC
Utilize a concept such as Generics.
- Dominant language
- TeX
- Stars
- 64
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
It seems that popular programming languages provide the mechanism to use generics.
https://en.wikipedia.org/wiki/Generic_programming
Lots of leaf classes inheriting from IfcTypeObject and IfcObject only add a single attribute PredefinedType. Here’s an example of IfcAirTerminalType showing many layers with no attributes.

Some details still need to be thought through, but potentially we could terminate the derived classes at IfcObjectType by taking advantage of the concept of generics. The PredefinedType attribute could be stored at the tier of IfcObject and IfcTypeObject, saving on a lot of children attributes.
A related refactor would be the direct reference of the relating type to the instance.

This can reduce the number of official classes and attributes significantly in the schema, allowing "Late Binding" of classification.
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or entry points are identified. Start by reviewing the IfcObject/IfcTypeObject inheritance example and the IfcAirTerminalType diagram, then establish the generic representation and direct instance-to-type reference proposed in the issue. Done requires an agreed design that reduces redundant classes and attributes without losing predefined-type or classification behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- backend-api-design, data
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100