API Reference jsonschex v#0.5.0

Copy Markdown View Source

Modules

JSON Schema Draft 2020-12 validator for Elixir.

Transforms raw JSON Schema maps into executable Schema structs.

Handles compilation of ECMA-262 regular expressions for use in Elixir/PCRE.

Pure predicates for JSON Schema validation constraints.

Validates numbers against the JSON Schema multipleOf rule. Handles arbitrary precision if Decimal is available. Falls back to native arithmetic with overflow protection if not.

Draft 2020-12 dialect helpers for built-in dialect recognition and $vocabulary resolution.

Provides built-in JSON Schema resources bundled directly in the module.

Maps JSON Schema keywords to their Draft 2020-12 vocabulary URIs and defines both the full supported vocabulary set and the built-in Draft 2020-12 default active vocabulary set.

Formats JSONSchex.Types.Error structs into human-readable strings.

Implements validation logic for the 'format' keyword.

Validates RFC 3339 date-time and time formats.

Validates email format according to RFC 5322 (Addr-Spec). Includes support for quoted strings in local part and IP literals in domain.

Validates "hostname" format according to RFC 1123.

Validates ipv4 and ipv6 formats.

Validates regex format according to strict ECMA-262.

Validates uri-template format according to RFC 6570.

Scans a raw schema tree to discover all $id, $anchor, and $dynamicAnchor definitions, resolving them against parent base URIs to build a registry of absolute URI → raw schema mappings.

Defines the core data structures used by JSONSchex.

An error encountered during validation or schema compilation.

Structured detail carried by JSONSchex.Types.Error.

A single compiled validation step.

A compiled JSON Schema, containing executable validation rules and a definition registry for reference resolution.

Lightweight runtime context threaded through validation.

Utilities for URI resolution and manipulation.

Executes compiled Schema rules against data, accumulating errors and tracking evaluated keys for unevaluatedProperties/unevaluatedItems.

Runtime validation functions for complex JSON Schema keywords.

Resolves $ref and $dynamicRef during validation, including remote schema loading and JIT compilation of JSON Pointer references.