Bulk Upload Questions
https://project-sunbird.atlassian.net/browse/SB-22801
...
Support Multiple Choice Question (MCQ) with validations such as
Minimum 2 options, maximum 8 options
At least and only one correct option
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.
Every question can have following details (metadata)
Name
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.
Keywords
Author
Attributions
User provides CSV in the prescribed format filled with required details
Basic validations such as
Text contains only unicode characters
Any cell does not contain any images
All mandatory columns are filled for a particular row in CSV
...
Level 1 Question Set Unit
Org_FW_topics
Target_FW_Medium
Target_FW_gradeLevel
Target_FW_subject
Target_FW_topic
Bulk Upload Questions template
https://docs.google.com/spreadsheets/d/1ndzapGGV6q8698x-NQzK_ufln4YX1HQ09jsFsC7kA60/edit?usp=sharing
Reference material
Bulk Upload Content related /wiki/spaces/DO/pages/1581350917
Implementation details
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.
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