skillfed

jschon

A JSON toolkit for Python developers.

jschon v0.11.1 340.1K downloads/30d#7,416 on PyPI142
Permissive license MIT Abandoned released

What it is and what it does

jschon is a JSON Schema validator and toolkit for Python that implements drafts 2019-09 and 2020-12 of the JSON Schema specification. It compiles and indexes schemas, loads $ref definitions from local and remote sources, and supports custom keywords, vocabularies, and meta-schemas. Beyond validation, it provides a JSON data model and implements RFC 6901 (JSON Pointer), RFC 6902 (JSON Patch), and a draft specification for Relative JSON Pointer.

The package is designed for developers who need to validate JSON against schemas and perform structured JSON transformations. It depends only on rfc3986 for URI handling and installs with low friction. However, the repository is archived and abandoned, with the last release in October 2023, which means no active maintenance or bug fixes should be expected going forward.

Use it for:

  • Validate incoming JSON payloads against a schema before processing in web APIs or data pipelines.
  • Compile and reuse JSON schemas for repeated validation of similar data structures.
  • Apply JSON Patch operations to modify JSON documents in a standardized way.
  • Navigate and reference parts of JSON documents using JSON Pointer syntax.
  • Implement custom validation keywords or vocabularies for domain-specific schema requirements.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Validates JSON data against JSON Schema (drafts 2019-09 and 2020-12) and provides tools for JSON manipulation including Pointer, Patch, and Relative Pointer operations.

Yes, if you need a JSON Schema validator for drafts 2019-09 or 2020-12 and can accept that the project is no longer maintained. The package is stable, has no known vulnerabilities, and installs cleanly with minimal dependencies. However, do not adopt it for new projects requiring active maintenance or future compatibility updates—consider an actively maintained alternative if long-term support is critical.

Install

jschon on PyPI

pip

pip install jschon

uv

uv add jschon

poetry

poetry add jschon

Installing jschon

Before you install

Low friction install with a single runtime dependency (rfc3986). However, the repository is archived and marked abandoned as of the latest commit, with no releases since 2023-10-22, which may affect long-term maintenance and support.

License in practice

MIT license is permissive and poses no restrictions on commercial or private use, modification, or redistribution.

Quickstart

pip install jschon

from jschon import create_catalog, JSON, JSONSchema

create_catalog('2020-12')
schema = JSONSchema({"type": "string"})
result = schema.evaluate(JSON("hello"))
print(result.output('basic'))

Requires Python 3.8 or later. For remote $ref support, requests library must be installed separately via pip install jschon[requests].

Verify before relying

  • Whether the abandoned status and lack of recent releases affect real-world reliability or compatibility with current Python tooling.
  • Performance characteristics when validating large or deeply nested JSON documents.
  • Whether custom keyword and vocabulary support covers the specific meta-schemas your project requires.

Package facts

License MIT (permissive)
Python support supports the current Python release (~=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 1 — rfc3986
Maintenance abandoned — 1,027 days since the last release
Last repo commit (repository archived)
First released
Downloads 340,063/month — #7,416 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jschon-0.11.1-py3-none-any.whl

Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules

Tags

json schema validatorjson schema validationjson pointer patchjson data validationrfc 6901 6902json schema draft 2020-12json toolkit
json-schemavalidationdata-format

More Libraries packages