create domain classes and generate