Versions Compared

Key

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

Introduction:

Item set should be a collection of questions where questions will have hasSequenceMember relationship with the member questions. Content should have association relationship with Item set.

...

  • Item set will be a collection of questions where each question will be linked to Item set with hasSequenceMember relationship where each relationship will have one index value.
  • Instead of linking to each questions, Content should be linked to Itemset with associatiedTo relationship.
  • Content will have one-to-one relationship with Item set.
  • Support for Itemset schema version 2 (V2) API

Item Set V2 API:

Create Item set:
POST: itemset/

...

v3/create

{
     "request": {
          "itemset": {
               "code":"",
               "title":"",
               "description":"",
               "language":["English"],
               "max_scoremaxScore":10,
               "type":"materialised",
               "owner":"",
               "difficulty_leveldifficultyLevel":"",
               "purpose": "",
          "sub_purpose     "subPurpose":"",
      "depth_of_knowledge         "depthOfKnowledge": "",
      "used_for         "usedFor":"",
               "copyright":"",
               "createdBy":"",
               "questionsitems":[{
                       "identifier":<question"assessmentItem_id>id"
               }]
          }
     }
}

Response:
{
    "id""api.itemset.create",
    "ver""1.0",
    "ts""2019-12-17T06:40:34ZZ",
    "params": {
        "resmsgid""d4f8a3be-85fa-453d-83c4-3f17da9dc27c",
        "msgid""a2a0f82d-2e85-4133-9f39-fd5d0e8409bb",
        "err"null,
        "status""successful",
        "errmsg"null
    },
    "responseCode""OK",
    "result": {
        "identifier""do_1129152191260999681109",
        "versionKey""123456789",
    }
}
Update Item set:
PATCH: itemset/

...

v3/update/{identifier}

{
     "request": {
          "itemset": {
               "title":"",
               "description":"",
               "language":["English"],
               "max_scoremaxScore":10,
               "type":"materialised",
               "owner":"",
        "difficulty_level       "difficultyLevel":"",
               "purpose": "",
               "sub_purposesubPurpose":"",
      "depth_of_knowledge         "depthOfKnowledge": "",
      "used_for         "usedFor":"",
               "copyright":"",
               "createdBy":"",
               "questionsitems":[{
                       "identifier":<question"assessmentItem_id>id"
               }]
          }
     }
}

Response:
{
    "id""api.itemset.update",
    "ver""1.0",
    "ts""2019-12-17T06:40:34ZZ",
    "params": {
        "resmsgid""d4f8a3be-85fa-453d-83c4-3f17da9dc27c",
        "msgid""a2a0f82d-2e85-4133-9f39-fd5d0e8409bb",
        "err"null,
        "status""successful",
        "errmsg"null
    },
    "responseCode""OK",
    "result": {
        "identifier""do_1129152191260999681109",
        "versionKey""123456789",
    }
}
Read Item set:
GET: itemset/

...

v3/read/{identifer}
Response:
{
    "id""api.itemset.read",
    "ver""1.0",
    "ts""2019-12-17T06:40:34ZZ",
    "params": {
        "resmsgid""d4f8a3be-85fa-453d-83c4-3f17da9dc27c",
        "msgid""a2a0f82d-2e85-4133-9f39-fd5d0e8409bb",
        "err"null,
        "status""successful",
        "errmsg"null
    },
    "responseCode""OK",
    "result": {
        "itemset": {
                "identifier": "",
                "title":"",
               "description":"",
               "language":["English"],
               "maxScore":10,
               "type":"materialised",
               "owner":"",
               "difficultyLevel":"",
               "purpose": "",
               "subPurpose":"",
               "depthOfKnowledge": "",
               "usedFor":"",
               "copyright":"",
               "createdBy":"",
               "versionKey":"",
               "items":[{
                    "identifier":"assessmentItem_id",
                    "name:"Test Assessment for MTF"
               }]
         }
    }
}
Retire Item Set:
DELETE: itemset/

...

v3/retire/{identifier}
{}

Response:

{
    "id""api.itemset.retire",
    "ver""1.0",
    "ts""2019-12-17T06:40:34ZZ",
    "params": {
        "resmsgid""d4f8a3be-85fa-453d-83c4-3f17da9dc27c",
        "msgid""a2a0f82d-2e85-4133-9f39-fd5d0e8409bb",
        "err"null,
        "status""successful",
        "errmsg"null
    },
    "responseCode""OK",
    "result": {
        "identifier""do_1129152191260999681109"
        "versionKey": "1234567"
    }
}
Review Item set:
POST: itemset/v3/review/{identifier}
{}

Response:

{
    "id""api.itemset.review",
    "ver""1.0",
    "ts""2019-12-17T06:40:34ZZ",
    "params": {
        "resmsgid""d4f8a3be-85fa-453d-83c4-3f17da9dc27c",
        "msgid""a2a0f82d-2e85-4133-9f39-fd5d0e8409bb",
        "err"null,
        "status""successful",
        "errmsg"null
    },
    "responseCode""OK",
    "result": {
        "identifier""do_1129152191260999681109"
        "versionKey": "1234567"
    }
}

Item set Publish API:

  • There will be Item set publish API which will publish the Itemset with a particular pkgVersion.
  • It will generated a html template (previewUrl: it is Itemset metadata) which will hold all the questions linked to item set at the time of Item set publish.
  • Currently Item set publish API will be exposed through Content Publish API - When content gets publish Item set will also get published.

...