This release is a pre-release and may not be stable for production use.
SchemaIR for Python
This directory will contain the Python implementation of the language-independent SchemaIR protocol. The package is intended for Python tools that need to construct, validate, compare, and interpret SchemaIR data without coupling the wire model to a Python runtime object graph.
The protocol is the source of truth. Python APIs are bindings and authoring
conveniences; their serialized output must remain compatible with the shared
vectors in ../conformance/.
Development
Python 3.11 or newer is required. Create an environment and install the package
with its development dependencies using your preferred workflow. With uv:
uv sync
uv run pytest
uv run ruff check .
The initial package is a scaffold. Implementation work should proceed from the protocol models, then definition and payload validation, SchemaNode relations, and the type interpreter. Host reference resolution, semantic and constraint providers, native type relations, graph scheduling, and execution remain caller owned.
Package layout
schemair/
spec/ # Python bindings for protocol data
core/ # definition, payload, and SchemaNode relation APIs
type_interpreter/ # authoring-time expression interpreter
tests/ # unit and shared conformance-vector tests
See the repository contribution guide for protocol and conformance change rules.
Metadata
Release files for schemair 0.1.0.dev0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| schemair-0.1.0.dev0.tar.gz | 6.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| schemair-0.1.0.dev0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.4 kB
Release files / schemair-0.1.0.dev0.tar.gz
| Download URL | schemair-0.1.0.dev0.tar.gz |
|---|---|
| Size | 6.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
212ff79eec3ed5880fa2f62bab278bcccdf097e3dc7922e0d767519e96bb6e35
|
|
BLAKE2b-256 checksum How to use checksums |
1844428c286b226c0c01c396f73a27c431098180b23feb49af2a5f366586bd6c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.13
|
Release files / schemair-0.1.0.dev0-py3-none-any.whl
| Download URL | schemair-0.1.0.dev0-py3-none-any.whl |
|---|---|
| Size | 3.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
39ac331d435e249fbd8ab9c07057e1a132f306b3db78fef6af2180ef464e3cee
|
|
BLAKE2b-256 checksum How to use checksums |
b77616d55c9116bd340f0eccd01ec23e08c81fa6ca7c89e2f4c9c9953a3d9f6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.13
|