Learning Data
Sessions
An exercise session captures a student's work on a single exercise. Each session includes the exercise definition, the student's actions (e.g. submitted inputs and hint requests) and the outcomes of these actions
Each session is uniquely identified by a session ID. You can use this session ID to:
- Display the exercise in a web page using the Algebrakit web component
- Retrieve scoring information via the Algebrakit web service
- Display the student's work in your dashboards using the web component in review mode.
- Show the worked solution for the exercise.
Privacy
Algebrakit is designed with privacy in mind. It never requires personally identifiable information (PII). This ensures that exercise sessions cannot be linked to individual students. It is the responsibility of your platform to manage session-to-student mappings.
Session retention
By default, Algebrakit automatically deletes session data one year after its last use. If you need a longer retention period, please contact us.
Scoring
Algebrakit supports automatic scoring for most question types. You can control how scoring works using a scoring model. For example, you can choose to deduct marks for incorrect answers or hint usage. You can also limit the number of attempts or tolerated errors before a question is considered failed
You define the scoring model when creating a session. If no model is specified, the default scoring model applies:
- Each correct interaction earns 1 mark
- No penalties are applied for hints or errors
- Unlimited attempts and mistakes (except for multiple-choice, which is locked after submission)
- Total score = sum of all individual interaction scores
Each interaction provides detailed scoring information:
Property | Description |
---|---|
finished |
Whether the interaction was answered correctly |
marksEarned |
Marks earned, accounting for any penalties |
marksTotal |
Maximum possible marks for the interaction |
marksPenalty |
Marks deducted due to penalties |
hintsRequested |
Number of hint requests |
mathErrors |
Number of incorrect inputs |
Skill Detection
Many math problems require multiple steps, each tied to specific mathematical skills (e.g. factoring, using the chain rule). Understanding which skills a student has mastered can help teachers identify misconceptions and enable adaptive systems to provide better support.
Algebrakit automatically detects both positive and negative evidence of skill mastery. For instance, successfully completing a problem provides positive proof of relevant skills. Struggling or making errors provides negative proof, highlighting skills not yet mastered.
When you retrieve scoring, the response includes skill mastery data:
- Each skill is identified by a unique ID from the skill taxonomy
- A weight value indicates the strength and direction of the evidence. +100 = strong evidence the skill is mastered, while -100 = strong evidence the skill is not yet mastered.
Skills Taxonomy
Algebrakit uses a skills taxonomy to organize the mathematical abilities it can detect during student work. This taxonomy is structured as a hierarchy of skill groups and individual skills.
Each skill and group has a unique ID and a description, which can be shown in multiple languages.
You can download this taxonomy as a JSON file here: skill-taxonomy.json
Structure overview
The taxonomy is built using the following elements:
-
Skill group (TagCollection)
A group of related skills or subgroups. It includes:- id: A unique identifier for the group
- descr: A localized description (text in multiple languages)
- tags (optional): A list of skills in this group
- collections (optional): A list of subgroups (nested skill groups)
-
Skill (Tag)
A specific skill that Algebrakit tracks. It includes:- id: A unique skill identifier
- descr: A localized description of the skill
- errors: A list of common error types related to this skill
-
Error (ErrorTag)
A type of error that can occur when applying the skill. It includes:- id: A unique identifier for the error
- type: One or more categories of the error (e.g. conceptual, procedural)
- descr: A localized description of the error
-
Localized Description (I18NDescription)
A mapping of language codes (e.g. "en", "nl") to descriptions in those languages.
Example
Here's a simplified example of what a skill group might look like in the taxonomy:
{
"id": "Factor",
"descr": {
"en": "Factoring expressions",
"nl": "Ontbinden in factoren" },
"tags": [
{
"id": "FactorSingleBrackets",
"descr": {
"en": "Factoring a common factor",
"nl": "..."
},
"errors": [
{
"id": "SignError",
"type": ["MISTAKE", "MISCONCEPTION"],
"descr": {
"en": "Making a sign error when factoring.",
"nl": "..."
}
}
]
}
]
}