Versions Compared

Key

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

Background

While comparing the existing inQuiry question and question set metadata with QuML specs we found a few gaps. Below are the properties having some differences from the QuML specs:

Question metadata which

...

has some differences from the QuML specs are:-

  • responseDeclaration

  • media

responseDeclaration

Editor Changes

Currently, the Response Declaration declaration is currently stored in the below format but there are two properties that are not allowed in it, which are: maxScore and  outcomes

Code Block
"responseDeclaration": {
       "response1": {
           "maxScore": 1, // maxScore is not allowed here
           "cardinality": "single",
           "type": "integer",
           "correctResponse": {
               "value": "0",
               "outcomes": {
                   "SCORE": 1
               } // outcome is not allowed here, only property ‘value’ is allowed
           },
           "mapping": []
       }
   }

Proposed Solution for responseDeclaration

Instead of keeping maxScore and outcomes in responseDeclaration we can store it in outcomeVariables as below:

...

Code Block
"responseDeclaration": {
       "response1": {
           "cardinality": "multiple",
           "type": "integer",
           "correctResponse": {
               "value": [0, 1],
           },
           "mapping": [{
                  "response": 0,
                  "outcomes": {
                    "score": 1
                  }
                },
                {
                  "response": 1,
                  "outcomes": {
                    "score": 1
                  }
                }
           ]
       }
   },
   "outcomeVariables": {
       "maxScore": 2,
   }

Implementation approach

  • With Migration

we can do the data migration for the old questions and update the question with above mentioned format.

...

For the live questions - player will first check if the question have outcomeVariables and what’s the maxScore value present in it, if outcomeVariables is not found player will check the maxScore in responseDeclartion to pickup the maxScore.

...

media

Currently question metadata question contains media in this format:

...

we can do the data migration for the old questions and update the question with above mentioned format.

  • Without migration

For the new question creation we will store the media in new format.

...

For the live questions - player will first check if the question media have mediaType property if not it will check in type property.Questionset

...

QuestionSet metadata which have some differences from the QuML specs is :-

  • timeLimits

timeLimits

Time limits is currently being stored in the question set metadata in below format:

...

Code Block
languagejson
timeLimits:
{
  "description": "Time limits for the complete set and/or for each question in the question set.",
   questionset: {
           min: number,
           max: number
   },
   question: {
           min: number,
           max: number
   }
}

Proposed Solution for timeLimits

We can set the limit for the complete question set as:

...