Use more whitespace, and declare more instance variables. Open your code out so you can find your problem easier.
For instance, pull out the value for
result[@"data"][0][@"name"]
and assign it to a local variable of it's own.
Subclass your entity in CoreData, so it's easier to manage attribute assignment with setters and getters.
Then set breakpoints and examine each step of the code.