DTCS — Data Transformation Contract Standard
Vendor-neutral specification and reference implementation for expressing the semantics of data transformations.
Status: Draft
Specification version: 1.0.0-draft
Document dtcsVersion: 1.0.0 (accepted by the reference validator for compatible 1.0.x releases)
Overview
SPEC.md is the authoritative normative specification for DTCS. It defines transformation contracts, the canonical object model, validation, diagnostics, conformance, and governance — without prescribing execution engines, storage, or orchestration.
This repository contains:
| Path | Purpose |
|---|---|
| SPEC.md | Full DTCS 1.0 draft specification (26 chapters) |
| docs/ | Documentation index |
| docs/editorial/ | Authoring standards, style guide, and review process |
| docs/implementation/ | Rust reference implementation design and build guides |
| src/ | Rust crate source (dtcs) |
| python/ | Python package source (dtcs on PyPI) |
| examples/ | Sample DTCS transformation contracts |
| tests/ | Integration tests and fixtures |
| .github/workflows/ | CI pipeline |
Quick start
Read the specification
Build the Rust crate
Use the Python package
=
assert
The first implementation milestone is:
DTCS Document → Parser → Canonical Object Model → Validator → Diagnostics
Execution, backend compilation, and runtime behavior are out of scope for the initial crate. See docs/implementation/non-goals.md.
Repository layout
dtcs/
├── SPEC.md # Normative specification (source of truth)
├── Cargo.toml # Rust crate manifest
├── pyproject.toml # Python package manifest (maturin)
├── Cargo.lock # Pinned dependencies (binary crate)
├── README.md
├── CONTRIBUTING.md
├── LICENSE
├── .github/workflows/ # CI
├── docs/
│ ├── README.md # Documentation index
│ ├── editorial/ # Specification authoring process
│ └── implementation/ # Reference implementation guides
├── examples/ # Example transformation contracts
├── python/ # Python package source
├── src/ # Rust library, CLI binary, validation
├── tests/ # Integration tests and fixtures
└── .cursor/prompts/ # Cursor build prompt
Contributing
See CONTRIBUTING.md for editorial conventions, implementation guidelines, and the review process.
When implementation guidance conflicts with the specification, SPEC.md wins. See docs/implementation/spec-usage.md.
License
Licensed under the Apache License, Version 2.0. See LICENSE.