Semantic form validation