New internal architecture
Pass object to validate as a parameter
Correct presence validation