Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Bulk Upload Questions

https://project-sunbird.atlassian.net/browse/SB-22801

...

  1. Support Multiple Choice Question (MCQ) with validations such as

    1. Minimum 2 options, maximum 8 options

    2. At least and only one correct option

  2. Question and Options can have images. Google Drive path for image is provided by user which is extracted by system (bulk upload tool). This is already available as a component. Read more here.

  3. Every question can have following details (metadata)

    1. Name

    2. Taxonomy Framework Categories: Board, Medium, Class, Subject, Topic, Learning Outcome. These will derived from the Question set if questions are being uploaded within a question set.

    3. Keywords

    4. Author

    5. Attributions

  4. User provides CSV in the prescribed format filled with required details

  5. Basic validations such as

    1. Text contains only unicode characters

    2. Any cell does not contain any images

    3. All mandatory columns are filled for a particular row in CSV

...

  1. Level 1 Question Set Unit

  2. Org_FW_topics

  3. Target_FW_Medium

  4. Target_FW_gradeLevel

  5. Target_FW_subject

  6. Target_FW_topic

Bulk Upload Questions template

https://docs.google.com/spreadsheets/d/1ndzapGGV6q8698x-NQzK_ufln4YX1HQ09jsFsC7kA60/edit?usp=sharing

Reference material

  1. Bulk Upload Content related /wiki/spaces/DO/pages/1581350917

    1. https://project-sunbird.atlassian.net/browse/DP-18

    2. https://project-sunbird.atlassian.net/browse/DP-947

    3. https://project-sunbird.atlassian.net/browse/DP-967

    4. https://project-sunbird.atlassian.net/browse/DP-1480

Implementation details

  1. Create a generate QuML API for various interaction types such that it takes required parameters as input and generate a QuML output. For example, Multiple Choice Question fundamentally contains Question, Options, and Correct Answer. The API takes these 3 as inputs in HTML or JSON format and generates a QuML spec. This also allows QuML to evolve rapidly as just by updating this ‘Generate QuML’ API with latest QuML spec, we can upgrade various places where Questions & Question sets are getting created such as Question Set Editor, Bulk Upload Questions & Question sets.

    1. This logic exists today ingrained in the Question creation component. It needs to be extracted out and made available as API / something.

...

Question Set APIs:

http://docs.sunbird.org/latest/apis/questionapi//#tag/QuestionSet-APIs

Question APIs:

http://docs.sunbird.org/latest/apis/questionapi//#tag/Question-APIs