use schema rather than constraints