Skip to content

Derivation contracts

Every contract indexed below is normative. Files have one semantic owner; requirements use permanent global IDs independent of that owner's filename. The schema owns shape, defaults, and structural constraints. Contracts own shared and operation-local behavior. Examples demonstrate the contracts.

Read the relevant block, then follow its dependencies. The blocks are reading order, not execution phases; execution/lifecycle owns the sequence of a run.

Specification

Contract Status Owns
Specification structure normative Declare identifiers, columns, derivation coverage, and source notation.
Specification composition normative Resolve inherited layers into one minimal, ordered specification.
Name binding normative Resolve input datasets, current-output columns, and ODM item reads.
Specification style normative Fix one written form of a specification and report departures without changing its meaning.

Values

Contract Status Owns
Types and conversion normative Define column types, missing normalization, compatibility, and conversion.
Numeric values normative Define numeric representation, promotion, conversion, and overflow.
Text values normative Define Unicode scalar identity, preservation, equality, and order.
Temporal values normative Define dates, local civil datetimes, precision, canonical text, and order.

Execution

Contract Status Owns
Execution lifecycle normative Sequence resolution, row construction, dependency evaluation, value completion, and output checks.
Row construction normative Construct output rows from declared input records or groups.
Ordering normative Apply ordering terms, missing placement, stable ties, and final artifact order.
Local handlers normative Handle conditions at their expression or conversion site and report substitutions.
Verification normative Apply assertions, severity, grouped counts, and warning logs to completed values.

Operations

Contract Status Owns
Expression evaluation normative Register and dispatch expressions, restrict nesting, and define scalar selection.
Predicates normative Evaluate the closed Boolean language using three-valued logic.
Numeric computation normative Evaluate written arithmetic formulas without reassociation or presentation rounding.
Aggregation normative Reduce eligible records in one of the three permitted key scopes.
Lookup and joins normative Match declared keys, narrow records, select a result, and answer absence.
Windows normative Partition constructed output rows and compute ranks, neighbors, and baseline selections.
Text operations normative Apply casing, inline mapping, templates, and portable regular expressions.
Temporal operations normative Compute calendar differences, study days, date completion, and precision.
Project functions normative Verify installed packages against the held lock and validate function inputs, results, and inline activation tests.

Storage

Contract Status Owns
Resource resolution normative Confine declared source paths and read one immutable snapshot per physical file.
Source ingestion normative Select input profiles and assign source field types without inferring values.
CSV profile normative Read admitted CSV spellings and write canonical CSV bytes and display precision.
Parquet profile normative Read and write the closed Parquet field and value mapping.
Artifact publication normative Select artifact columns and profiles and publish complete files atomically.

Submission

Contract Status Owns
Submission metadata normative Govern dataset and column metadata, origin, methods, and document references.
Controlled terminology normative Declare codelists once and validate their bindings and allowed values.
Define-XML normative Compose study metadata into deterministic Define-XML 2.1 documents.
Dataset-JSON normative Write a dataset and its submission metadata as one deterministic Dataset-JSON 1.1 file.

Reference

Contract Status Owns
Schema language normative Define schema notation, registries, constraints, and canonical shorthand expansion.

Requirement and compatibility index.