Я только что заметил, что каждое ограничение уникальности в CoreData может иметь несколько атрибутов (запятая, разделенные, свойства). Я на самом деле не знаю, что значит иметь несколько атрибутов в одном ограничении. Означает ли это, что если какой-либо из них уникален, то ограничение не нарушается? Документация Apple не особенно полезна:
Ограничения: После добавления атрибутов, как показано в разделе «Настройка атрибутов», при необходимости введите имя атрибута (или разделенный запятыми список атрибутов), который будет служить уникальным ограничением для объекта.