-
Notifications
You must be signed in to change notification settings - Fork 10
1.1. Configuring repository structure
abasic edited this page Mar 5, 2020
·
1 revision
The following page explains how to configure the general course structure. That includes creating all used activity types (Goals, Learning Objectives, Practice Exercises, etc.), setting up their relation to one another, as well as what type of content will each activity contain (Introduction, Perspective, Assessments, Exams, etc.) and various activity meta data.
{
"SCHEMAS": [{
"id": "COURSE",
"name": "Example schema",
"contentContainers": [{
"type": "INTRO",
"label": "Introduction",
"types": ["HTML", "AUDIO", "VIDEO", "EMBED"],
"displayHeading": true
}, {
"type": "PERSPECTIVE",
"label": "Content",
"multiple": true,
"displayHeading": true,
"layout": true
}],
"structure": [{
"level": 1,
"type": "GOAL",
"subLevels": ["OBJECTIVE", "INTERACTIVE_EXERCISE"],
"label": "Goal",
"color": "#42A5F5",
"contentContainers": ["INTRO"],
"hasAssessments": false,
"meta": [{
"key": "inputKey",
"type": "INPUT",
"label": "Name",
"placeholder": "Click to add...",
"validate": { "rules": { "max": 250 } }
}, {
"key": "textareaKey",
"type": "TEXTAREA",
"label": "Description",
"placeholder": "Click to add...",
"validate": {
"rules": {
"max": 250
}
}
}, {
"key": "checkboxKey",
"type": "CHECKBOX",
"label": "Generic checkbox label",
"description": "Description for a checkbox"
}, {
"key": "switchKey",
"type": "SWITCH",
"label": "Generic switch label",
"description": "Description for a switch"
}, {
"key": "colorKey",
"type": "COLOR",
"label": "Pick a color"
}, {
"key": "duration",
"type": "SELECT",
"label": "Select From List",
"placeholder": "Select...",
"options": [{
"label": "selection 1",
"value": 5
}, {
"label": "selection 2",
"value": 10
}, {
"label": "selection 3",
"value": 15
}]
}, {
"key": "datePicker",
"type": "DATETIME",
"label": "date picker"
}]
}, {
"level": 2,
"type": "OBJECTIVE",
"subLevels": ["TOPIC"],
"label": "Learning Objective",
"color": "#66BB6A",
"contentContainers": [],
"hasAssessments": false,
"meta": [{
"key": "description",
"type": "TEXTAREA",
"label": "Description",
"placeholder": "Click to add...",
"validate": {
"rules": {
"required": false,
"max": 250
}
}
}, {
"key": "inactive",
"type": "SWITCH",
"label": "Inactive"
}]
}, {
"level": 2,
"type": "INTERACTIVE_EXERCISE",
"subLevels": [],
"label": "Interactive Exercise",
"color": "#78909C",
"isEditable": true,
"contentContainers": ["PERSPECTIVE"],
"meta": []
}, {
"level": 3,
"type": "TOPIC",
"label": "Topic",
"color": "#EC407A",
"isObjective": true,
"contentContainers": ["PERSPECTIVE"],
"hasAssessments": true,
"meta": [{
"key": "description",
"type": "TEXTAREA",
"label": "Description",
"placeholder": "Click to add...",
"validate": {
"rules": {
"required": false,
"max": 250
}
}
}],
"relationships": [{
"type": "prerequisites",
"label": "Prerequisites",
"placeholder": "Select prerequisites"
}, {
"type": "replacements",
"label": "Replacements",
"placeholder": "Select replacements"
}]
}]
}]
}
Property | Description | Values |
---|---|---|
level | Defines the activity level in the structure | Number |
type | Defines the type of the Activity | 'GOAL', 'OBJECTIVE', 'INTERACTIVE_EXERCISE', 'TOPIC' or any other available activity type |
subLevels | Defines which activities are sub-levels for the current activity. IMPORTANT: Level property for all sub-activities has to be current_activity.level + 1 Example: If 'GOAL' has level set to 1, and 'OBJECTIVE' is a sublevel of 'GOAL', then 'OBJECTIVE' level has to be set to 2. Entering the wrong subLevel value may cause issues with the course structure. |
Array containing 'GOAL', 'OBJECTIVE', 'INTERACTIVE_EXERCISE', 'TOPIC' or any other available activity type |
label | Label for the currently selected activity | String |
color | Color for the background on the activity ordinal number | HEX, RGB, color name,... |
hasAssessments | Defines whether the activity has an 'Assessments' section (Topic level assessments) | Boolean |
meta | Used to add metadata to the activity (visible from the activity sidebar). More details on metadata can be found here. | |
contentContainers | Used to add content containers with specified elements in each structure type. More details on defining content container structure can be found here. | |
relationships | Used to add specified types of relationships between structure types. More details on relationships can be found here. |