Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

...

Question metadata which has some differences from the QuML specs are:-

  • responseDeclaration

  • media

responseDeclaration

Currently, the response declaration is 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": {
      		"cardinality": "single",
      		"type": "integer",
      		"correctResponse": {
          			"value": "0",
      
		},
		"mapping": [{
			"response": 0,
			"outcomes": {
				"mappingscore": []
  1
			}
		}]
	}
},
"outcomeVariables": {
  "maxScore": 1,
}

...

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,
}

...

With Migration

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

Without Data Migration

...

For the new question creation, We will store the maxScore inside the outcomeVariables property.

...

We will store the maxScore inside the outcomeVariables property for new question creation using v2 API.

  • Without Data Migration (Recommended)

    • We will do these changes as part of the v2 API and will give the data in the above format.

    • The old quml-player mobile app will not be supported to play questions created using the v2 API.

    • If a user edits the old question using v2 API, We will store the maxScore inside the outcomeVariables and remove the maxScore from the responseDeclaration.

  • With Migration (Not Recommended)

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

    • This solution is not recommended because, with the migration of old questions, the old mobile app will break.

Player Changes:
  • The player will check if the question is having the outcomeVariables in the metadata of the question and what’s the maxScore value present in it.

  • if If the outcomeVariables property is found then the player will use it as is it.

  • If the question does not have the outcomeVariables property in the metadata then the player will look for the maxScore property in the responseDeclartion.

media

Currently, Question metadata contains media in the below format:

...

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

  • timeLimits

timeLimits

Time limits are currently being stored in the question set metadata as below:

...