What a question record contains
At the data-model level, a LearnTerms question includes:moduleIdordertypestemoptionscorrectAnswers- optional
explanation aiGeneratedstatus- optional author metadata
Supported question types
The shared type definitions currently include:multiple_choicetrue_falsefill_in_the_blankmatching
Writing a strong stem
A strong LearnTerms stem should:- ask one clear thing
- avoid unnecessary ambiguity
- stay tied to module-specific source material
- support a rationale that teaches, not just confirms correctness
Options and correct answers
Options are stored as structured entries with IDs and text. Correct answers are stored separately as an array of option IDs or matching tokens, depending on question type. For contributors, that means:- options must be distinct enough to evaluate reliably
- answer IDs matter, not just displayed order
- matching questions require more care because the evaluation model is more complex than a simple single-answer check
Explanations
The explanation field is optional in the schema, but in practice it is highly valuable. Good explanations should:- explain why the correct answer is correct
- explain why likely distractors are wrong when helpful
- reinforce the module concept rather than restating the stem
AI-generated vs manually authored
Questions can be marked asaiGenerated, but that flag should not be treated as a quality badge. It is provenance, not proof.
Generated questions should still be reviewed for:
- factual correctness
- curriculum relevance
- clarity
- answerability
- alignment with the source material
Media attachments
Question media is supported through a dedicatedquestionMedia table.
Current rules include:
- images only
8MBmaximum size- optional alt text and caption
- optional
showOnSolutionbehavior
Status and curation expectations
Questions also carry astatus, which makes it possible to distinguish between material that is ready for students and material that still needs review.
Contributors should treat question writing as curation, not just entry:
- verify the source
- write clearly
- attach media only when it improves understanding
- include explanation when possible
- place the question in the correct module