In some cases, you may find a migrated recurring series with a yearly recurrence when the Source used a different recurrence pattern (for example, every two weeks). This is incorrect, but done as a way to address limitations of the Source system.
This happens when migrating from Source systems that do not return the recurrence pattern via their API. Instead, those Source systems return individual (expanded) recurring appointments. For example, if the recurrence pattern is every two days, the Source system may return:
Instance #1 - 6 PM on January 1st 2014
Instance #2 - 6 PM on January 3rd 2014
... more instances (some customized, some not) ...
Instance #50 - 9 PM on August 1st 2014 (customized instance)
In those cases, we do not have access to the recurrence pattern from the Source system, and so set a default recurrence (yearly recurrence). We then make each instance part of the same series and position it at the correct time. Even though the recurrence pattern is incorrect, all instances are positioned correctly and the recurring series can be managed as a whole (i.e., can cancel the entire series instead of having to manage each instance separately).