I followed the Core Data tutorial at
http://macresearch.org/cocoa-scientists-part-xxiii-itunes-ifying-core-data-app
The finished application displays data in an NSTableView. Is the ordering of the data persistent as well? And is there a way that you can allow drag and drop rearrangements to the order of the records? I am thinking about something that resembles how iTunes allows you to rearrange songs in a playlist with drag and drop.
Core Data expects you to define your own sorting with NSSortDescriptors, so you’ll have to add your own attribute to track a user-customizable ordering index like that. I’ve had luck using KVO on the entity’s relationship keypath (from within the managed object itself) to change the ordering as needed when new relationship objects are added or removed.
To handle rearrangement, you’ll want to take advantage of NSTableView’s drag and drop methods and reset the order index attribute as needed. The NSTableView documentation should explain it pretty well.