UNPKG

kolibri-constants

Version:

A package that exposes constants commonly used across the Kolibri Ecosystem

80 lines (77 loc) 2.33 kB
// -*- coding: utf-8 -*- // Generated by scripts/generate_from_specs.py // LearningObjectives export const SCHEMA = { "$id": "/schemas/learning_objectives", "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "description": "Schema for Learning Objectives mapping", "additionalProperties": false, "definitions": { "hex-uuid": { "type": "string", "pattern": "^[0-9a-f]{32}$", "description": "A unique identifier in the form of the compact hex representations of a UUID v4 or v5" }, "learning_objective_id": { "$ref": "#/definitions/hex-uuid", "description": "Unique identifier for the Learning Objective" } }, "properties": { "learning_objectives": { "type": "array", "description": "A list of Learning Objectives available in the unit", "minItems": 1, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/learning_objective_id" }, "text": { "type": "string", "minLength": 1, "pattern": "^\\s*\\S[\\s\\S]*$", "description": "Human-readable text describing the Learning Objective" }, "metadata": { "type": "object", "description": "Optional metadata associated with the Learning Objective" } }, "required": ["id", "text"] } }, "assessment_objectives": { "type": "object", "description": "Mapping of assessment question IDs to Learning Objective IDs", "minProperties": 1, "additionalProperties": false, "patternProperties": { "^[0-9a-f]{32}$": { "type": "array", "items": { "$ref": "#/definitions/learning_objective_id" } } } }, "lesson_objectives": { "type": "object", "description": "Mapping of lesson IDs to Learning Objective IDs", "minProperties": 1, "additionalProperties": false, "patternProperties": { "^[0-9a-f]{32}$": { "type": "array", "items": { "$ref": "#/definitions/learning_objective_id" } } } } }, "required": ["learning_objectives", "assessment_objectives", "lesson_objectives"] } ;