validation interface