<commit_before>{{#template name="ComparisonValidators"}}
**email**

```js
Validators.email();
```

The `email` validator doesn't take any options as the first argument and its function is to check whether a value of the field is a string with a valid email address.

```js
// Example:
validators: {
  email: Validators.email()
}
```

**choice**

```js
Validators.choice(choices);
```

The `choice` validator takes a list of valid values as the first argument and its function is to check whether a value of the field is one of them.

```js
// Example:
validators: {
  sex: Validators.choice(['male', 'female'])
}
```

**unique**

```js
Validators.unique();
```

The `unique` validator doesn't take any options as the first argument and its function is to check whether a value of the field is unique.

```js
// Example:
validators: {
  // Each document has to have unique email address.
  email: Validators.unique()
}
```

*NOTICE: The `unique` validator should be used on the server because on the client we can be subscribed to not entire set of documents and checking uniqueness in such situation may not be reliable.*

**equal**

```js<commit_msg>Wording Edit for Unique and note for current usage.<commit_after>{{#template name="ComparisonValidators"}}
**email**

```js
Validators.email();
```

The `email` validator doesn't take any options as the first argument and its function is to check whether a value of the field is a string with a valid email address.

```js
// Example:
validators: {
  email: Validators.email()
}
```

**choice**

```js
Validators.choice(choices);
```

The `choice` validator takes a list of valid values as the first argument and its function is to check whether a value of the field is one of them.

```js
// Example:
validators: {
  sex: Validators.choice(['male', 'female'])
}
```

**unique**

```js
Validators.unique();
```

The `unique` validator takes no arguments and checks whether the value of the field is unique.<br>[Note: Currently, `unique` should  only be used to validate top level fields.  It will not successfully invalidate a nested field.]


```js
// Example:
validators: {
  // Each document has to have unique email address.
  email: Validators.unique()
}
```

*NOTICE: The `unique` validator should be used on the server because on the client we can be subscribed to not entire set of documents and checking uniqueness in such situation may not be reliable.*

**equal**

```js
{'fraction_non_alphanumeric': 0.11513157894736842, 'fraction_numerical': 0.0, 'mean_word_length': 4.418708240534521, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5753687', 'n_tokens_mistral': 717, 'n_tokens_neox': 676, 'n_words': 329}