This repository has been archived by the owner on Sep 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjsonSchema.json
147 lines (147 loc) · 5.15 KB
/
jsonSchema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Course Schedule",
"description": "Information about the course schedule of a course in uoZone",
"type": "array",
"items": {
"$ref": "jsonSchema.json#/definitions/Term"
},
"definitions": {
"Term": {
"type": "object",
"description": "Information about the term, in regards to a schedule",
"properties": {
"level": {
"description": "The level of studies, which is either undergraduate or graduate",
"type": "string"
},
"trimester": {
"description": "The academic term, which is either fall, winter, or spring/summer",
"type": "string"
},
"year": {
"description": "The year of the academic term",
"type": "string"
},
"courses": {
"type": "array",
"items": {
"$ref": "jsonSchema.json#/definitions/Course"
}
}
},
"required": [
"level",
"trimester",
"year"
]
},
"Course": {
"type": "object",
"description": "Information about the course",
"properties": {
"name": {
"description": "The name of the course",
"type": "string"
},
"code": {
"description": "The code of the course, the first three characters define the type of the course and the four last number is the number of the course",
"type": "string"
},
"grading": {
"description": "The level/type of the course, e.g. first year courses",
"type": "string"
},
"grade": {
"description": "The grade the person got in the course",
"type": "string"
},
"status": {
"description": "The status of enrolment in the course",
"type": "string"
},
"units": {
"description": "...",
"type": "string"
},
"classes": {
"type": "array",
"items": {
"$ref": "jsonSchema.json#/definitions/Class"
}
}
},
"required": [
"classes",
"code",
"status",
"units",
"grading",
"name"
]
},
"Class": {
"type": "object",
"description": "Information about the classes that are in the course",
"properties": {
"classNumber": {
"description": "The identification number of the class",
"type": "string"
},
"section": {
"description": "",
"type": "string"
},
"address": {
"description": "The address of the building where the class is going to be",
"type": "string"
},
"type": {
"description": "Specifies whether its a lecture, a tutorial, or a laboratory",
"type": "string"
},
"weekday": {
"description": "The day of the week the class will take place",
"type": "string"
},
"building": {
"description": "The three letter acronym of the name of the building",
"type": "string"
},
"room": {
"description": "The room number of the class",
"type": "string"
},
"instructor": {
"description": "The name of the person teaching the class",
"type": "string"
},
"startTime": {
"description": "The time in which the class starts",
"type": "string"
},
"endTime": {
"description": "The time in which the class ends",
"type": "string"
},
"startDate": {
"description": "The date that the class starts",
"type": "string"
},
"endDate": {
"description": "The date that the class ends",
"type": "string"
}
},
"required": [
"address",
"classNumber",
"startDate",
"endDate",
"instructor",
"type",
"section"
]
}
}
}