I believe this has been asked several times, but there is no clear answer.
There are two ways to schedule temporal notifications: UNCalendarNotification and UNTimeIntervalNotificationTrigger.
Scheduling a notification for a specific time and day of the week is trivial, same with on a day specific of the month, but scheduling for a specific time, every n days is not so trivial.
E.g. Every 5 days at 11:00.
UNTimeIntervalNotificationTrigger may seem like the right class to reach for, except problems are introduced when daylight savings or timezone changes occur. E.g. Summer time ends and now your notification is at 10:00 instead of 11:00.
The day property on the DateComponents class together with the UNCalendarNotification class may hold the solution because it says in the docs "A day or count of days". I interpret this as "A specific day of the month (A day) or n number of days (count of days)".
Digging further into the day property docs, it reads "This value is interpreted in the context of the calendar in which it is used".
How can you use the day property together with the context of the calendar to work with a count of days instead of specific days of the month?
Additionally, the docs for the hour and minute properties in DateComponents also read "An hour or count of hours" and "A minute or count of minutes" respectively. So even if you were to set day to "a count of days" how might you set the hour and minute correctly?
It's clear this functionality is possible in iOS - the Reminders app is evidence of this.