+=over 4
+
+item C<CC>
+
+Simple Luhn-10 check. Note that spaces and dashes are left in place.
+
+=item C<EMAIL>
+
+Very basic check to see if the value looks like an address. The local part
+must only contain [\w.~!\#\$%\^&*\-=+?] and the domain must be a domain or ip.
+If you want full fledged RFC compliant checking consider something like:
+
+ {
+ field => 'email',
+ custom => sub {
+ my ($key, $val, $fv, $type, $form) = @_;
+ require Mail::Address;
+ my @a = Mail::Address->parse($val);
+ die "Invalid address\n" if @a != 1;
+ return $form->{$key} = $a[0]->address;
+ },
+ }
+
+=item C<DOMAIN>
+
+Checks for a valid domain name - does no lookup of the domain. For that use
+a custom sub.
+
+=item C<IP>
+
+Basic IPv4 check.
+
+=item C<URL>
+
+Basic check that string matches something resembling an http or https url.
+
+=item C<INT>
+
+Checks for an integer between -2147483648 and -2147483648
+
+=item C<UINT>
+
+Checks for an unsigned integer between 0 and 4294967295.
+
+=item C<NUM>
+
+Checks for something that looks like a number. Scientic notation is not allowed. No range enforced.
+
+=back
+