...
Objective
The aim is that objects of type questionSet be used as target objects for sourcing projects without having to create them elsewhere.
Objects of type question be contributed and reviewed individually to such sourcing projects.
Background
Product requirements document. (Confluence Document)
...
Product mockups. (Google Slides)
Proposed Implementation
1. Sourcing
...
We will add an
enableQuestionCreation
attribute to the editor configurationWe will implement changes to be able to emit question set metadata on exiting the question set creation page
We will use a
target_type
ofquestionSets
to show/hide the changed UI for creating a program with a target questionSet.
2. Contribution
- Question Creation
...
We will create a new add-from-library Angular library to add questions from library to question sets.
Scope:
- In release-4.4.0
1. We will add one new attribute to the collection and questionSet KP schemas: reusedContributions
, which will contain the list of identifiers added to the collection via library
3. We will use this list of identifiers to detect whether a question has been added from library or not
- In release-4.3.0
We will invoke this library from the portal for an existing question set.
The question set and unit identifiers will be passed to the library, which will use the existing library and player components
On returning/saving, the library will emit the question identifiers that have been added
The portal will then make an update hierarchy call for the given section
Caveat: We will only add questions to the section that was passed to the library to begin with.
We will use the following components of the existing collection editor:
Library: We will need to enable the existing library components for objects of type
Question
Quml Player: We will need to support previewing QuML questions in the library component etc.
...