V principu jde o to, že pracuji např. s třídou reprezentující obrázek. Ta ale vůec nemá žádnou spojitost s DB vrstvou.
Do modelu předávám instanci reprezentující DB tabulku, ale mohl bych tam předat Nette\Database\Context, SQLite, nebo jakékoliv jiné datové úložiště a model mi bude vždy vracet instance mé třídy.
Pouze bych upravil pár metod v modelu.Zbytek celé aplikace (Presentery, šablony, atd. ) je zcela odstíněn od původu dat. 
To mi přijde jako hlavní důvod použítí ORM, abych odstínil datovou vrstvu od zbytku aplikace, která poté vůbec netuší, odkud data přišly - to je věc modelu.
Navíc mám pouze třídy, které skutečně potřebuji. Nevím nic o vazebních tabulkách na pozadí, nebo XML struktuře. 
Při použití Doctrine musím pro každou tabulku tvořit třídu a ta se mi tak proplétá do jiných vrstev a celá aplikace v podstatě stojí na způsobu uložení dat a na Doctrine.