Examplary ships with a set of built-in question types that are available to all organisations. This page provides an overview of each default question type, its capabilities, and configurable settings.
This page is auto-generated from the Examplary API.
Introduction
Text shown to the student at the start of the test.
ID: exam-intro
Capabilities: AI generation
Paragraph
Some text to provide context or instructions to the student.
ID: paragraph
Capabilities: AI generation, QTI 3.0 export
Outro
Final text shown to the student after the test.
ID: exam-outro
Capabilities: AI generation
Fill in the blanks
Requires student to fill in one or more blanks with a short text answer. Also known as 'cloze' questions.
ID: examplary.expansion.fill-in-blank
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| The question text with blanks | text | string | — | The text of the question (string), with blanks represented by ___ |
| Correct answer | correctAnswer | string-array | — | The correct answer(s) to the question, that represent the blanks. There needs to be the same number of entries as there are blanks in the text. |
| Alternative answers per blank | alternativeAnswers | custom | — | Optional. For each blank, other answers that are accepted besides its entry in correctAnswer, e.g. [["Parijs"], []]. An empty list (or no entry) accepts only the correct answer. |
| Choices per blank | choices | custom | — | Optional. For each blank, the options the student picks from in a dropdown, e.g. [["is", "are"], []]. An empty list (or no entry) makes the blank a free text input. The correct answer for a dropdown blank must be one of its options. |
| Ignore spaces/capitals | exactValuesCaseInsensitive | boolean | true | Leading/trailing whitespace is always ignored when comparing the student's answer to the correct answer. When this is enabled, letter casing is ignored too. |
| Exact order | exactOrder | boolean | true | When enabled, every blank has to be filled in with the correct answer configured for that blank. When disabled, any of the correct answers is accepted in any blank, as long as each correct answer is used exactly once. |
Matching
Match the correct items with their pairs from two lists.
ID: examplary.expansion.matching
Capabilities: AI generation, Auto-scoring
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Left items | left | string-array | — | Array containing the items shown in the left column (or top row). Example: ["Apple", "Banana"]. |
| Right items | right | string-array | — | Array containing the answer options the student can match with, shown in the right column (or bottom row). Example: ["Red", "Yellow"]. |
| Correct answer | correctAnswer | string-array | — | Array containing the correct pairs, where each pair is a string that contains =. The text left of the = must exactly match an item from left, the text right of it an item from right. Example: ["Apple = Red", "Banana = Yellow"]. |
| Layout | layout | vertical, horizontal | vertical | The layout to use for displaying the matching question. vertical displays the items in two vertical columns, while horizontal displays them in two horizontal rows. Don't use horizontal if there are more than 3 items. |
| Shuffle options | shuffle | boolean | false | Whether to show the options in a random order to the student during digital assessments. If disabled, the options in both columns are shown in alphabetical order. Printed sheets always show the items in the order of the settings. |
Select point
Students click the right spot on an image, like a place on a map.
ID: examplary.expansion.select-point
Capabilities: Auto-scoring
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Image | image | string | — | URL of the image the student clicks on. |
| Width | width | number | — | Optional width of the image's coordinate space, which points and areas are given in. Defaults to the image's own width. |
| Height | height | number | — | Optional height of the image's coordinate space. Defaults to the image's own height. |
| Correct areas | areas | custom | — | The areas the student has to click, e.g. [{"shape": "circle", "coords": [191, 393, 10]}]. A circle has coords [x, y, radius], a rect [left, top, right, bottom]. |
| Maximum number of points | maxChoices | number | 1 | The number of points a student can place at most, 0 for no limit. |
Select words
Students select the correct words or phrases in a text.
ID: examplary.expansion.select-words
Capabilities: AI generation, Auto-scoring
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Text with selectable parts | text | string | — | The text (HTML) with each part the student can select in square brackets, e.g. <p>The [cat] [sat] on the [mat].</p>. |
| Correct answer | correctAnswer | string-array | — | The bracketed parts that should be selected, written exactly as between the brackets, e.g. ["sat"]. |
| Show selectable words | showParts | boolean | true | Whether the selectable parts are shown in boxes. When disabled, they read as plain text, so students have to find them themselves. |
Sentence analysis
Let students split a Dutch sentence into sentence parts, label each part, and mark the finite verb.
ID: examplary.expansion.sentence-analysis
Capabilities: AI generation, AI grading, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Sentence | sentence | string | — | The single Dutch sentence the student should analyse. |
| Enabled labels | enabledLabels | string-array | OW,WG,LV,BWB | Array of zinsdeel codes the student may choose from. Use only OW, WG, NG, LV, MV, VV, BWB, BVB, DB, VW. |
| Mark finite verb | requirePersoonsvorm | boolean | true | Whether the student must underline the persoonsvorm. |
| Model answer | correctAnswer | string | — | SentenceParse JSON containing tokens, ordered gapless segments, labels, and persoonsvorm. This field is hidden from the student-facing front-end. |
Sequence
Arrange items in the correct order.
ID: examplary.expansion.sequence
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Options | options | string-array | — | The items that the student should rearrange, in the correct order. Can contain simple HTML markup. |
Upload file
Requires student to upload a file.
ID: examplary.expansion.upload-file
Capabilities: AI generation, AI grading, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Accepted file types | acceptFileTypes | */*, application/pdf, .doc,.docx,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, image/* | */* | The types of files that students are allowed to upload. Should be one of the enum values specified below. |
Voice recorder
Ask the student to record a spoken answer.
ID: examplary.expansion.voice-recorder
Capabilities: AI generation, AI grading
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Maximum recording length | maxDurationSeconds | number | 300 | Maximum recording length in seconds. |
Javascript
Ask the student to write a Javascript program to solve a problem.
ID: examplary.programming.javascript
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Assertions | assertions | string | expect(result).toEqual([1, 2, 3]); | The assertions to check the student's code against. |
| Initial value | initial-value | string | const result = ""; | The initial value to use for the code execution. |
Persona chat
Let the AI play a character - tutor, customer, debater - and hold a conversation with the student.
ID: persona-chat
Capabilities: AI generation, AI grading, AI-powered
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Persona | persona | knowledge-examiner, socratic-tutor, language-tutor, conversation-partner, math-tutor, debater, devils-advocate, curious-novice, quiz-master, job-interviewer, customer, client-briefing, patient, social-work-client, helpdesk-caller, historical-figure, journalist, lab-partner, code-reviewer, philosopher, case-examiner, investor, writing-coach, story-partner, municipal-official | knowledge-examiner | The character the AI plays in the conversation. Each persona carries its own system prompt describing how it behaves. Must be one of the option values below. |
| Instructions | instructions | string | — | Instructions for the AI character, as HTML. Must describe both the scenario (the situation, the topic and what the character should get the student to do) and the completion criteria (what the student has to have shown before the conversation may end, as a <ul> list). Never shown to the student. |
| Instructions written with AI | instructionsAiUsed | boolean | false | Internal flag set when the teacher has used the AI button on the instructions field. Do not set this when generating a question. |
| AI starts conversation | aiStarts | boolean | false | Whether the AI character sends the first message. Enable it when the scenario naturally opens with the character speaking (an interviewer welcoming the candidate, a patient describing a complaint); leave it off when the student is expected to open the conversation. |
| Maximum number of responses | maxTurns | number | 10 | The maximum number of messages the AI character may send. The conversation always ends with the AI's closing message once this budget is used up. |
Short answer
A question that requires a short text response.
ID: single-line-text
Capabilities: AI generation, AI grading, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Maximum length | maxLength | number | — | The maximum number of characters allowed in the answer - optional. Don't include unless relevant. |
Long answer
A question that requires a multi-line text response.
ID: multi-line-text
Capabilities: AI generation, AI grading, QTI 3.0 export
Multiple choice
A question where students select one correct answer from multiple options.
ID: multiple-choice-single-answer
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Multiple choice answer options | options | string-array | — | An array of option strings that represent the choices to the student. Each value can contain HTML and <inline-math> tags. |
| Correct answer | correctAnswer | string | — | The correct answer. Must be an exact copy of one of the strings in options, including punctuation, capitalisation and any HTML or <inline-math> tags, because scoring compares the strings directly. |
| Shuffle answer options | shuffleAnswers | boolean | false | Whether to show the answer options in random order each time. |
Checkboxes
A question where students can select multiple correct answers from the available options.
ID: multiple-choice-multiple-answers
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Multiple choice answer options | options | string-array | — | An array of option strings that represent the choices to the student. Each value can contain HTML and <inline-math> tags. |
| Correct answer(s) | correctAnswer | string-array | — | The correct answers; there can be more than one. Each entry must be an exact copy of one of the strings in options, including punctuation, capitalisation and any HTML or <inline-math> tags, because scoring compares the strings directly. |
| Shuffle answer options | shuffleAnswers | boolean | false | Whether to show the answer options in random order each time. |
Picture choice
Students select one of a set of images as the correct answer.
ID: picture-choice
Capabilities: Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Picture choice answer options | options | string-array | — | An array of image URL strings that represent the choices to the student. |
| Correct answer | correctAnswer | string | — | The correct answer. Must be an exact copy of one of the image URLs in options. |
True/false
A question that requires students to choose between true or false.
ID: true-false
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Correct answer | correctAnswer | true, false | — | The correct answer to the question, either 'true' or 'false' (as a JSON string!). |
Essay
Prompt the student to write a long answer, often using headings and text formatting.
ID: essay
Capabilities: AI generation, AI grading, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Minimum word count | minWords | number | — | — |
| Maximum word count | maxWords | number | — | — |
Formula
A question that requires a mathematical expression as response.
ID: examplary.expansion.formula
Capabilities: AI generation, AI grading
Math notebook
A question where students show their work across multiple lines of math, with the final line as the answer.
ID: examplary.expansion.math-notebook
Capabilities: AI generation, AI grading
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Initial number of lines | initialLines | number | 4 | The number of empty lines shown to the student at the start, including the final answer line. Students can add more lines, and printed sheets show exactly this many. Set it to roughly the number of steps the worked solution needs. |
Date or year
Ask the student to enter a year (e.g. 1925).
ID: date-year
Capabilities: AI generation, Auto-scoring, QTI 3.0 export
Settings:
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Date type | dateType | full-date, year | — | The type of date to expect (e.g. year only, full date). |
| Correct answer | correctAnswer | string | — | The correct answer to the question, which can be a year (e.g. 1925) or a full date (e.g. 1925-12-31), based on the dateType setting. |