semantic validation