Nie znam, pewnie jakbym poszukał to bym coś wartościowego znalazł ale nie mam zbytnio czasu. Jak ci zależy to poszukaj i wrzuć linki do repo tutaj - ocenimy.
Pytanie moje jest inne, po co ci ten osobny model? Jaki problem próbujesz rozwiązać? Czy chcesz zaspokoić swoją ciekawość i poznać taką architekturę aby w przyszłości ją kiedyś wykorzystać, czy chcesz jej użyć w swoim projekcie?
Jeśli to pierwsze to spoko - baw i ucz się. Jeśli drugie napisz konkretnie w czym ten osobny model miałby ci pomóc i jaki problem w twoim projekcie miałby rozwiązać.
Osobiście takie podejście zastosowałem w komercyjnym projekcie tylko raz, gdy pewien moduł, który robiliśmy, miał logikę, której nie dało się łatwo zamodelować w klasyczny sposób mapując tabele z bazy danych na encje biznesowe, a nie mieliśmy możliwości użycia bazy nierelacyjnej, która by bardziej pasowała plus nie chcieliśmy kisić logiki w serwajsach, tylko mieć Ricz Domejn Model.
Albo inaczej, nie chcieliśmy wprowadzać drugiej bazy, żeby nie dodawać sobie nowych problemów związanych z synchronizacją danych, spójnością i tego typu rzeczami. Dlatego zrobiliśmy dwa modele i nawet to działało. Ale co ważne takie rozwiązanie występowało tylko w tym jednym module/kontekście biznesowym. Gdyby cała aplikacja była zaprojektowana i napisana w sposób, który wymuszałby stosowanie dwóch osobnych modeli wszędzie w każdym module/kontekście, to byłby to dramat, taka sztuka dla sztuki. Niby można by tak zrobić całą aplikację, tylko po co? Jak w pozostałych modułach to byłoby w większości mapowanie z Customer.Name
na CustomerEntity.Name
I to jedyny powód dla którego rozważałbym dwa modele, czyli sytuacja, gdy mechanizm persystencji ma inny model niż wynika to z logiki biznesowej. Do całej reszty wystarczy model domenowy mapowany za pomocą konfiguracji ORM-a na tabele w bazie danych.