title: Core Data Versioning - Multiple mapping models required
body: <p>I have an existing project that uses Core Data, and I have 3 versions within my <code>xcdatamodeld</code> bundle. So far I have only used lightweight migration as I have mostly added new parameters and entities, however I now wish to move an existing parameter into a new entity. I realise that I have to crete a <code>mapping model</code> to do this in order to get the data migrated between the parameters.</p>
  
  <p>I presume there are users out there with very old versions of the app using version 1 of the model, and others using version 2 and 3. </p>
  
  <p>Questions:</p>
  
  <ol>
  <li>Do I need to create a mapping model from all existing versions to the new version, or just from the latest version</li>
  <li><p>Do I need to change/disable the lightweight migration options on my <code>NSPersistentStoreCoordinator</code>? Currently I have the following options enabled:</p>
  
  <p><code>NSMigratePersistentStoresAutomaticallyOption</code><br>
  <code>NSInferMappingModelAutomaticallyOption</code></p></li>
  </ol>
  
  <p>I presume that lightweight migration will still be required to move from v1 to v2 to v3, however the new mapping model is required to go from v3 to v4. I've had a look around, but I can't find any information on how this all happens as most tutorials only cover 2 versions.</p>
  
  <p>Thanks</p>