¿Cómo evitar que Core Data haga duplicados en iOS 5?

Me he encontrado con un problema.

Durante el fin de semana he estado trabajando en un proyecto en el que extraigo un gran xml de un servicio web.

Básicamente tiene 3 niveles: clientes, gerentes, personal, todos jerárquicos. Entonces, la primera vez que se ejecuta la aplicación, extrae este xml y lo analiza y crea todas las entradas en las 3 Entidades publicadas: Clientes, Gerentes y Personal.

Cada vez que se inicia la aplicación, necesito eliminar ese mismo XML, pero esta vez, solo necesito 'actualizar' cualquiera de los registros existentes que han cambiado, o agregar nuevos para nuevos clientes, gerentes o personal que han aparecido desde entonces ultima vez

Así que, en este momento, como dije, está tirando de todo, analizándolo correctamente y creando las entidades correctas y completando todos los atributos.

Sin embargo, sin cambio de datos, en el segundo lanzamiento está DUPLICANDO todos los datos, así que en lugar de 15 clientes (el número correcto) tengo 30 y así sucesivamente ...

¿Realmente tengo que agregar mucho código en mi análisis para verificar que, en lugar de crear un nuevo NSManagedObject, verifique si ya está allí?

Y si es así, ¿tengo que verificar manualmente cada atributo?

Eso es terriblemente doloroso y largo, ¿no hay una manera de hacer que Core Data haga esto por mí automáticamente?

Gracias por cualquier ayuda o sugerencia

Respuestas a la pregunta(4)

Su respuesta a la pregunta