data-driven validation