Feature Wiki

Information about planned and released features

Tabs

Revise Matching Question Creation Process

This feature request is part of (Project) Revision of Test Question Creation.

1 Initial Problem

The set of questions available has grown organically over many years. There are redundancies and inconsistencies and the forms to edit the questions are based on a lot of custom code based on the legacy forms featuring many unique concepts, like forms that are rendered by javascript on the client.

There is a clear need to bring this process back in alignment with the current way of doing things in ILIAS, to remove redundancies, and rectify inconsistencies.

2 Conceptual Summary

  • This Feature Request follows the guidelines set by Revision of ILIAS Test Question Creation Process and fleshed out for the answer form type "Cloze" in Revise Cloze, Long Menu, Numeric, and Text Subset Question Creation Process.
  • This request is only concerned with question creation and structure. The form to answer a question will basically stay as is and only undergo some minor tweaks.
  • The form to set up the answer form will offer
    • a checkbox to enable shuffling of answer options,
    • a required numeric input to set the image size,
    • a required select input to select the matching method providing two options "One Term Matches One Definition (1:1)" (preselected), "One or More Terms match One or More Definitions (n:n)", and the new "One Term matches One or More Definitions (1:n)".
    • a required numeric input "Amount of Terms" set to four by default,
    • a required numeric input "Amount of Definitions" set to four by default
  • Saving this form will lead to a next step "Terms" containing a section per Term, containing an input to add a text for the term allowing for markdown and an input to add one single image. At least one of the two inputs needs to contain information.
  • Saving this form will then lead to a next step "Definitions" containing a section per Definition, containing an input to add a text for the term allowing for markdown and an input to add one single image. At least one of the two inputs needs to contain information.
  • If marking is requested in the context an additional form will be shown upon creation containing a section per term containing:
    • An input to select the corrersponding definition(s). Depending on the previously selected matching method, the input will either be of the type select (1:1) or multi select (n:n/1:n). If the matching method is set to 1:n it will be checked that each definition is only selected once.
    • A numeric input to input the available points for this selection.
    • The inputs are not required to allow the user to decide that a term has no assigned definition.
  • The overview page for the answer form will contain a panel showing the basic answer form properties, a view control with two or three entries "Edit Combinations", "Edit Terms", and "Edit Definitions". "Edit Combinations" will only be availble if the current context requires Marking. In this case "Edit Combinations" is the default and shows a data table showing all currently set combinations and the points they award. They have standard actions "Edit" and "Delete", allowing to edit or delete single or multiple combinations in one go. If no Marking is required in the current context, "Edit Terms" is the default. "Edit Terms" and "Edit combinations" contain a ordering table each listing the terms or definitions respectively. These tables also contain standard actions to "Edit" and "Delete" elements in one go. All tables additionally offer a button to add an entry labeled "Add Combination", "Add Term", or "Add Definition" respectively.
  • There are two options for the feedback:
    • To liberate resources for other tasks, the feedback could be reduced to only allow the general feedback for the best and any other response.
    • The feedback options could be enhanced to add an option to display a different feedback for a random set of combinations of terms and definitions. The implementation of this would probably be very similar to the one implemented for the answer form of type cloze, so that it should not create too much overhead, but there still is an overhead, so we would still suggest to not do this currently and leave it for a next iteration to reduce complexity and liberate some working time to address more pressing issues.

3 User Interface Modifications

3.1 List of Affected Views

  • All views of `assMatchingQuestionGUI`

3.2 User Interface Details

The first step of the form to create a matching answer form contains five inputs: A checkbox to enable shuffling terms and definitions, a numeric input for image size that is required and preset to 150 (hard coded), a select input for the matching mode and two numeric inputs to choose the amount of terms and conditions that should be created in the next steps.
The next two steps allow the users to first add the terms and then the definitions. The two forms are identical and contain the previously selected amount of elements each containing a markdown input labeled 'Text' and an image input labeled 'Image'.
The step to add the definitions is identical (apart from the section labels) to the form to add the terms and contains the previously selected amount of elements each containing a markdown input labeled 'Text' and an image input labeled 'Image'.
The fourth step is only shown, if the current context requires marking. It shows one section per term labeled with the previously given text for the term. If only an image and no text is provided, the label will be 'Image 1...'. Each section contains a select (1:1 matching) or a multi select (n:n matching) and a numeric input to add the points.
If the current context requires Marking, the question overview is set by default to show the available combinations of terms and definitions. It offers a button "Add Combination". This will open a prompt showing a select input to select the term, a select (1:1 matching) or a multi select (n:n matching) to select the corresponding definitions and a numeric input to set the points. All inputs are required. The form will check that there aren't multiple combinations linking the same term and definition.

3.3 New User Interface Concepts

  • Ideally a column  type 'Image' should be introduced for the DataTable as well as the OrderingTable to present the lists of terms and definitions more consistently

3.4 Accessibility Implications

The forms to create questions are based on legacy-ui-forms with a lot of custom inputs that have a huge amount of accessibility issues. By moving these forms to KS-Forms a lot of the issues should be resolved. Additionally it will be easier to address future accessibility issue.

4 Additional Information

4.1 Involved Authorities

If this request is related to multiple components, please list both authorities for all related components.

4.2 Technical Aspects

  • In the current implementation it is possible to save multiple combinations of identical terms and condition, ie. there might be one combination of "My Term" with "My Definition" awarding 1 point and a second one awarding 2 points. The new implementation must render this impossible as this leeds to undefined outcomes.
  • Additional technical aspects of this request are provided as part of the project. See: (Project) Revision of Test Question Creation .

4.3 Privacy

This feature request doesn't change the data that is collected and also doesn't change how it is presented. It clarifies the storage of answers by users answering questions, by doing so it will improve the understandability and the structure of the data thus making it easier to control the data's lifecycle.

4.4 Security

By moving to KS-Forms and restructuring and clarify the storage of data, the data will be easier to control and user inputs in the KS-Forms will be more consistently validated and sanitized on output.

4.5 Contact

Person to be contacted in case of questions about the feature or for funding offers: Strassner, Denis [dstrassner]

4.6 Funding

Funding status and funding parties are listed in the block 'Status of Feature' in the right column of this page.

If you are interested to give funding for this feature, please get into contact with the person mentioned above as 'Contact'.

5 Discussion

6 Implementation

Feature has been implemented by {Please add related profile link of this person}

6.1 Description and Screenshots

{ Description of the final implementation and screenshots if possible. }

6.2 Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

6.3 Privacy

Information in privacy.md of component: updated at {date} by {user} | no change required

6.4 Approval

Approved at {date} by {user}.

Last edited: 13. Aug 2026, 08:08, Kergomard, Stephan [skergomard]