"SelectCompletion" (Question Interface Type)
"SelectCompletion"
provides a fill-in-the-blank interface with choices for each blank.
Properties
- In QuestionInterface["SelectCompletion",props], props is an Association that supports the following keys:
-
"Prompt" None text asking the user a question "Template" (required) template object with slots to be filled "Choices" Automatic available choices for each slot "ChoiceOrdering" Automatic function for ordering choices "Labels" Automatic corresponding labels for each choice - The "Template" can be any content supported by TemplateObject or StringTemplate. When providing a string, template slots denoted by backticks `` define locations for blanks in the question interface.
- By default, the "Choices" are inherited from the AssessmentFunction and randomly sorted to avoid exposing the correct answer.
- When provided directly, "Choices" should have the form {{item1a,item1b,…},{item2a,item2b,…},…} where each sublist contains the available choices for a blank in the interface. By default, the order will be maintained as provided.
- When "ChoiceOrdering"f is specified, the items will be presented as {f[{item1a,item1b,…}],f[{item2a,item2b,…}],…}.
Corresponding AssessmentFunction
- "SelectCompletion" is not an automatically assigned interface type for any AssessmentFunction. It must be specified in QuestionInterface.
- The values vali in AssessmentFunction[{val1,…},…] should contain the answers for each slot in order.
- The assessment function should be structured as AssessmentFunction[{{elem1a, elem2a,…}scorea,{elem1b,elem2b}scoreb},…] where each list {elem1i,elem2i,…} is a value in the answer key defining a possible correct or incorrect answer.
Examples
open allclose allBasic Examples (3)
Define a select completion question with assessment:
Specify the choices directly instead of inheriting from the AssessmentFunction:
Scope (3)
Generalizations & Extensions (2)
Applications (2)
Possible Issues (2)
The values in the AssessmentFunction should be lists. Submitting an answer to this invalid assessment will fail:
Specify the answer key values as a list instead:
The TemplateObject created by StringTemplate contains options incompatible with "SelectCompletion":
Attempting to use this template will create a broken interface:
Now the template works in "TextCompletion":
Alternatively, use TemplateObject directly instead of StringTemplate:
This template does not have any options settings:
It works in "SelectCompletion":