Module Contents

ifcopenshell.api.sequence.add_work_plan.add_work_plan(file, name=None, predefined_type='NOTDEFINED', start_time=None) None

Add a new work plan

A work plan is a group of work schedules. Since work schedules may have different purposes, such as for maintenance or construction scheduling, baseline comparison, or phasing, work plans can be used to group related work schedules. At a minimum, it is recommended to use work plans to indicate whether the work schedules are for facility management or for construction scheduling.

  • name (str, optional) – The name of the work plan. Recommended to be “Maintenance” or “Construction” for the two main purposes.

  • predefined_type (str) – The type of work plan, used for baselining. Leave as “NOTDEFINED” if unsure.

  • start_time (str,datetime.time) – The earliest start time when the schedules grouped within the work plan are relevant.


The newly created IfcWorkPlan

Return type:



# This will hold all our construction schedules
work_plan = ifcopenshell.api.run("sequence.add_work_plan", model, name="Construction")

# This is one of our schedules in our work plan.
schedule = ifcopenshell.api.run("sequence.add_work_schedule", model,
    name="Construction Schedule A", work_plan=work_plan)