Matrix question

Question types ::: qtype_matrix
Maintained by Laurent Opprecht, Nicolas Dunand
Matrix question type.
Latest release:
1370 sites
44 fans
Current versions available: 4

Matrix question type. Adds support for k' grading as well as a streamlined user interface.

This question type allows the teacher to define the rows and columns that make up a matrix. Students can select either multiple or single answers per row, depending on how the question has been configured. Each row receives a grade defined by one of the grading methods. The final grade for the question is an average of their grades for each of the rows.


Screenshot #0


Laurent Opprecht (Lead maintainer)
Nicolas Dunand: Developper
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Jürg Hoerner
    Mon, Nov 5, 2018, 5:33 PM
    Hi thanks for this question type. It works usually fine. If I like to make more columns are not well visible on the right side in edit mode.

    Tue, Jan 15, 2019, 5:16 PM

    the plugin is not compatible with version 3.6.1 sad
    Thu, Jan 17, 2019, 2:04 AM
    I already had version 3.0 and when I downloaded the latest version of moodle 3.6 the plugin was not compatible knowing that I have a lot of exercise that contains this type of question, it displays the following error:

    Debug info: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'rows
    INNER JOIN mdl_question_matrix ' at line 4
    SELECT weights.*
    FROM mdl_question_matrix_weights AS weights
    rowid IN (SELECT FROM mdl_question_matrix_rows AS rows
    INNER JOIN mdl_question_matrix AS matrix ON rows.matrixid =
    WHERE matrix.questionid = 454)

    colid IN (SELECT FROM mdl_question_matrix_cols AS cols
    INNER JOIN mdl_question_matrix AS matrix ON cols.matrixid =
    WHERE matrix.questionid = 454)

    [array (
    Error code: dmlreadexception
    Stack trace:

    line 486 of /lib/dml/moodle_database.php: dml_read_exception thrown
    line 1245 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
    line 286 of /question/type/matrix/libs/question_matrix_store.php: call to mysqli_native_moodle_database->get_records_sql()
    line 145 of /question/type/matrix/questiontype.php: call to question_matrix_store->get_matrix_weights_by_question_id()
    line 106 of /question/type/matrix/questiontype.php: call to qtype_matrix::retrieve_matrix()
    line 931 of /lib/questionlib.php: call to qtype_matrix->get_question_options()
    line 1000 of /lib/questionlib.php: call to _tidy_question()
    line 164 of /mod/quiz/attemptlib.php: call to get_question_options()
    line 169 of /mod/quiz/locallib.php: call to quiz->load_questions()
    line 2403 of /mod/quiz/locallib.php: call to quiz_start_new_attempt()
    line 111 of /mod/quiz/startattempt.php: call to quiz_prepare_and_start_new_attempt()

    Help me please
  • Roger Rousseau
    Thu, Jan 17, 2019, 7:07 AM
    I work with 3.4, since last update of the qtype_matrix plugin, i experience some troubles, as no Matrix/Kprime Kprime can be read, and i get the folowing message " Erreur de programmation détectée. Ceci doit être corrigé par un programmeur : This behaviour (interactivecountback) cannot work with this question (qtype_missingtype_question)"
    Is that a known error ?
  • Nicolas Dunand
    Thu, Jan 17, 2019, 3:09 PM
    This is an incompatibility with MariaDB, which has been fixed in today's release: 3.5.2 for Moodle 2.7-3.6 (Build: 2018050702)
  • Nicolas Dunand
    Thu, Jan 17, 2019, 3:12 PM
    Hi Roger,
    Could you open an issue on the bug tracker for the plugin? I'll have to look at it more closely, but basically it seems this question type does not support (yet) the 'interactivecountback' behaviour, which is set in your quiz activity details.
    Fri, Jan 18, 2019, 9:40 PM
    Thank you Nicolas for your help.
  • Jürg Hoerner
    Tue, May 14, 2019, 9:13 PM
    Problem: Export works well, if reimport question with a matrix question the following error on postgres:

    Debug info: ERROR: null value in column "grademethod" violates not-null constraint
    DETAIL: Failing row contains (116, 26258, null, null, 0, 1, matrix).
    INSERT INTO mdl_question_matrix (questionid,multiple,grademethod,use_dnd_ui,shuffleanswers,renderer) VALUES($1,$2,$3,$4,$5,$6) RETURNING id
    [array (
    'questionid' => 26258,
    'multiple' => NULL,
    'grademethod' => NULL,
    'use_dnd_ui' => '0',
    'shuffleanswers' => '1',
    'renderer' => 'matrix',
    Error code: dmlwriteexception
    Stack trace:
    line 489 of /lib/dml/moodle_database.php: dml_write_exception thrown
    line 248 of /lib/dml/pgsql_native_moodle_database.php: call to moodle_database->query_end()
    line 969 of /lib/dml/pgsql_native_moodle_database.php: call to pgsql_native_moodle_database->query_end()
    line 1017 of /lib/dml/pgsql_native_moodle_database.php: call to pgsql_native_moodle_database->insert_record_raw()
    line 57 of /question/type/matrix/libs/question_matrix_store.php: call to pgsql_native_moodle_database->insert_record()
    line 210 of /question/type/matrix/questiontype.php: call to question_matrix_store->insert_matrix()
    line 456 of /question/format.php: call to qtype_matrix->save_question_options()
    line 123 of /question/import.php: call to qformat_default->importprocess()

  • Hanzel Grillo Espinoza
    Sat, Sep 21, 2019, 3:45 PM
    Mr. Dunand
    I am using this question type in Moodle 3.7 and I have some issues with the feedback. First I typed the feedback for every option and when I save the question, the already written feedback just disappeared, only one of the options saved the feedback. Also, once I used the question preview, and I sent the answers in order to see the feedback, it was not shown at all..
    How can I fix this issue?
  • Silviu E. Sandulache
    Fri, Oct 18, 2019, 6:21 PM
    Does the plugin support Multilanguage V2 support? The {mlang} are rendered as such. Any plan to integrate it?
  • Al
    Sun, Jan 24, 2021, 6:03 AM
    Is there any chance you make the plugin so that when you update moodle it automatically downloads the plugin as part of the upgrade? This would save so much time as currently when you upgrade it just says, "Additional Missing from disk!". Thank you so much.
  • Nicolas Dunand
    Mon, Feb 1, 2021, 3:37 PM
    Hello Al, I think this is not doable within the plugin itself, but only depends on how to process with the upgrade. All your other third-party plugins should behave in the same way. As detailed in , "if you had installed any plugins on your site you should add them to the new code tree".
  • Rachael Rose
    Tue, Mar 15, 2022, 9:44 PM
    Can Combine Feedback be made into a box like the General Feedback box? We have information that we use in quizzes that requires the Combine Feedback and General Feedback to be separate. Using the "Feedback" section next to the answer options provided poses an issue if we shuffle the answer options and/or if we have a large amount of information it doesn't give a final look we are happy with.
  • guigonis vincent
    Sun, Jun 5, 2022, 12:43 AM

    Thanks for this useful plugin.

    I was wondering if there are possibilities to get access to an overview of all the answers of all the students to a specific question.

    I didn't find such a possibility in the stats section of the test.

    If such a possibility doesn't exist, is someone aware of a SQL request that can provide such an overview through a configurable report ?

    Thanks for the input

  • marco caparvi
    Fri, Jan 13, 2023, 3:14 AM
    Wonderful plugin, I get an error on Moodle 4.1 (error when reading database)
1 2 3
Please login to post comments