Skip to main content

Convenience wrapper for exonware-xwdata - provides 'import xwdata' alias

Project description

xwdata

Build data systems from any format, for any structure.
xwdata lets you load from one format, shape data into the structure you need, and save to another format through one API.

Use JSON, YAML, TOML, XML, and more as your input language, then model the result as maps, trees, graphs, or domain objects. This is useful for game save systems, data pipelines, config platforms, and runtime in-memory data services.

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

Status Python License


📦 Install

Install What you get When to use
pip install exonware-xwdata Lite - core only Minimal footprint.
pip install exonware-xwdata[lazy] Lazy - formats on first use Development.
pip install exonware-xwdata[full] Full - common formats pre-installed Production or CI.

🚀 Quick start

from exonware.xwdata import load_data, save_data

# Load from any format, save to any format; one API
data = load_data("input.json")   # or .yaml, .xml, etc.
data["key"] = "value"
save_data(data, "output.yaml")

XWNode for path navigation and graph work; async APIs; reference resolution. See docs/ and docs/GUIDE_01_USAGE.md when present.


🎯 Why developers use xwdata

  • One API, many formats - stop rewriting loaders and converters for each format.
  • One model, many outputs - build once, then serialize where it needs to go.
  • Practical architecture freedom - use XML for game saves, TOML/JSON for graph configs, or mixed formats for DB bootstrap data.
  • In-memory and persisted flows - use the same patterns for runtime objects and storage/export paths.

✨ What you get

Area What's in it
Formats One API over 30+ formats via xwsystem; partial reads and typed loads.
Data modeling Build maps, trees, graph-like layouts, and domain objects from the same source API.
XWNode Path and graph operations on in-memory data.
Semantics Copy-on-write, universal metadata, reference resolution.
Async Async-first operations.

🌐 Ecosystem functional contributions

xwdata is the data interchange layer; other XW libraries provide structure, querying, validation, and persistence around those data flows. You can use xwdata standalone for multi-format load/transform/save workflows. Adding more XW libraries is optional and mostly beneficial for enterprise and mission-critical data infrastructure where you need full control of validation, query, and persistence layers.

Supporting XW lib What it provides to xwdata Functional requirement it satisfies
XWSystem Core serializer/runtime infrastructure used for format handling and shared utilities. One stable data I/O foundation across formats and environments.
XWNode Path navigation, graph/tree-aware operations, and structure manipulation. Complex in-memory structure workflows beyond flat dictionaries.
XWSchema Validation contracts applied to loaded/transformed payloads. Data quality enforcement during ingest/transform/export stages.
XWQuery Query and projection over in-memory structured datasets. Declarative filtering/transformation without custom traversal code.
XWEntity Domain model integration when raw data becomes typed entities. Bridge from flexible data payloads to domain-driven objects.
XWStorage Durable persistence destination/source for transformed datasets. End-to-end pipelines from format conversion to persistent storage.

This gives xwdata a practical edge over format-only libraries: it connects parsing, structure, validation, query, and persistence in one workflow path.


📖 Docs and tests


📜 License and links

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

⏱️ Async Support

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

Version: 0.9.0.17 | Updated: 13-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

xwdata-0.9.0.17.tar.gz (161.8 kB view details)

Uploaded Source

Built Distribution

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

xwdata-0.9.0.17-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file xwdata-0.9.0.17.tar.gz.

File metadata

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

File hashes

Hashes for xwdata-0.9.0.17.tar.gz
Algorithm Hash digest
SHA256 8d11c9ba0b488c555f2f98e70db4bd0aa20f0b5a4e3dac1f2642aa0d0955c8ff
MD5 a9d60e789e916718d0b1eea864767733
BLAKE2b-256 0f1f5877795760a9ac7f81d7baf01761f114c402b500ecd27a5fa3089e0563d7

See more details on using hashes here.

File details

Details for the file xwdata-0.9.0.17-py3-none-any.whl.

File metadata

  • Download URL: xwdata-0.9.0.17-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for xwdata-0.9.0.17-py3-none-any.whl
Algorithm Hash digest
SHA256 cc3dc8b282eb8d09314da4a1ba917091d7044d2e18f570e1d4d1a2bf5a259c0c
MD5 cdd36661bb98ccec356683b1b0030c6c
BLAKE2b-256 7187681bb9ce864e9b167a4fe5796be641858c73b401f75f0c23fb520a94d6d4

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