#15: data validation