Quality and packaging
Assess quality, encode reusable rules, and produce evidence before data is released.
Gate a dataset release
undatum validate data.csv --rules rules.yml --format-out json \
--violation-report violations.json --fail-on-warnings
Example rule files live in the examples/validation-rules directory; the rule library lists the built-in formats (dates, phone numbers, ISO codes, IBAN, ...), unique and references.
Report quality against thresholds
undatum quality data.csv --rules rules.yml -o report.html
--thresholds turns the report into a data contract: the command exits with 1 when a
threshold fails. See quality.
Catch schema drift
undatum diff --schema data.csv data.jsonl
undatum schema-drift data.csv data.jsonl --fail-on removed,type
Detect unintended changes
undatum diff previous.parquet current.parquet --key id --ignore-order \
--max-changed-rows 0 --summary-only
Publish a Frictionless package
undatum package create data.csv --package-dir release --output release/datapackage.json
undatum package validate release/datapackage.json
Prepare a safe public extract
undatum mask source.csv --fields email,phone --method hash --salt "$SALT" --output public.csv
undatum doc public.csv --pii-detect --pii-mask-samples --output DATASET.md
See quality, validate, schema-drift, package, mask, and doc.