# 8.5.3.5 IfcRecurrencePattern

## 8.5.3.5.1 Semantic definition

IfcRecurrencePattern defines repetitive time periods on the basis of regular recurrences such as each Monday in a week, or every third Tuesday in a month. The population of the remaining attributes such as DayComponent, Position, and Interval depend on the specified recurrence type.

IfcRecurrencePattern supports various recurrence patterns that are differentiated by a type definition (IfcRecurrencePattern.RecurrenceType), which is required to provide the meaning of the given values. It can be further constrained by applicable times through specified IfcTimePeriod instances, thus enabling time periods such as between 7:00 and 12:00 and between 13:00 and 17:00 for each of the applicable days, weeks or months.

## 8.5.3.5.4 Formal representation

ENTITY IfcRecurrencePattern;
RecurrenceType : IfcRecurrenceTypeEnum;
DayComponent : OPTIONAL SET [1:?] OF IfcDayInMonthNumber;
WeekdayComponent : OPTIONAL SET [1:?] OF IfcDayInWeekNumber;
MonthComponent : OPTIONAL SET [1:?] OF IfcMonthInYearNumber;
Position : OPTIONAL IfcInteger;
Interval : OPTIONAL IfcInteger;
Occurrences : OPTIONAL IfcInteger;
TimePeriods : OPTIONAL LIST [1:?] OF IfcTimePeriod;
END_ENTITY;