3rd chapter: data validation