Skip to main content

Schema validation and data structure definition library

Project description

xwschema

Define once, validate everywhere.
xwschema lets you describe schema rules and validate data across different input formats and structures with one consistent validation layer.

You can take schema definitions from common formats (for example JSON-style or XML-style representations), then validate heterogeneous payloads and models without rewriting validation logic per format.

Company: eXonware.com · Author: eXonware Backend Team · Email: connect@exonware.com

Status Python License


📦 Install

pip install exonware-xwschema
pip install exonware-xwschema[lazy]
pip install exonware-xwschema[full]

🚀 Quick start

from exonware.xwschema import *

# Define and validate schemas; pair with xwaction for workflow validation
# See docs/ and REF_* for API and examples

See docs/ for usage, REF_*, and GUIDE_01_USAGE when present.


🎯 Why developers use xwschema

  • Schema portability - keep business validation rules stable while data formats vary.
  • Cross-format validation - validate different payload styles through one schema engine.
  • Extensible model surface - grow new format adapters and schema types without redesigning core validation.
  • Works with your stack - use standalone or pair with xwaction/xwdata workflows.

✨ What you get

Area Contents
Validation Constraint checks and structured errors.
Schema Dynamic composition, evolution, versioning.
Schema catalog DDL-style helpers (create_schema, alter_schema, drop_schema) and apply_migration for evolution; JSON-backed catalog for schema-on-write with xwstorage/XWStorageDb. See docs/REF_15_API.md.
Integration xwaction workflows and other eXonware packages.

Current phase: docs/REF_22_PROJECT.md or docs/.


🌐 Ecosystem functional contributions

xwschema provides validation contracts; sibling libs define where those contracts are applied in real systems. You can use xwschema standalone for schema definition and validation in any Python project. Integrating with the wider XW platform is optional and most useful for enterprise and mission-critical environments where validation must stay consistent across self-managed services.

Supporting XW lib What it provides to xwschema usage Functional requirement it satisfies
XWAction Action input/output validation hooks tied to schema definitions. Contract-safe automation and endpoint execution.
XWEntity Entity model contracts bound to schema rules. Domain model correctness and controlled schema evolution.
XWData Format-agnostic data ingestion where schemas validate transformed payloads. Cross-format validation without rewriting rule logic per format.
XWStorage Schema catalog/migration integration for persisted data systems. Schema-on-write and migration governance for storage-backed workloads.
XWSystem Core runtime/error utility layer for validators and schema tooling. Consistent validation behavior and diagnostics across stack packages.
XWAPI / XWAuth Request, response, and policy-rule validation at API/auth boundaries. Safer public interfaces and security policy correctness.

Competitive edge: schema rules become a reusable platform contract across APIs, storage, entities, and workflows instead of living as isolated validators in each service.


📖 Docs and tests


📜 License and links

Apache-2.0 - see LICENSE. Homepage: https://exonware.com · Repository: https://github.com/exonware/xwschema

⏱️ Async Support

  • xwschema includes asynchronous execution paths in production code.
  • Source validation: 79 async def definitions and 64 await usages under src/.
  • Use async APIs for I/O-heavy or concurrent workloads to improve throughput and responsiveness.

Version: 0.4.0.19 | Updated: 25-Apr-2026

Built with ❤️ by eXonware.com - Revolutionizing Python Development Since 2025

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exonware_xwschema-0.4.0.19.tar.gz (130.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

exonware_xwschema-0.4.0.19-py3-none-any.whl (118.6 kB view details)

Uploaded Python 3

File details

Details for the file exonware_xwschema-0.4.0.19.tar.gz.

File metadata

  • Download URL: exonware_xwschema-0.4.0.19.tar.gz
  • Upload date:
  • Size: 130.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for exonware_xwschema-0.4.0.19.tar.gz
Algorithm Hash digest
SHA256 e239c3f8768833ace490bc7d6f67f929717d9b733d754e3aa41c49cc6a813e59
MD5 3558193eadd37c3907e971178edcc396
BLAKE2b-256 b275cb88e5ac56c2972d51844682748d2b50c3e7876ed97f877588ef8ccb3f7c

See more details on using hashes here.

File details

Details for the file exonware_xwschema-0.4.0.19-py3-none-any.whl.

File metadata

File hashes

Hashes for exonware_xwschema-0.4.0.19-py3-none-any.whl
Algorithm Hash digest
SHA256 0166fb97062385cb2df46f55f98ccdba819ad61cbec7381138a22ada31ba095d
MD5 dd9e3d86f08822a20b51814cbd08b228
BLAKE2b-256 a191dd49e7ff1ac1bad8ea9807b1af2f8c448034e035f1f0517b1be79b7ee8b3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page