question_item
One converted item by its id: the composer’s view, never shown to a child.
Returns the family step a lesson file’s question takes (family, data, key, help), the
say line, the credit and based_on (khan:<id>). The key and help are in it, so use it to
draft a lesson and never paste it where a child reads. language is the item’s language
(pl by default); an item in another language is an error.
Inputs
Section titled “Inputs”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
item_id |
string |
yes | ||
language |
string |
no | "pl" |
Output
Section titled “Output”One item, the composer’s view: id, language, family, problem_type, question_type, the say line, the question (its family’s data and key, and the item’s help), the credit, based_on (khan:<id>) and the course titles it sits under. It carries the key, so never show it to a child.
The JSON Schema of FamilyQuestion, the shape of question without its help
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "oneOf": [ { "type": "object", "properties": { "family": { "type": "string", "const": "choose" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "options": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "content": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "text" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number" }, "number": { "type": "number" } }, "required": [ "kind", "number" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "bool" }, "bool": { "type": "boolean" } }, "required": [ "kind", "bool" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "array" }, "rows": { "type": "number" }, "cols": { "type": "number" } }, "required": [ "kind", "rows", "cols" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "image" }, "image": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "kind", "image", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "pictures" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } } }, "required": [ "kind", "pictures" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "none" } }, "required": [ "kind" ], "additionalProperties": false } ] }, "letter": { "type": "string" } }, "required": [ "id", "content" ], "additionalProperties": false } }, "select": { "type": "string", "enum": [ "one", "many" ] }, "layout": { "type": "string", "enum": [ "list", "grid", "binary", "lettered", "inline" ] }, "tokens": { "type": "string", "enum": [ "marked", "words" ] }, "line": { "type": "string" }, "boost": { "type": "string" } }, "required": [ "options", "select", "layout" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "correct": { "type": "array", "items": { "type": "string" } }, "near": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string" } }, "worked_solution": { "type": "array", "items": { "type": "string" } }, "why": { "type": "string" } }, "required": [ "correct" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "enter" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "input": { "type": "string", "enum": [ "number", "text", "expression", "fraction" ] }, "entry": { "type": "string", "enum": [ "keypad", "keyboard" ] }, "voice": { "type": "boolean" }, "code": { "type": "boolean" }, "max_length": { "type": "number" }, "decimal": { "type": "boolean" }, "equation": { "type": "boolean" }, "whole": { "type": "boolean" }, "simplify": { "type": "string", "enum": [ "required", "enforced" ] }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "letters": { "type": "string", "enum": [ "pl", "none" ] }, "capitals": { "type": "boolean" } }, "required": [ "input", "entry" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "accept": { "type": "array", "items": { "type": "string" } }, "form": { "type": "string", "enum": [ "sum", "difference", "product", "quotient", "any" ] }, "forms": { "type": "array", "items": { "type": "string", "enum": [ "integer", "proper", "improper", "mixed", "decimal" ] } }, "exact_terms": { "type": "boolean" }, "sides": { "type": "string", "enum": [ "either", "kept" ] }, "case": { "type": "string", "enum": [ "exact", "ignore" ] }, "accents": { "type": "string", "enum": [ "exact", "ignore" ] }, "typo": { "type": "string", "enum": [ "miss", "accept" ] }, "near": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string" } }, "tolerance": { "type": "number" }, "rule": { "oneOf": [ { "type": "object", "properties": { "rule": { "type": "string", "const": "times_table" }, "a": { "type": "number" }, "b": { "type": "number" }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "a", "b", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "fill_blank" }, "template": { "type": "string" }, "operands": { "type": "array", "items": { "type": "number" } }, "op": { "type": "string", "enum": [ "add", "sub", "mul", "div" ] }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "template", "operands", "op", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "number_line" }, "mode": { "type": "string", "enum": [ "place", "read" ] }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" } }, "required": [ "rule", "mode", "min", "max", "step" ], "additionalProperties": false } ] } }, "required": [ "accept" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "slots" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "template": { "type": "string" }, "table": { "type": "object", "properties": { "header": { "type": "array", "items": { "type": "string" } }, "rows": { "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "header", "rows" ], "additionalProperties": false }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "gaps": { "type": "array", "items": { "oneOf": [ { "type": "object", "properties": { "id": { "type": "string" }, "kind": { "type": "string", "const": "enter" }, "input": { "type": "string", "enum": [ "number", "text", "fraction" ] }, "max_length": { "type": "number" }, "range": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "at": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "x", "y" ], "additionalProperties": false }, "letters": { "type": "string", "enum": [ "pl", "none" ] }, "decimal": { "type": "boolean" }, "whole": { "type": "boolean" }, "simplify": { "type": "string", "enum": [ "required", "enforced" ] } }, "required": [ "id", "kind", "input" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string" }, "kind": { "type": "string", "const": "choose" }, "options": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "label": { "type": "string" } }, "required": [ "id", "label" ], "additionalProperties": false } }, "at": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "x", "y" ], "additionalProperties": false } }, "required": [ "id", "kind", "options" ], "additionalProperties": false } ] } }, "code": { "type": "boolean" }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "column": { "type": "object", "properties": { "op": { "type": "string", "enum": [ "add", "sub", "mul" ] }, "operands": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "given_steps": { "type": "number" }, "carry_row": { "type": "boolean" } }, "required": [ "op", "operands", "given_steps", "carry_row" ], "additionalProperties": false }, "pyramid": { "type": "array", "items": { "type": "array", "items": { "type": [ "number", "string" ] } } }, "fill_order": { "type": "array", "items": { "type": "string" } } }, "required": [ "template", "gaps" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "gaps": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "oneOf": [ { "type": "object", "properties": { "accept": { "type": "array", "items": { "type": "string" } }, "form": { "type": "string", "enum": [ "sum", "difference", "product", "quotient", "any" ] }, "forms": { "type": "array", "items": { "type": "string", "enum": [ "integer", "proper", "improper", "mixed", "decimal" ] } }, "exact_terms": { "type": "boolean" }, "sides": { "type": "string", "enum": [ "either", "kept" ] }, "case": { "type": "string", "enum": [ "exact", "ignore" ] }, "accents": { "type": "string", "enum": [ "exact", "ignore" ] }, "typo": { "type": "string", "enum": [ "miss", "accept" ] }, "near": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string" } }, "tolerance": { "type": "number" }, "rule": { "oneOf": [ { "type": "object", "properties": { "rule": { "type": "string", "const": "times_table" }, "a": { "type": "number" }, "b": { "type": "number" }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "a", "b", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "fill_blank" }, "template": { "type": "string" }, "operands": { "type": "array", "items": { "type": "number" } }, "op": { "type": "string", "enum": [ "add", "sub", "mul", "div" ] }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "template", "operands", "op", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "number_line" }, "mode": { "type": "string", "enum": [ "place", "read" ] }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" } }, "required": [ "rule", "mode", "min", "max", "step" ], "additionalProperties": false } ] }, "kind": { "type": "string", "const": "enter" } }, "required": [ "accept", "kind" ], "additionalProperties": false }, { "type": "object", "properties": { "correct": { "type": "array", "items": { "type": "string" } }, "near": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string" } }, "kind": { "type": "string", "const": "choose" } }, "required": [ "correct", "kind" ], "additionalProperties": false } ] } } }, "required": [ "gaps" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "sequence" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "items": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "text": { "type": "string" } }, "required": [ "id", "text" ], "additionalProperties": false } }, "first_label": { "type": "string" }, "last_label": { "type": "string" }, "tiles": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "text": { "type": "string" } }, "required": [ "id", "text" ], "additionalProperties": false } }, "slots": { "type": "number" } }, "required": [ "items", "first_label", "last_label" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "orders": { "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "orders" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "group" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "groups": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "label": { "type": "string" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "capacity": { "type": "number" } }, "required": [ "id", "label" ], "additionalProperties": false } }, "items": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "label": { "type": "string" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "required": [ "id", "label" ], "additionalProperties": false } }, "each_item": { "type": "string", "enum": [ "one", "many" ] }, "layout": { "type": "string", "enum": [ "columns", "zones" ] } }, "required": [ "groups", "items", "each_item" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "items": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "array", "items": { "type": "string" } } }, "near": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string" } } } }, "required": [ "items" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "place" }, "data": { "oneOf": [ { "type": "object", "properties": { "surface": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "target_label": { "type": [ "number", "string", "null" ] }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] }, "snap": { "type": "number" }, "divisions": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "required": [ "min", "max" ], "additionalProperties": false }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "min", "max", "step", "labelled" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "image" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "taps": { "type": "number" }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "image", "image_alt", "taps" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "grid" }, "size": { "type": "number" }, "label": { "type": "string" }, "split": { "type": "string", "const": "one" }, "cells": { "type": "string", "enum": [ "dots", "squares", "open" ] }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "size", "label" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "bars" }, "kind": { "type": "string", "enum": [ "bar", "picture", "line_plot", "dot_plot", "line", "histogram" ] }, "categories": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "label": { "type": "string" }, "picture": { "anyOf": [ { "type": "object", "properties": { "icon": { "type": "string", "enum": [ "apple", "banana", "cherry", "grape", "candy", "cookie", "ice_cream", "pizza", "egg", "sun", "cloud", "rain", "snow", "flower", "leaf", "dog", "cat", "fish", "bird", "star", "heart", "smile", "book", "pencil", "car", "bus", "square" ] } }, "required": [ "icon" ], "additionalProperties": false }, { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" } }, "required": [ "src", "alt" ], "additionalProperties": false } ] } }, "required": [ "id", "label" ], "additionalProperties": false } }, "max": { "type": "number" }, "step": { "type": "number" }, "tick": { "type": "number" }, "unit_label": { "type": "string" }, "category_label": { "type": "string" }, "starting": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "number" } }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "bins": { "type": "array", "items": { "type": "number" } } }, "required": [ "surface", "kind", "categories", "max", "step" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "clock" }, "target_label": { "type": "string" }, "minute_step": { "anyOf": [ { "type": "number", "const": 5 }, { "type": "number", "const": 15 }, { "type": "number", "const": 30 } ] }, "hands": { "type": "string", "enum": [ "geared", "free" ] }, "starting": { "type": "object", "properties": { "hour_at": { "type": "number" }, "m": { "type": "number" } }, "required": [ "hour_at", "m" ], "additionalProperties": false }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "target_label", "minute_step", "hands" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "coins" }, "bank": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "amount_label": { "type": "string" }, "slots": { "type": "number" }, "total": { "type": "string", "enum": [ "hidden", "shown" ] }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "bank", "amount_label", "slots" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "fraction" }, "shape": { "type": "string", "enum": [ "bar", "circle", "rect" ] }, "parts": { "type": "number" }, "rows": { "type": "number" }, "label": { "type": "string" }, "contiguous": { "type": "boolean" }, "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "surface", "shape", "parts", "label" ], "additionalProperties": false } ] }, "key": { "oneOf": [ { "type": "object", "properties": { "surface": { "type": "string", "const": "number_line" }, "value": { "type": "number" }, "tolerance": { "type": "number" }, "rule": { "oneOf": [ { "type": "object", "properties": { "rule": { "type": "string", "const": "times_table" }, "a": { "type": "number" }, "b": { "type": "number" }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "a", "b", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "fill_blank" }, "template": { "type": "string" }, "operands": { "type": "array", "items": { "type": "number" } }, "op": { "type": "string", "enum": [ "add", "sub", "mul", "div" ] }, "recent": { "type": "array", "items": { "type": "number" } } }, "required": [ "rule", "template", "operands", "op", "recent" ], "additionalProperties": false }, { "type": "object", "properties": { "rule": { "type": "string", "const": "number_line" }, "mode": { "type": "string", "enum": [ "place", "read" ] }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" } }, "required": [ "rule", "mode", "min", "max", "step" ], "additionalProperties": false } ] } }, "required": [ "surface", "value", "tolerance" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "image" }, "targets": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "polygon": { "type": "array", "items": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "x", "y" ], "additionalProperties": false } } }, "required": [ "id", "polygon" ], "additionalProperties": false } }, "near": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "polygon": { "type": "array", "items": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "x", "y" ], "additionalProperties": false } }, "mistake_class": { "type": "string" } }, "required": [ "id", "polygon", "mistake_class" ], "additionalProperties": false } }, "require_all": { "type": "boolean" } }, "required": [ "surface", "targets", "require_all" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "grid" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "either_order": { "type": "boolean" }, "off_by_one": { "type": "boolean" }, "split": { "type": "object", "properties": { "accept_at": { "type": "array", "items": { "type": "number" } } }, "additionalProperties": false } }, "required": [ "surface", "rows", "cols", "either_order" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "bars" }, "heights": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "number" } }, "tolerance": { "type": "number" } }, "required": [ "surface", "heights" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" } }, "required": [ "surface", "h", "m" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "coins" }, "amount_gr": { "type": "number" }, "fewest": { "type": "boolean" } }, "required": [ "surface", "amount_gr" ], "additionalProperties": false }, { "type": "object", "properties": { "surface": { "type": "string", "const": "fraction" }, "count": { "type": "number" } }, "required": [ "surface", "count" ], "additionalProperties": false } ] } }, "required": [ "family", "data", "key" ], "additionalProperties": false }, { "type": "object", "properties": { "family": { "type": "string", "const": "explain" }, "data": { "type": "object", "properties": { "stem": { "type": "object", "properties": { "text": { "type": "string" }, "image": { "type": "string" }, "image_alt": { "type": "string" }, "text_replaces_say": { "type": "boolean" }, "pictures": { "type": "array", "items": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false } }, "terminal": { "type": "object", "properties": { "lang": { "type": "string", "const": "bash" }, "copy": { "type": "boolean" }, "lines": { "type": "array", "items": { "type": "object", "properties": { "cmd": { "type": "string" }, "out": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "required": [ "cmd", "out" ], "additionalProperties": false } } }, "required": [ "lang", "copy", "lines" ], "additionalProperties": false }, "figure": { "oneOf": [ { "type": "object", "properties": { "kind": { "type": "string", "const": "expression" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "number_line" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "labelled": { "type": "array", "items": { "type": "number" } }, "marker": { "type": "number" }, "tick_label": { "type": "string", "enum": [ "decimal", "fraction", "mixed", "non-reduced" ] } }, "required": [ "kind", "min", "max", "step", "labelled", "marker" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "dots" }, "rows": { "type": "number" }, "cols": { "type": "number" }, "alt": { "type": "string" } }, "required": [ "kind", "rows", "cols", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "groups" }, "groups": { "type": "number" }, "each": { "type": "number" }, "icon": { "type": "string", "enum": [ "apple", "star", "heart", "fish", "flower", "cherry" ] }, "alt": { "type": "string" } }, "required": [ "kind", "groups", "each", "icon", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "ruler" }, "picture": { "type": "object", "properties": { "src": { "type": "string" }, "alt": { "type": "string" }, "width": { "type": "number" }, "height": { "type": "number" }, "decorative": { "type": "boolean", "const": true }, "labels": { "type": "object", "properties": { "range": { "type": "array", "prefixItems": [ { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 } ], "items": false, "minItems": 2, "maxItems": 2 }, "items": { "type": "array", "items": { "type": "object", "properties": { "content": { "type": "string" }, "coordinates": { "type": "array", "prefixItems": [ { "type": "number" }, { "type": "number" } ], "items": false, "minItems": 2, "maxItems": 2 }, "alignment": { "type": "string" }, "math": { "type": "boolean", "const": false } }, "required": [ "content", "coordinates", "alignment" ], "additionalProperties": false } } }, "required": [ "range", "items" ], "additionalProperties": false } }, "required": [ "src", "alt", "width", "height" ], "additionalProperties": false }, "unit": { "type": "string", "enum": [ "cm", "mm" ] }, "length": { "type": "number" }, "pixels_per_unit": { "type": "number" }, "ticks": { "type": "number" }, "start": { "type": "number" } }, "required": [ "kind", "picture", "unit", "length", "pixels_per_unit" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "clock" }, "h": { "type": "number" }, "m": { "type": "number" }, "numbers": { "type": "string", "enum": [ "arabic", "none" ] }, "alt": { "type": "string" } }, "required": [ "kind", "h", "m", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "coins" }, "items": { "type": "array", "items": { "type": "string", "enum": [ "gr1", "gr2", "gr5", "gr10", "gr20", "gr50", "zl1", "zl2", "zl5", "zl10", "zl20", "zl50", "zl100", "zl200" ] } }, "alt": { "type": "string" } }, "required": [ "kind", "items", "alt" ], "additionalProperties": false }, { "type": "object", "properties": { "kind": { "type": "string", "const": "fraction_bars" }, "items": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "number" }, "d": { "type": "number" } }, "required": [ "n", "d" ], "additionalProperties": false } }, "shape": { "type": "string", "enum": [ "bar", "circle" ] }, "alt": { "type": "string" }, "labels": { "type": "string", "enum": [ "shown", "none" ] } }, "required": [ "kind", "items", "shape", "alt" ], "additionalProperties": false } ] }, "reference": { "type": "object", "properties": { "prompt": { "type": "string" }, "text": { "type": "string" } }, "required": [ "prompt", "text" ], "additionalProperties": false }, "audio": { "type": "object", "properties": { "clip": { "type": "string" }, "slow": { "type": "string" } }, "required": [ "clip" ], "additionalProperties": false }, "audio_text": { "type": "object", "properties": { "text": { "type": "string" }, "language": { "type": "string" }, "slow": { "type": "boolean", "const": true } }, "required": [ "text", "language" ], "additionalProperties": false } }, "additionalProperties": false }, "input": { "type": "string", "enum": [ "voice", "text", "both" ] }, "prompt": { "type": "string" }, "min_words": { "type": "number" } }, "required": [ "input" ], "additionalProperties": false }, "key": { "type": "object", "properties": { "criteria": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "text": { "type": "string" }, "cite": { "type": "string" } }, "required": [ "id", "text", "cite" ], "additionalProperties": false } }, "criteria_version": { "type": "string" } }, "required": [ "criteria", "criteria_version" ], "additionalProperties": false } }, "required": [ "family", "data", "key" ], "additionalProperties": false } ]}