Add JSON Schema for exercises dataset#34
Merged
Conversation
Adds data/exercises.schema.json (Draft 2020-12) describing every field, its type and constraints, so the dataset and community additions can be validated with any standard JSON Schema validator. Validated against all 1,324 records with zero errors. Also documents the previously undocumented instruction_steps field and references the schema from the README.
This was referenced Jul 9, 2026
hasaneyldrm
added a commit
that referenced
this pull request
Jul 9, 2026
…tructions) Resolved README.md conflict with #34: kept both the instructions.hi row and the instruction_steps.<lang> row (extended to include hi). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
data/exercises.schema.json— a JSON Schema (Draft 2020-12) that formally describes every field indata/exercises.json, including types, required fields, patterns (id / image / gif paths), thebody_partenum, and the multilingualinstructions/instruction_stepsmaps.instruction_stepsfield in the README and adds a reference to the new schema.Why
The dataset had no formal contract. A schema lets consumers and future contributors validate the data (and their own additions) with any standard JSON Schema validator, catching structural mistakes before they land.
Validation
Validated the schema against all 1,324 records using
jsonschema(Draft202012Validator) — 0 errors.Test plan