Terminology in Symfony2 and Doctrine2. Record vs Entity vs Document vs Model

This User model is used throughout the bundle but doesn’t have a complete implementation to access its own data (I didn’t look but I think it could be an interface only). The final implementation is done in an entity class and another in a document class so no matter whether you use MySQL or MongoDB you can still work with the same User model. You can even switch from one to the other without changing your code as it always uses the model which is independent from the entity or document.