Define the Data layer - Database

Why only the Animal model not extends CoreDataPersistable? , and the another model like : Contact ,… model can be extends CoreDataPersistable and why that member of Contact init with var properties?