       try context.saveIfHasChanges()
     }
     
+    /**
+     Helper method to delete metadata for the unique IDs provided in the list.
+     
+     - parameter ids: An array containing unique IDs.
+     
+     - throws: CoreData fetch request error.
+     */
     func deleteMetadataForUniqueIDs(ids: [String]) throws {
       let fetchRequest = NSFetchRequest(entityName: Entity.name)
       fetchRequest.predicate = NSPredicate(inUniqueIDs: ids)

      return entityDescription
    }
  }
  
  // MARK: Properties 
  
  struct Properties {
    struct Data {
      static let name = "data"

import CoreData
import CloudKit

// Metadata is a subclass of NSManagedObject. This class is added to backing store model automatically and used by the backing store to save record metadata received from CloudKit against every CKRecord.
class Metadata: NSManagedObject {
  @NSManaged var entityName: String?
  @NSManaged var data: NSData?
  
  /**
   *  Entity information for Metadata.
   */
  struct Entity {
    static let name = "Seam_Metadata"
    static var entityDescription: NSEntityDescription {
