---
title: NSEntityMigrationPolicy
framework: coredata
role: symbol
role_heading: Class
path: coredata/nsentitymigrationpolicy
---

# NSEntityMigrationPolicy

A policy instance that customizes the migration process for an entity mapping.

## Declaration

```swift
class NSEntityMigrationPolicy
```

## Overview

Overview You set the policy for an entity mapping by passing the name of the migration policy class as the argument to entityMigrationPolicyClassName. Typically, you specify the name in the Xcode mapping model editor.

## Topics

### Customizing Stages of the Mapping Life Cycle

- [begin(_:with:)](coredata/nsentitymigrationpolicy/begin(_:with:).md)
- [createDestinationInstances(forSource:in:manager:)](coredata/nsentitymigrationpolicy/createdestinationinstances(forsource:in:manager:).md)
- [endInstanceCreation(forMapping:manager:)](coredata/nsentitymigrationpolicy/endinstancecreation(formapping:manager:).md)
- [createRelationships(forDestination:in:manager:)](coredata/nsentitymigrationpolicy/createrelationships(fordestination:in:manager:).md)
- [endRelationshipCreation(forMapping:manager:)](coredata/nsentitymigrationpolicy/endrelationshipcreation(formapping:manager:).md)
- [performCustomValidation(forMapping:manager:)](coredata/nsentitymigrationpolicy/performcustomvalidation(formapping:manager:).md)
- [end(_:manager:)](coredata/nsentitymigrationpolicy/end(_:manager:).md)

### Constants

- [NSMigrationManagerKey](coredata/nsmigrationmanagerkey.md)
- [NSMigrationSourceObjectKey](coredata/nsmigrationsourceobjectkey.md)
- [NSMigrationDestinationObjectKey](coredata/nsmigrationdestinationobjectkey.md)
- [NSMigrationEntityMappingKey](coredata/nsmigrationentitymappingkey.md)
- [NSMigrationPropertyMappingKey](coredata/nsmigrationpropertymappingkey.md)
- [NSMigrationEntityPolicyKey](coredata/nsmigrationentitypolicykey.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Entity Mapping

- [NSMigrationManager](coredata/nsmigrationmanager.md)
- [NSMappingModel](coredata/nsmappingmodel.md)
- [NSEntityMapping](coredata/nsentitymapping.md)
- [NSEntityMappingType](coredata/nsentitymappingtype.md)
- [NSPropertyMapping](coredata/nspropertymapping.md)
