Is it an ORM?
Contain is NOT an ORM. The project’s philosophy is to give you all the advantages of a rich data model you typically get from an ORM without the need for an ORM. This makes Contain ideal for projects:
- Performance is of the utmost importance (ORMs can be expensive, see: Performance)
- Have little CRUD and are read/join heavy
That being said, there are ORMs available for Contain. It’s even possible to integrate Contain models with an ORM like Doctrine2.