Group
Extension

Matches 14

JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator.pm ( view source; MetaCPAN )
kage JSONSchema::Validator;

# ABSTRACT: Validator for JSON Schema Draft4/Draft6/Draft7 and OpenAPI Specification 3.0

use strict;
use warnings;
use URI::file;
use Carp 'croak';
use Cwd;

use JSONSche
ma::Validator::Draft4;
use JSONSchema::Validator::Draft6;
use JSONSchema::Validator::Draft7;
use JSONSchema::Validator::OAS30;
use JSONSchema::Validator::Util qw(get_resource decode_content read_file)
ONS = {
    JSONSchema::Validator::OAS30::ID => JSONSchema::Validator::OAS30::SPECIFICATION,
    JSONSchema::Validator::Draft4::ID => JSONSchema::Validator::Draft4::SPECIFICATION,
    JSONSchema::Vali
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Constraints/Draft7.pm ( view source; MetaCPAN )
age JSONSchema::Validator::Constraints::Draft7;

# ABSTRACT: JSON Schema Draft7 specification constraints

use strict;
use warnings;

use JSONSchema::Validator::JSONPointer 'json_pointer';
use JSONSch
ema::Validator::Error 'error';
use JSONSchema::Validator::Util qw(is_type serialize unbool);

use parent 'JSONSchema::Validator::Constraints::Draft6';

sub if {
    my ($self, $instance, $if, $schema,
  return 1 unless exists $schema->{then};
        my $then = $schema->{then};
        my $spath = json_pointer->append($schema_path, 'then');
        return $self->validator->_validate_schema($instanc
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Format.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Format;

# ABSTRACT: Formats of JSON Schema specification

use strict;
use warnings;
use Time::Piece;

use Scalar::Util 'looks_like_number';

our @ISA = 'Exporter';
our 
 validate_int64
    validate_float validate_double
    validate_regex
    validate_json_pointer validate_relative_json_pointer
    validate_uri validate_uri_reference
    validate_iri validate_iri_ref
m) >= 0;
    return 1 if $sign < 0 && (($abs . '8') cmp $num) >= 0;
    return 0;
}

sub validate_json_pointer {
    # from rfc6901:
    # CORE::state $pointer_regexp = do {
    #     my $escaped = qr
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/OAS30.pm ( view source; MetaCPAN )
package JSONSchema::Validator::OAS30;

# ABSTRACT: Validator for OpenAPI Specification 3.0

use strict;
use warnings;
use Carp 'croak';

use JSONSchema::Validator::JSONPointer;
use JSONSchema::Validat
or::Error 'error';
use JSONSchema::Validator::Constraints::OAS30;
use JSONSchema::Validator::URIResolver;
use JSONSchema::Validator::Util 'json_decode';

use parent 'JSONSchema::Validator::Draft4';

u
deprecated} // 1;
    $self->{validate_deprecated} = $validate_deprecated;

    my $constraints = JSONSchema::Validator::Constraints::OAS30->new(validator => $self, strict => $params{strict} // 0);
  
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Error.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Error;

# ABSTRACT: Error class

use strict;
use warnings;

use overload
    '""' => sub { $_[0]->to_string },
    fallback => 1;

our @ISA = 'Exporter';
our @EXPORT_OK 
ng_list}) {
            push @$res, "$msg: $err_str";
        }
    }

    return $res;
}

sub TO_JSON {
    my $self = shift;
    my $res = {
        message => $self->message
    };

    $res->{inst
ext} = [
            map { $_->TO_JSON }
            @{$self->context}
            ];
    }

    return $res;
}

1;

__END__

=pod

=encoding UTF-8

=head1 NAME

JSONSchema::Validator::Error - Error c
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Draft7.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Draft7;

# ABSTRACT: Validator for JSON Schema Draft7

use strict;
use warnings;

use JSONSchema::Validator::Constraints::Draft7;

use parent 'JSONSchema::Validator::Dra
 => 'http://json-schema.org/draft-07/schema#';
use constant ID_FIELD => '$id';

sub new {
    my ($class, %params) = @_;

    my $self = $class->create(%params);

    my $constraints = JSONSchema::Val
d

=encoding UTF-8

=head1 NAME

JSONSchema::Validator::Draft7 - Validator for JSON Schema Draft7

=head1 VERSION

version 0.011

=head1 SYNOPSIS

    $validator = JSONSchema::Validator::Draft7->new(s
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Draft6.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Draft6;

# ABSTRACT: Validator for JSON Schema Draft6

use strict;
use warnings;

use JSONSchema::Validator::Constraints::Draft6;

use parent 'JSONSchema::Validator::Dra
 => 'http://json-schema.org/draft-06/schema#';
use constant ID_FIELD => '$id';

sub new {
    my ($class, %params) = @_;

    my $self = $class->create(%params);

    my $constraints = JSONSchema::Val
d

=encoding UTF-8

=head1 NAME

JSONSchema::Validator::Draft6 - Validator for JSON Schema Draft6

=head1 VERSION

version 0.011

=head1 SYNOPSIS

    $validator = JSONSchema::Validator::Draft6->new(s
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/URIResolver.pm ( view source; MetaCPAN )
package JSONSchema::Validator::URIResolver;

# ABSTRACT: URI resolver

use strict;
use warnings;
use Carp 'croak';

use Scalar::Util 'weaken';

use URI;
use URI::Escape;
use Encode;

use JSONSchema::V
alidator::JSONPointer 'json_pointer';
use JSONSchema::Validator::Util qw(get_resource decode_content);

# what keys contain the schema? Required to find an $id in a schema
my $SEARCH_ID = {
    value 
;

    my $pointer = json_pointer->new(
        scope => $uri->as_string,
        value => $schema,
        validator => $self->validator
    );

    # try to use fragment as json pointer
    $pointer
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Constraints/Draft6.pm ( view source; MetaCPAN )
age JSONSchema::Validator::Constraints::Draft6;

# ABSTRACT: JSON Schema Draft6 specification constraints

use strict;
use warnings;

use JSONSchema::Validator::JSONPointer 'json_pointer';
use JSONSch
ema::Validator::Error 'error';
use JSONSchema::Validator::Util qw(is_type serialize unbool);

use parent 'JSONSchema::Validator::Constraints::Draft4';

# params: $self, $value, $type, $strict
sub chec
($instance, 'object');

    my $result = 1;
    for my $p (keys %$instance) {
        my $ipath = json_pointer->append($instance_path, $p);
        my $r = $self->validator->_validate_schema($p, $prop
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Constraints/Draft4.pm ( view source; MetaCPAN )
age JSONSchema::Validator::Constraints::Draft4;

# ABSTRACT: JSON Schema Draft4 specification constraints

use strict;
use warnings;
use Scalar::Util 'weaken';
use URI;
use Carp 'croak';

use JSONSche
:Validator::Error 'error';
use JSONSchema::Validator::JSONPointer 'json_pointer';
use JSONSchema::Validator::Util qw(serialize unbool round is_type detect_type);
use JSONSchema::Validator::Format qw(
 validate_int64
    validate_float validate_double
    validate_regex
    validate_json_pointer validate_relative_json_pointer
    validate_uri validate_uri_reference
    validate_iri validate_iri_ref
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Constraints/OAS30.pm ( view source; MetaCPAN )
age JSONSchema::Validator::Constraints::OAS30;

# ABSTRACT: OpenAPI 3.0 specification constraints

use strict;
use warnings;
use URI;
use Carp 'croak';

use JSONSchema::Validator::JSONPointer 'json_po
inter';
use JSONSchema::Validator::Error 'error';
use JSONSchema::Validator::Util 'detect_type';

use parent 'JSONSchema::Validator::Constraints::Draft4';

sub type {
    my ($self, $instance, $type, 
= 1;
    for my $i (0 .. $#{$instance}) {
        my $item = $instance->[$i];
        my $ipath = json_pointer->append($instance_path, $i);
        my $r = $self->validator->_validate_schema($item, $i
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Util.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Util;

# ABSTRACT: Useful functions

use strict;
use warnings;

use URI 1.00;
use File::Basename;
use B;
use Carp 'croak';

use Scalar::Util 'looks_like_number';

our @I
SA = 'Exporter';
our @EXPORT_OK = qw(
    json_encode json_decode user_agent_get serialize unbool
    round read_file is_type detect_type get_resource decode_content
    data_section
);

use constant 
IX_TO_MIME_TYPE => {
    'yaml' => 'text/vnd.yaml',
    'yml' => 'text/vnd.yaml',
    'json' => 'application/json'
};

use constant TYPE_MAP => {
    'array' => \&is_array,
    'boolean' => \&is_bool,
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/JSONPointer.pm ( view source; MetaCPAN )
package JSONSchema::Validator::JSONPointer;

# ABSTRACT: JSON Pointer with URI resolving

use strict;
use warnings;
use URI;
use Carp 'croak';

use Scalar::Util 'weaken';

use overload
    'bool' => s
ub { $_[0]->value },
    fallback => 1;

our @ISA = 'Exporter';
our @EXPORT_OK = qw(json_pointer);

sub json_pointer {
    return __PACKAGE__;
}

sub append {
    my ($class, $path, @values) = @_;
   
e, $validator) = @params{qw/scope value validator/};

    croak 'JSONPointer: scope is required' unless defined $scope;
    croak 'JSONPointer: validator is required' unless $validator;

    weaken($v
JSONSchema-Validator ( P/PU/PUTINTSEV/JSONSchema-Validator-0.011.tar.gz, PUTINTSEV, 2022; MetaCPAN )
JSONSchema-Validator/lib/JSONSchema/Validator/Draft4.pm ( view source; MetaCPAN )
package JSONSchema::Validator::Draft4;

# ABSTRACT: Validator for JSON Schema Draft4

use strict;
use warnings;
use URI;
use Carp 'croak';

use JSONSchema::Validator::Error 'error';
use JSONSchema::Va
lidator::JSONPointer 'json_pointer';
use JSONSchema::Validator::Constraints::Draft4;
use JSONSchema::Validator::URIResolver;
use JSONSchema::Validator::Util qw(is_type);

use constant SPECIFICATION =>
 'Draft4';
use constant ID => 'http://json-schema.org/draft-04/schema#';
use constant ID_FIELD => 'id';

sub create {
    my ($class, %params) = @_;

    croak 'schema is required' unless exists $para

Powered by Groonga
Maintained by Kenichi Ishigaki <ishigaki@cpan.org>. If you find anything, submit it on GitHub.