Choice matrix choicematrix

Choice matrix (choicematrix)

Allows learners to choose answers from a table of prompts and answers.

The choice matrix Question is referenced by its type in the code, which is "choicematrix".

Examples

{
    "response_id": "60028",
    "type": "choicematrix",
    "stimulus": "Which statement is true?",
    "options": ["True", "False"],
    "stems": [
        "Sydney is the capital city of Australia.",
        "Darwin is the capital of the Northern Territory",
        "Queensland is the largest state in Australia."
    ],
    "validation": {
        "scoring_type": "exactMatch",
        "valid_response": {
            "value": [1, 0, 1],
            "score": 1
        }
    },
    "ui_style": {
        "type": "inline",
        "option_width": "150px"
    }
}

Attributes

  • type string

    Defines the Question type to be rendered.

    Must be set to "choicematrix" in this case.

  • is_math boolean

    Set to true to have LaTeX or MathML contents to be rendered with mathjax.

    Default: false

  • metadata object

    Object containing additional information about the question.

  • metadata.distractor_rationale string

    Used to display individual response feedback/rationale to the student.

  • metadata.rubric_reference string

    A unique identifier for the rubric to be used with the question - defaults to course rubric if assigned in activity

  • metadata.sample_answer string

    A sample answer to be displayed on the Learnosity Reports API. HTML is supported.

  • metadata.acknowledgements string

    References for any text passages, documents, images etc. used in the question.

  • metadata.distractor_rationale_response_level array

    Used to display individual response feedback/rationale to the student.

  • stimulus string

    The question stimulus. This can include text, tables, images, resources and LaTeX entered via the Math Editor.

  • stimulus_review string

    HTML/Text content displayed only in review state rendered above the response area. Supports embedded Feature <span> tags. Will override stimulus in review state.

  • instructor_stimulus string

    HTML/Text content displayed when showInstructorStimulus is set to true on the activity. Supports embedded Feature <span> tags.

  • ui_style object

    Object used to control different aspects of the UI

  • ui_style.fontsize string

    Controls the size of base font for this question. Options are among 'small', 'normal', 'large', 'xlarge' and 'xxlarge'.

    Default: "normal"

  • ui_style.type string

    Choose a presentation type for the table.

    Default: "table"

    Possible values

    • "inline" - prompts are inside the table beside each option.
    • "table" - prompts are shown in the column header.
  • ui_style.stem_width string

    The width of the stem column, in pixels.

    Example: 120px

  • ui_style.option_width string

    The width of the possible response columns, in pixels.

    Example: 120px

  • ui_style.stem_title string

    The title for the prompt column.

  • ui_style.option_row_title string

    An additional title that appears above the response columns.

  • ui_style.horizontal_lines boolean

    Controls whether horizontal lines should be shown underneath each prompt row.

    Default: "false"

  • feedback_attempts number

    If instant_feedback is true, this field determines how many times the user can click on the 'Check Answer' button. 0 means unlimited.

    Default: 0

  • instant_feedback boolean

    Flag to determine whether to display a 'Check Answer' button to provide instant feedback to the user.

    Default: false

  • validation object

    In this section, configure the correct answer(s) for the question.

  • validation.allow_negative_scores boolean

    Negative scores will be normalised to zero by default. Allowing negative scores, on the other hand, means that the score can drop below zero when penalties are applied.

    Default: false

  • validation.penalty number

    Value indicating the marks deducted for an incorrect response.

    Default: 0

  • validation.min_score_if_attempted number

    Positive value indicating the minimum score if a student attempted the question.

    Default: 0

  • validation.scoring_type string

    The way in which marks are distributed for the question.

    Default: "exactMatch"

    Possible values

    • Exact Match - All parts of the question must be answered correctly to receive a mark.
    • Partial Match Per Response - Each correct response element will be awarded an individual score.
    • Partial Match - Each correct response element will be scored individually, and the overall question score will be divided between responses.
    • NCLEX scoring by column - In each individual column, correct responses and incorrect responses (including penalty points) are tallied, with a floor score of 0. The overall score is the aggregate of all columns.
  • validation.unscored boolean

    When enabled, this option will remove all scoring from the question. This is useful for creating practice questions.

    Default: false

  • validation.valid_response object

    An object containing the valid response score and value.

  • validation.valid_response.score number

    Score awarded for the correct response(s).

    Default: 1

  • validation.valid_response.value array[array]

    Defines the correct answers corresponding to the correct response indexes in the array.

    Default: []

  • validation.valid_response.value[ ] array[number]

    The correct answer(s) as indexes for the row.

  • validation.automarkable boolean

    Defines whether the question will be marked automatically, or must be marked manually.

    Default: true

  • validation.alt_responses array

    Add an alternate response if there is more than one correct overall solution to a question.

  • validation.alt_responses[ ].score number

    Score if the alternative response is correct.

    Default: 1

  • validation.alt_responses[ ].value array

    Default: []

  • shuffle_options boolean

    Controls whether to shuffle the prompt order.

    See Shuffle Options (Questions API, front end) for more information.

    Default: false

  • options array[string]

    Defines the response options for each column in the table.

    Example: ["Yes", "No"]

  • multiple_responses boolean

    Controls whether the learner can select multiple responses in the same row. The radio buttons will be converted into checkboxes. By default, learners can only select one response per row.

    Default: false

  • stems array[string]

    Defines the prompts for each row in the table.

Response format

The data returned in the response format for this Question is an array of integers, which represent the choices that the learner made for each row.

Response format examples

{
    "value": [
        [1],
        [0],
        [1]
    ],
    "type": "array",
    "apiVersion": "v2.173.0",
    "revision": 1,
    "feedbackAttemptsCount": 2
}

Response attributes

  • value array[array[number]]

    Contains the choice(s) that the learner made for each row in the table, as array indexes.

    In the example above, the learner chose the second option (false) in the first row, the first option (true) in the second row, and the second option (false) in the third row.

  • type string

    Informs the scoring engine about what kind of data to expect in the values entered by the student. For this Question type, you must always supply a string for this attribute with the value "array".

  • apiVersion string

    The version of the Questions API that returned this reponse.

  • revision numeric

    Keeps track of the number of Question attempt submissions, i.e. how many times the student answered the Question and submitted it.

  • feedbackAttemptsCount numeric

    Keeps track of the number of feedback attempts.

Was this article helpful?

Did you arrive here by accident? If so, learn more about Learnosity.