optional don't validate for empty string.