Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assessment schema #23

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
86 changes: 86 additions & 0 deletions schemas/Assesment.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"type": "object",
"properties": {
"Assessment": {
"$ref": "#/definitions/Assessment"
}
},
"required": ["Assessment"],
"title": "Assessment",
"definitions": {
"Assessment": {
"$id": "#/properties/Assessment",
"type": "object",
"title": "The Assessment schema",
"description": "A Assessment is an entity for stroin.",
"required": [],
"properties": {
"filter": {
"$id": "#/properties/filter",
"type": "string",
"title": "JSON string of filters selected for the assessment"
},
"type": {
"$id": "#/properties/type",
"type": "string",
"title": "Assessment type, spot assessment or exam"
},
"questions": {
"$id": "#/properties/questions",
"type": "array",
"title": "Array of question Id's against the assessment is given",
"items": {
"type": "string"
}
},
"assessmetsetId": {
"$id": "#/properties/assessmetsetId",
"type": "string",
"title": "Assesment set id"
},
"answersheet": {
"$id": "#/properties/score",
"type": "string",
"title": "JSON encoded QUML player response against the given questions of the assessment"
},
"score": {
"$id": "#/properties/score",
"type": "string",
"title": "Calculated score from the answer sheet"
},
"result": {
"$id": "#/properties/result",
"type": "string",
"title": "Result based on score"
},
"reviewerId": {
"$id": "#/properties/reviewerId",
"type": "string"
}
}
}
},
"_osConfig": {
"osComment": [
"This section contains the OpenSABER specific configuration information",
"privateFields: Optional; list of field names to be encrypted and stored in database",
"signedFields: Optional; list of field names that must be pre-signed",
"indexFields: Optional; list of field names used for creating index. Enclose within braces to indicate it is a composite index. In this definition, (serialNum, schoolCode) is a composite index and schoolName is a single column index.",
"uniqueIndexFields: Optional; list of field names used for creating unique index. Field names must be different from index field name",
"systemFields: Optional; list of fields names used for system standard information like created, updated timestamps and userid"
],
"privateFields": [],
"signedFields": [],
"indexFields": [],
"uniqueIndexFields": [],
"systemFields": [
"osCreatedAt",
"osUpdatedAt",
"osCreatedBy",
"osUpdatedBy"
],
"attestationPolicies": [],
"inviteRoles": ["anonymous"]
}
}
77 changes: 77 additions & 0 deletions schemas/Assessmentset.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"type": "object",
"properties": {
"Assessmentset": {
"$ref": "#/definitions/Assessmentset"
}
},
"required": ["Assessmentset"],
"title": "Assessmentset",
"definitions": {
"Assessmentset": {
"$id": "#/properties/Assessmentset",
"type": "object",
"title": "The Assessmentset schema",
"description": "A Assessmentset is an entity for .",
"required": [],
"properties": {
"title": {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@snehal0904 so essentially, for marks entry - there will be an assessment (or exam event - e.g., Final Exams March 2022) and there will be a marks entry.

  1. assessment - id {string}, name {string}, marks_entry_ids [array]
  2. marks_entry - id {string}, classes [array], subjects [array], entry_level {question level, subject level}

The CSV uploaded will populate the questions / max marks etc. which will populate the student exam score schema.

"$id": "#/properties/title",
"type": "string",
"title": "Assessment set title"
},
"questions": {
"$id": "#/properties/questions",
"type": "array",
"title": "Array of question Id's against the assessment set",
"items": {
"type": "string"
}
},
"worksheetId": {
"$id": "#/properties/worksheetId",
"type": "number",
"title": "Worksheet Id against assesment set"
},
"attempts": {
"$id": "#/properties/attempts",
"type": "number",
"title": "Number of times assesment is allowed to attempt"
},
"gradetype": {
"$id": "#/properties/gradetype",
"type": "string",
"title": "Assessmentset type, Ex - marks, boolean, grade"
},
"options": {
"$id": "#/properties/options",
"type": "string",
"title": "JSON encoded QUML player response against the given questions of the assessment"
snehal0904 marked this conversation as resolved.
Show resolved Hide resolved
}
}
}
},
"_osConfig": {
"osComment": [
"This section contains the OpenSABER specific configuration information",
"privateFields: Optional; list of field names to be encrypted and stored in database",
"signedFields: Optional; list of field names that must be pre-signed",
"indexFields: Optional; list of field names used for creating index. Enclose within braces to indicate it is a composite index. In this definition, (serialNum, schoolCode) is a composite index and schoolName is a single column index.",
"uniqueIndexFields: Optional; list of field names used for creating unique index. Field names must be different from index field name",
"systemFields: Optional; list of fields names used for system standard information like created, updated timestamps and userid"
],
"privateFields": [],
"signedFields": [],
"indexFields": [],
"uniqueIndexFields": [],
"systemFields": [
"osCreatedAt",
"osUpdatedAt",
"osCreatedBy",
"osUpdatedBy"
],
"attestationPolicies": [],
"inviteRoles": ["anonymous"]
}
}