Independent project. Not affiliated with or endorsed by NIST.

athlon-schema

Spec version 0.1.0 (draft) · Based on NIST AI 200-2 initial public draft (August 2026) · Apache-2.0

A draft machine-readable file format for assessments conducted under the TEVV-Athlon Framework, with JSON Schemas and a reference validator. The Python package and command-line tool are named tevv-athlon.

Purpose

NIST AI 200-2 ipd describes what each stage of a TEVV-Athlon should produce but does not specify a format for recording it. This project proposes one, so that plans and results from different assessments can be compared, checked automatically and reviewed by others. It is meant as a reference point for discussion, not as a proposed standard. It records the outputs of the framework's four stages in a structured form and does not modify or reinterpret the framework.

Mapping to the framework

Stage (NIST AI 200-2 ipd)FileContents
1. Articulate & Organize §2.1athlon.yaml System description, answers to the seven goal questions, trustworthiness characteristics, lifecycle stage
2. Define & Construct §2.2athlon.yaml Blocks, each with a definition, the evidence it requires, and measures (unit, direction, optional target)
3. Apply & Measure §2.3athlon.yaml
evidence/*.jsonl
Events (type, setting, condition factors) and the Toolbox in the plan; one evidence record per observation
4. Synthesize & Interrogate §2.4athlon.yaml
review.yaml
Interrogation questions registered in the plan before testing; responses, limitations and validity boundary in the review afterwards

athlon.yaml is written before any testing takes place. The controlled vocabulary (the seven AI RMF trustworthiness characteristics, Event types, settings and lifecycle stages) follows the draft and is listed in section 4 of the specification.

Design choices

Schemas

JSON Schema draft 2020-12, generated from the project's data models. Each URL below is also the schema's $id.

Plan

athlon.yaml: goals, characteristics, Blocks, Events, Toolbox and interrogation questions.

https://neems.github.io/athlon-schema/schema/0.1/athlon.schema.json

Evidence record

One line of evidence/*.jsonl: a single observation with its provenance.

https://neems.github.io/athlon-schema/schema/0.1/evidence.schema.json

Review

review.yaml: interrogation responses, limitations and validity boundary.

https://neems.github.io/athlon-schema/schema/0.1/review.schema.json

Using the schemas

You do not need this project's Python package to check a file. Any JSON Schema validator that supports draft 2020-12 will do, for example check-jsonschema:

check-jsonschema --schemafile https://neems.github.io/athlon-schema/schema/0.1/athlon.schema.json athlon.yaml

Evidence files hold one JSON object per line, so each line is checked against the evidence schema on its own.

To get field completion and inline errors while editing a plan, put this line at the top of athlon.yaml. Editors that use the YAML language server, such as VS Code with the Red Hat YAML extension, can then check the file as you type.

# yaml-language-server: $schema=https://neems.github.io/athlon-schema/schema/0.1/athlon.schema.json

The URLs under /schema/0.1/ will not change. A future spec version will be published under its own path, and earlier versions will stay available.

Quickstart

The reference validator also checks cross-references between goals, characteristics, Blocks, Events and Tools, which JSON Schema alone cannot express. It requires Python 3.11 or later and uv.

git clone https://github.com/neems/athlon-schema.git
cd athlon-schema
uv sync
uv run tevv-athlon validate spec/examples/ambient-scribe/athlon.yaml

validate exits 0 when there are no errors, 1 when there are errors and 2 on a usage error. Add --format json for machine-readable output, and run uv run tevv-athlon codes to list every issue code with a fix hint.

Examples

All examples use synthetic data. None contains protected health information, and none describes a medical device.

Status

Draft, spec version 0.1.0. The format will change while NIST AI 200-2 remains a draft; version 1.0 is intended to align with the final publication. The package is not published to PyPI.

In this version the command-line tool validates athlon.yaml plans. Evidence and review files are defined by their schemas and can be checked with any JSON Schema validator. Evidence adapters, report generation and migration tooling are planned but not yet implemented.

Feedback

Issues and pull requests are welcome on GitHub. Corrections to how the format represents the draft are particularly useful.