Throughout this chapter, we learned how to differentiate the three types of Magento models: non-persistable, persistable simple, and persistable EAV. The inners of EAV models are left out of scope due to their inherently complex nature. We then took a look through six different setup scripts. These give us a great deal of flexibility over schema and data management. Combined with extension attributes, we get a powerful mechanism for extending built-in entities. Though somewhat tedious, the extension attributes mechanism use of interfaces ensures that integrators can extend this built-in functionality with complex data types.
Moving forward, we are going to take a look at the powerful web API that's implemented in Magento.