Ambiguity of the applicability of DurationType of an IfcLagTime

If the DurationType of an IfcLagTime is specified as WORKTIME within an IfcRelSequence, then which calendar is this WORKTIME referring to? Is it referring to the calendar that is assigned to its predecessor task, or its successor task? Or does the choice depend on the FS/SF/FF/SS type? Or is there an unwritten constraint that the calendars must be the same if this is the case? This ambiguity means we need to make an assumption when resolving task dependencies.

The documentation of IfcLagTime says this (emphasis mine):

The value of the time lag may be selected as being either a percentage ratio or an actual time measure. If selected as a ratio, the percentage should apply to the duration of the predecessor process (relating process) such that e.g. a value of 0.5 (50%) would indicate that the successor task should start when the predecessor task is 50% complete (if a START-START sequence type is used) or should wait for 50% of the duration of the predecessor process to have elapsed after the finish of the predecessor process in case of a FINISH-START sequence type.

Given that the specification suggests that ratios apply to the predecessor, perhaps it is a safe assumption that a duration also applies to the predecessor’s calendar?

Can someone please clarify this?

Upon further research and implementation and testing against existing battle-tested software like P6, it seems as though the lag time as a duration is tested against both the predecessor and successor calendars, and the maximum is determined on a forward pass, and minimum on a backwards pass.

This ambiguity is now solved :slight_smile: