Provided by: libjson-validator-perl_5.10+dfsg-1_all bug

NAME

       JSON::Validator::Formats - Functions for validating JSON schema formats

SYNOPSIS

         use JSON::Validator::Formats;
         my $error = JSON::Validator::Formats::check_uri($str);
         die $error if $error;

         my $jv = JSON::Validator->new;
         $jv->formats({
           "date-time"     => JSON::Validator::Formats->can("check_date_time"),
           "email"         => JSON::Validator::Formats->can("check_email"),
           "hostname"      => JSON::Validator::Formats->can("check_hostname"),
           "ipv4"          => JSON::Validator::Formats->can("check_ipv4"),
           "ipv6"          => JSON::Validator::Formats->can("check_ipv6"),
           "regex"         => JSON::Validator::Formats->can("check_regex"),
           "uri"           => JSON::Validator::Formats->can("check_uri"),
           "uri-reference" => JSON::Validator::Formats->can("check_uri_reference"),
         });

DESCRIPTION

       JSON::Validator::Formats is a module with utility functions used by "formats" in
       JSON::Validator to match JSON Schema formats.  All functions return "undef" for success or
       an error message for failure.

FUNCTIONS

   check_byte
         my $str_or_undef = check_byte $str;

       Checks that the string matches byte format.

   check_date
         my $str_or_undef = check_date $str;

       Validates the date part of a RFC3339 string.

   check_date_time
         my $str_or_undef = check_date_time $str;

       Validated against RFC3339 timestamp in UTC time. This is formatted as
       "YYYY-MM-DDThh:mm:ss.fffZ". The milliseconds portion (".fff") is optional

   check_duration
         my $str_or_undef = check_duration $str;

       Validate a RFC3339 duration string, such as "P3Y6M4DT12H30M5S".

   check_double
         my $str_or_undef = check_double $number;

       Tries to check if the number is a double. Note that this check is not very accurate.

   check_email
         my $str_or_undef = check_email $str;

       Validated against the RFC5322 spec.

   check_float
         my $str_or_undef = check_float $number;

       Tries to check if the number is a float. Note that this check is not very accurate.

   check_hostname
         my $str_or_undef = check_hostname $str;

       Will be validated using "is_hostname" in Data::Validate::Domain, if installed.

   check_idn_email
         my $str_or_undef = check_idn_email $str;

       Will validate an email with non-ASCII characters using Net::IDN::Encode if installed.

   check_idn_hostname
         my $str_or_undef = check_idn_hostname $str;

       Will validate a hostname with non-ASCII characters using Net::IDN::Encode if installed.

   check_int32
         my $str_or_undef = check_int32 $number;

       Tries to check if the number is a int32. Note that this check is not very accurate.

   check_int64
         my $str_or_undef = check_int64 $number;

       Tries to check if the number is a int64. Note that this check is not very accurate.

   check_ipv4
         my $str_or_undef = check_ipv4 $str;

       Will be validated using "is_ipv4" in Data::Validate::IP, if installed or fall back to a
       plain IPv4 IP regex.

   check_ipv6
         my $str_or_undef = check_ipv6 $str;

       Will be validated using "is_ipv6" in Data::Validate::IP, if installed.

   check_iri
         my $str_or_undef = check_iri $str;

       Validate either an absolute IRI containing ASCII or non-ASCII characters, against the
       RFC3986 spec.

   check_iri_reference
         my $str_or_undef = check_iri_reference $str;

       Validate either a relative or absolute IRI containing ASCII or non-ASCII characters,
       against the RFC3986 spec.

   check_json_pointer
         my $str_or_undef = check_json_pointer $str;

       Validates a JSON pointer, such as "/foo/bar/42".

   check_regex
         my $str_or_undef = check_regex $str;

       Will check if the string is a regex, using "qr{...}".

   check_relative_json_pointer
         my $str_or_undef = check_relative_json_pointer $str;

       Validates a relative JSON pointer, such as "0/foo" or "3#".

   check_time
         my $str_or_undef = check_time $str;

       Validates the time and optionally the offset part of a RFC3339 string.

   check_uri
         my $str_or_undef = check_uri $str;

       Validate either a relative or absolute URI containing just ASCII characters, against the
       RFC3986 spec.

       Note that this might change in the future to only check absolute URI.

   check_uri_reference
         my $str_or_undef = check_uri_reference $str;

       Validate either a relative or absolute URI containing just ASCII characters, against the
       RFC3986 spec.

   check_uri_template
         my $str_or_undef = check_uri_reference $str;

       Validate an absolute URI with template characters.

   check_uuid
         my $str_or_undef = check_uuid $str;

       Will check if $str looks like an UUID. Example UUID:
       "5782165B-6BB6-472F-B3DD-369D707D6C72".

SEE ALSO

       JSON::Validator.