NAME
JSON::Structure - JSON Structure validation library for Perl
SYNOPSIS
use JSON::Structure qw(:all);
use JSON::MaybeXS;
# Validate a schema
my $schema = decode_json($schema_json);
my $validator = JSON::Structure::SchemaValidator->new();
my $result = $validator->validate($schema, $schema_json);
if ($result->is_valid) {
say "Schema is valid!";
} else {
for my $error (@{$result->errors}) {
say $error->to_string;
}
}
# Validate an instance against a schema
my $instance_validator = JSON::Structure::InstanceValidator->new(schema => $schema);
my $instance = decode_json($instance_json);
my $result = $instance_validator->validate($instance, $instance_json);
DESCRIPTION
This module provides validators for JSON Structure schemas and instances, conforming to the JSON Structure Core specification.
JSON Structure is a type-oriented schema language for JSON, designed for defining data structures that can be validated and mapped to programming language types.
FUNCTIONS
validate_schema($schema, $source_text)
Convenience function to validate a JSON Structure schema.
my $result = validate_schema($schema, $schema_json);
validate_instance($instance, $schema, $source_text)
Convenience function to validate a JSON instance against a schema.
my $result = validate_instance($instance, $schema, $instance_json);
SEE ALSO
AUTHOR
JSON Structure Project
LICENSE
MIT License