more validations including robust ID number validation