buildingSMART / buildingSMART/IFC4.x-development

Can anyone confirm whether or not reuse of non-rooted entities applies to IfcTaskTime?

Open
#348 0 comments 0 reactions 0 assignees View on GitHub
allocated allocated-core allocated-sequence ifc-update-out
Dominant language
Python
Stars
234
Forks
123
Avg merge
15h 4m
Merged PRs (30d)
5

Description

https://forums.buildingsmart.org/t/can-anyone-confirm-whether-or-not-reuse-of-non-rooted-entities-applies-to-ifctasktime/3609

The general consensus is that non-rooted entities may be reused if they are identical for the purposes of optimisation. However, can someone clarify whether this breaks the semantic meaning of an IfcTaskTime, and whether or not an EXPRESS constraint needs to be put in place?

An `IfcTaskTime` is not rooted. However, its semantic meaning is only complete when coupled with an `IfcTask` when the `IfcTaskTime` has a `DurationType` set to `WORKTIME`. In this case, the meaning comes from the `IfcWorkCalendar` which is assigned to the `IfcTask`, not the `IfcTaskTime`.

Therefore, if two identical task times were recycled / optimised to attach to two different `IfcTask` entities with two different `IfcWorkCalendar` associations, applications / viewers will calculate elapsed time incorrectly.

Can anybody confirm this, as well as check if there is a constraint in the schema I have missed?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.