Skip to content

Latest commit

 

History

History
75 lines (50 loc) · 4.72 KB

File metadata and controls

75 lines (50 loc) · 4.72 KB

Contribution Registry

Contribution registry stores the information about the individual contributors, organizations and the roles of various users in the organization. It also stores the metadata of the project scope.

Contributor Organization

When user enrolls as a Contributor Organization, Contribution Registry stores the User, Org and User_Org Schemas. User gets added as the organization admin, who has the privilege to invite other users to join this organization from contribution portal. These users can be called as Contributor Organization Users.

An Organization admin can:
- nominate their organization for contributing to a project
- invite users to contribute to their projects
- assign contributors or reviewers to their project
- review contributions done by contributors

Users who accept the invite to join the organization to contribute content are given contributor roles within that organization. Admin can also grant 'Reviewer' roles to these contributors.

Individual Contributor

When a user enrolls as an Individual Contributor, only User schema is added to the Contribution Registry.

An Individual Contributor can :
- contribute the content by nominating to the respective project as an individual.\

API documentation

Click here to know in detail about the APIs that power these workflows.

Schemas in the contribution Registry

User Schema :

User schema stores the information about User. If the user is an individual contributor this schema has roles column set as ["individual"], for contributor Org Admin it is set to ["admin"], for and for a contributing Org User it is set to ["User"]. It also adds up all the mediums, subjects, and classes a user is contributing to and update those values here.

Key Value
@type User
userId user identifier from the diksha profile of the User
firstName firstname from the diksha profile of the User
lastName lastName from the diksha profile of the User
channel Channel from the diksha profile of the User
enrolledDate Date of enrollment
osid Unique Id given to the User in the registry
roles []
gradeLevel []
medium []
subject []

Org :

Org schema stores the information about Contributing Organization, which is given by contributing Org Admin while enrolling.

KeyValue
@typeOrg
nameName of the Organization
descriptionDescription of the Organization
codecode generated from the name of the Organization
osidUnique Id given to the Org in the registry
orgId
type

User_Org :

User_Org schema stores the mapping of the user and Contributing Organization. The roles param decide whether the user is a normal contributing user or the admin of the Organization.

Key Value
@type User_Org
orgId osid of the Org
userId osid of the User
roles

role user belongs to in the Org. can be one or many from ["admin" , "user" ,
"sourcing_admin", "sourcing_reviewer"]

osid Unique Id given to the User_Org mapping in the registry

Source code

{% embed url="https://github.com/Sunbird-RC/open-saber" %}

\