Introduction

Object

This is the master definition for Types of items that are supported on sunbird.
Example from education - Question set is an object
Analogous example from the real-world - A foot wear is an object

An object is the core system entity through which any type of asset is managed. Services such as creation, modification, publishing, discovery, consumption - are built around the core objects.

Since an object is the core entity that can be used across multiple use cases in multiple ways, it has to be defined, managed and support wide variety of behaviors, in a very generalized way, so that it can be easily reused in wide range of use cases.

Category

This represents the actual items that are defined and created based on different use cases.

Unlike an Object, which is a core entity of the system, a category is just a “label” tagged to an object and can defined a specific set of properties and behaviors - which are a subset of those supported by the object.

Hence, categories are completely driven by configuration, without any category specific logic implemented in the code.

Example from education - Exam Question paper, Practice Worksheet, Quiz each one is a category of the object type Question set
Analogous example from the real-world - A Shoe, Sandal, Flip-flops each one is a category of the object type foot wear

Following pages provide details of the various types of objects that are part of sunbird and a default set of categories configured.

For further explanation of objects and categories can be found in the following videos:

https://www.youtube.com/watch?v=WxZXaTnj2D0&t=7s

https://www.youtube.com/watch?v=n9H87z0-7eU&t=1709s

https://www.youtube.com/watch?v=xgvZUfYrxmQ