Group
Extension

Matches 35358

OpenAPI-Modern ( E/ET/ETHER/OpenAPI-Modern-0.107.tar.gz, ETHER, 2025; MetaCPAN )
OpenAPI-Modern/lib/JSON/Schema/Modern/Vocabulary/OpenAPI.pm ( view source; MetaCPAN )
use strictures 2;
package JSON::Schema::Modern::Vocabulary::OpenAPI;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema OpenAPI vocabulary

our $VERSION = '0.107';

u
 'smartmatch';
no feature 'switch';
use JSON::Schema::Modern::Utilities qw(assert_keyword_type annotate_self E is_type jsonp);
use namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub voca
return $self->eval_subschema_at_uri($data, $schema,
      { %$state, keyword => $state->{keyword}.jsonp('', 'mapping', $discriminator_value) },
      Mojo::URL->new($mapping =~ /^#/ ? $mapping : '#/co
OpenAPI-Modern ( E/ET/ETHER/OpenAPI-Modern-0.107.tar.gz, ETHER, 2025; MetaCPAN )
OpenAPI-Modern/lib/JSON/Schema/Modern/Document/OpenAPI.pm ( view source; MetaCPAN )
use strictures 2;
package JSON::Schema::Modern::Document::OpenAPI;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: One OpenAPI v3.1 or v3.2 document
# KEYWORDS: JSON Schema data validation request 
" >= 5.041009, feature => 'smartmatch';
no feature 'switch';
use JSON::Schema::Modern::Utilities qw(E canonical_uri jsonp is_equal json_pointer_type assert_keyword_type assert_uri_reference);
use Open
ace::clean;

extends 'JSON::Schema::Modern::Document';

our @CARP_NOT = qw(Sereal Sereal::Decoder JSON::Schema::Modern::Document);

has '+schema' => (
  isa => HashRef,
);

# json pointer => entity na
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/Content.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::Content;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Content vocabulary

our $VERSION = '0.
:Try;
use JSON::Schema::Modern::Utilities qw(is_type A assert_keyword_type E abort);
use namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.o
rg/draft/2019-09/vocab/content' => 'draft2019-09',
  'https://json-schema.org/draft/2020-12/vocab/content' => 'draft2020-12';
}

sub evaluation_order ($class) { 4 }

sub keywords ($class, $spec_versio
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/MetaData.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::MetaData;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Meta-Data vocabulary

our $VERSION = 
witch';
use JSON::Schema::Modern::Utilities qw(assert_keyword_type annotate_self);
use namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.org
/draft/2019-09/vocab/meta-data' => 'draft2019-09',
  'https://json-schema.org/draft/2020-12/vocab/meta-data' => 'draft2020-12';
}

sub evaluation_order ($class) { 5 }

sub keywords ($class, $spec_vers
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/Unevaluated.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::Unevaluated;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Unevaluated vocabulary

our $VERSI

use JSON::Schema::Modern::Utilities qw(is_type jsonp local_annotations E A abort true);
use namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-sche
ies})) {
      next if $schema->{unevaluatedProperties};
      $valid = E({ %$state, data_path => jsonp($state->{data_path}, $property) },
        'additional property not permitted');
    }
    else 
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/Applicator.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::Applicator;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Applicator vocabulary

our $VERSION
 JSON::Schema::Modern::Utilities qw(is_type jsonp E A assert_keyword_type assert_pattern true is_elements_unique);
use JSON::Schema::Modern::Vocabulary::Unevaluated;
use namespace::clean;

with 'JSON:
Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.org/draft/2019-09/vocab/applicator' => 'draft2019-09',
  'https://json-schema.org/draft/2020-12/vocab/applicator' => 'draft2020-1
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/FormatAnnotation.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::FormatAnnotation;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Format-Annotation vocabulary
rtmatch';
no feature 'switch';
use Feature::Compat::Try;
use JSON::Schema::Modern::Utilities qw(A E assert_keyword_type get_type);
use JSON::Schema::Modern::Vocabulary::FormatAssertion;
use if "$]" < 
namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.org/draft/2019-09/vocab/format' => 'draft2019-09',
  'https://json-schema.org/draft/2020-1
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/FormatAssertion.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::FormatAssertion;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Format-Assertion vocabulary

o
'bareword_filehandles';
no if "$]" >= 5.041009, feature => 'smartmatch';
no feature 'switch';
use JSON::Schema::Modern::Utilities qw(get_type E A assert_keyword_type abort);
use Feature::Compat::Try;
calar::Util 'looks_like_number';
use namespace::clean;

with 'JSON::Schema::Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.org/draft/2020-12/vocab/format-assertion' => 'draft20
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/Validation.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::Validation;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Validation vocabulary

our $VERSION
JSON::Schema::Modern::Utilities qw(is_type get_type is_bignum is_equal is_elements_unique E assert_keyword_type assert_pattern jsonp sprintf_num);
use Math::BigFloat;
use namespace::clean;

with 'JSON
Modern::Vocabulary';

sub vocabulary ($class) {
  'https://json-schema.org/draft/2019-09/vocab/validation' => 'draft2019-09',
  'https://json-schema.org/draft/2020-12/vocab/validation' => 'draft2020-1
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary/Core.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary::Core;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Implementation of the JSON Schema Core vocabulary

our $VERSION = '0.623';
_plain_hashref';
use JSON::Schema::Modern::Utilities qw(is_type abort assert_keyword_type canonical_uri E assert_uri_reference assert_uri jsonp);
use namespace::clean;

with 'JSON::Schema::Modern::Voc
abulary';

sub vocabulary ($class) {
  'https://json-schema.org/draft/2019-09/vocab/core' => 'draft2019-09',
  'https://json-schema.org/draft/2020-12/vocab/core' => 'draft2020-12';
}

sub evaluation_o
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Error.pm ( view source; MetaCPAN )
kage JSON::Schema::Modern::Error;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Contains a single error from a JSON Schema evaluation

our $VERSION = '0.623';

use 5.020;
use Moo;
with 'JSON::Sch
head1 NAME

JSON::Schema::Modern::Error - Contains a single error from a JSON Schema evaluation

=head1 VERSION

version 0.623

=head1 SYNOPSIS

  use JSON::Schema::Modern;
  my $js = JSON::Schema::Mo
ocation;

  my $errors_encoded = encode_json(\@errors);

=head1 DESCRIPTION

An instance of this class holds one error from evaluating a JSON Schema with
L<JSON::Schema::Modern>.

=head1 ATTRIBUTES

=
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Vocabulary.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Vocabulary;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Base role for JSON Schema vocabulary classes

our $VERSION = '0.623';

use 5.020;
Util 0.100 'is_plain_arrayref';
use JSON::Schema::Modern::Utilities qw(jsonp assert_keyword_type abort);
use Carp ();
use namespace::clean;

our @CARP_NOT = qw(JSON::Schema::Modern);

requires qw(voca
}->_traverse_subschema($schema->{$state->{keyword}}{$property},
      +{ %$state, keyword_path => jsonp($state->{keyword_path}, $state->{keyword}, $property) });
  }
  return $valid;
}

sub traverse_p
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Annotation.pm ( view source; MetaCPAN )
JSON::Schema::Modern::Annotation;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Contains a single annotation from a JSON Schema evaluation

our $VERSION = '0.623';

use 5.020;
use Moo;
with 'JSON
ny;
use Types::Standard 'Bool';
use Carp 'croak';
use namespace::clean;

# https://json-schema.org/draft/2019-09/json-schema-core.html#rfc.section.7.7.1
has annotation => (
  is => 'ro',
  required =>
 NAME

JSON::Schema::Modern::Annotation - Contains a single annotation from a JSON Schema evaluation

=head1 VERSION

version 0.623

=head1 SYNOPSIS

  use JSON::Schema::Modern;
  my $js = JSON::Schem
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Document.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Document;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: One JSON Schema document

our $VERSION = '0.623';

use 5.020;
use Moo;
use strictur
:Common::Numeric 'PositiveOrZeroInt';
use JSON::Schema::Modern::Utilities qw(json_pointer_type canonical_uri_type);
use namespace::clean;

extends 'Mojo::JSON::Pointer';

has schema => (
  is => 'ro',
 be defined in a subclass
);

# "A JSON Schema resource is a schema which is canonically identified by an absolute URI."
# https://json-schema.org/draft/2020-12/json-schema-core.html#rfc.section.4.3.5
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/Utilities.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::Utilities;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Internal utilities for JSON::Schema::Modern

our $VERSION = '0.623';

use 5.020;
u
calar::Util 'looks_like_number';
use Storable 'dclone';
use Feature::Compat::Try;
use Mojo::JSON ();
use JSON::PP ();
use Types::Standard qw(Str InstanceOf);
use namespace::clean;

use Exporter 'impor
qw(
  is_type
  get_type
  is_bool
  is_schema
  is_bignum
  is_equal
  is_elements_unique
  jsonp
  unjsonp
  local_annotations
  canonical_uri
  E
  A
  abort
  assert_keyword_exists
  assert_keywor
JSON-Schema-Validate ( J/JD/JDEGUEST/JSON-Schema-Validate-v0.5.1.tar.gz, JDEGUEST, 2025; MetaCPAN )
JSON-Schema-Validate/lib/JSON/Schema/Validate.pm ( view source; MetaCPAN )
##----------------------------------------------------------------------------
## JSON Schema Validator - ~/lib/JSON/Schema/Validate.pm
## Version v0.5.1
## Copyright(c) 2025 DEGUEST Pte. Ltd.
## Auth
-------------
package JSON::Schema::Validate;
BEGIN
{
    use strict;
    use warnings;
    use warnings::register;
    use vars qw( $VERSION $DEBUG );
    use B ();
    use JSON ();
    use Scalar::U
.
    if( $self->{normalize_instance} )
    {
        my $json = JSON->new->allow_nonref(1)->canonical(1);
        $data = $json->decode( $json->encode( $data ) );
    }

    return( $self->_prune_wit
Test-JSON-Schema-Acceptance ( E/ET/ETHER/Test-JSON-Schema-Acceptance-1.034.tar.gz, ETHER, 2025; MetaCPAN )
Test-JSON-Schema-Acceptance/lib/Test/JSON/Schema/Acceptance.pm ( view source; MetaCPAN )
;
use warnings;
package Test::JSON::Schema::Acceptance; # git description: v1.033-8-g1a305c6
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Acceptance testing for JSON-Schema based validators

our
tch';
use Test2::API ();
use Test2::Todo;
use Test2::Tools::Compare ();
use Mojo::JSON ();  # for JSON_XS, MOJO_NO_JSON_XS environment variables
use File::ShareDir 'dist_dir';
use Feature::Compat::Try
s://json-schema.org/v1',
  'draft2020-12'  => 'https://json-schema.org/draft/2020-12/schema',
  'draft2019-09'  => 'https://json-schema.org/draft/2019-09/schema',
  'draft7'        => 'http://json-sch
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern.pm ( view source; MetaCPAN )
s;
package JSON::Schema::Modern; # git description: v0.622-7-gee615857
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Validate data against a schema using a JSON Schema
# KEYWORDS: JSON Schema val
;
no if "$]" >= 5.041009, feature => 'smartmatch';
no feature 'switch';
use Mojo::JSON ();  # for JSON_XS, MOJO_NO_JSON_XS environment variables
use Carp qw(croak carp);
use List::Util 1.55 qw(pairs f
y;
use JSON::Schema::Modern::Error;
use JSON::Schema::Modern::Result;
use JSON::Schema::Modern::Document;
use JSON::Schema::Modern::Utilities qw(get_type canonical_uri E abort annotate_self jsonp is_t
JSON-Schema-Modern ( E/ET/ETHER/JSON-Schema-Modern-0.623.tar.gz, ETHER, 2025; MetaCPAN )
JSON-Schema-Modern/lib/JSON/Schema/Modern/ResultNode.pm ( view source; MetaCPAN )
use strict;
use warnings;
package JSON::Schema::Modern::ResultNode;
# vim: set ts=8 sts=2 sw=2 tw=100 et :
# ABSTRACT: Common code for nodes of a JSON::Schema::Modern::Result

our $VERSION = '0.623';
eOrZeroInt';
use JSON::Schema::Modern::Utilities qw(jsonp json_pointer_type);
use namespace::clean;

has [qw(
  instance_location
  keyword_location
)] => (
  is => 'ro',
  isa => json_pointer_type,
 
   my $uri = $initial_schema_uri->clone;
      my $fragment = ($uri->fragment//'').(@extra_path ? jsonp($keyword_path, @extra_path) : $keyword_path);
      undef $fragment if not length($fragment);
  
MOP4Import-Declare ( H/HK/HKOBA/MOP4Import-Declare-0.071.tar.gz, HKOBA, 2025; MetaCPAN )
MOP4Import-Declare/Base/JSON.pm ( view source; MetaCPAN )
t::Base::JSON;
use strict;
use warnings;
use constant DEBUG => $ENV{DEBUG_MOP4IMPORT};

use MOP4Import::Base::Configure -as_base;

use JSON::MaybeXS;
use constant USING_CPANEL_JSON_XS => JSON()->isa("
ly works with Cpanel::JSON::XS. JSON::XS prohibits use of restricted hash.
sub TO_JSON {
  my ($self) = @_;
  +{map(($_ => $self->{$_}), grep {!/^_/} keys %$self)}
}

sub cli_json_type {
  (my MY $sel
f->cli_json_type_of($self);
}

sub cli_json_type_of {
  (my MY $self, my $objOrTypeName) = @_;
  $self->JSON_TYPE_HANDLER->lookup_json_type(ref $objOrTypeName || $objOrTypeName);
}

sub cli_json_encod

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