Generalized Collection Editor

This page details the functionality of generalized collection editor that is part of sourcing solution.

Overview

Generalized collection editor can be used for creating, viewing and editing multiple types of learning assets that are objects of collection mime-type. They can be - a collection of content (like textbook, course, program etc.), a Question set (collection of questions) or any other object type that is a collection of other objects. The generalized collection editor will have following benefits:

  • Ensure all existing collection categories like textbook, course use the same code. The effort for maintaining different code is saved.

  • New collection categories can be enabled with minimal or no coding.

Following sections detail the functionality to be provided by the generalized collection editor.

View and Edit Metadata

Collection editor should have capability of viewing and editing metadata attributes at three levels:

  1. Root (at the collection/question set level)

  2. Folder Node (each node that is a folder in the hierarchy of the collection)

  3. Relational Metadata - The metadata of the relation between a folder and learning asset linked to it.

Metadata at a folder node level - as of now we can assume all the folders in the hierarchy will have same metadata.

Relational Metadata

This is the relational metadata that can be added to the relation between an asset and the folder to which it is linked. These attributes have to be stored as part of the relation between the asset and the folder to which it is linked. Some examples for such metadata are:

  • Schedule (start and end date) or Duration of the asset

  • “Track in collection progress” - Yes or No. This defines whether the progress of this asset should be considered as part of the progress of this collection

Note:

  1. Relation metadata attributes are completely different from metadata attributes of the asset that is being linked.

  2. The relational metadata is stored as part of folder to asset relation. So if the same asset is linked to multiple folders within the same collection, it will have different set of relational metadata stored for each link.

  3. The relation metadata can be modified as part of Collection modification. This means, the collection has to be in draft state, for the relation metadata to be modified.

Configuration

The set of attributes as well as the layout should be configurable. This is a mandatory config.

The set of attributes and layout is configured at a collection primary category level and applies to all types of assets that are linked to that collection primary category. There can be default value provided for the attributes.

Hierarchy

Following should be configurable as part of primary category definition related to collection hierarchy:

Number of maximum levels in the hierarchy

User should be able to add child folder nodes based on this. For example if this is configured as “2” for a collection category, user should not be able to create more than two levels in the hierarchy. Note: Root node is NOT considered as part of the hierarchy.

This is an option optional config. Default should be “4”. The maximum value that this configuration can take is also 4.

Labels for each level in the hierarchy

This provides the label to be displayed to each folder node at a given level in the hierarchy. This is given as hierarchy of level labels - with maximum number of levels as configured above. This is optional. Default shows a label “Unit”. An example of the configuration:

Chapter->Section->Subsection - This configuration specifies that, in this collection category:

  1. There are maximum 3 levels in the hierarchy

  2. Any folder node at level 1 will be labelled as “Chapter”. Any folder node at level 2 will be “Section”. Any folder node at level 3 will be “Subsection”

Linking Assets

Object types that can be linked to a level in the hierarchy

Based on this configuration, collection editor should display the corresponding list of categories of the configured object types, when user tries to either create and link a new asset to a folder node or link existing asset to a folder node. It can also be configured that no assets can be linked at a given level.

This is an optional configuration. Default is all categories of all object types for all levels of the hierarchy, including root.

An example configuration:

Root: <<None>> (no assets can be linked to the root)

Level 1: <<None>> (no assets can be linked to a level 1 node)

Level 2: Collection (assets that are of collection object type only be added to a level 2 node)

Leve 3: Content, Question Set (assets that are of content and question set object type only be added to a level 3 node)

Leve 4: Practice Worksheet, Explanation Content (assets that are of Practice Worksheet, Explanation Content content categories can only be added to a level 4 node)

Generating and Linking DIAL code

Option of generating and linking DIAL codes to collection should be configurable as part of primary category definition. The configuration can have an option “Enable DIAL code linking” that takes a yes or no values. This is an optional configuration. Default is “No”.

If this configuration is “Yes”, the collection editor should have option of generating DIAL codes and link to root and any folder node in the collection. Please refer to this page that gives details of DIAL code generation and linking

Common Functionality

Following are the functionalities that have to be provided by Collection Editor for any collection:

User has option to search for existing assets, select one or more of them and add to a folder node in the collection. An “Add from library” page is opened for the user to search and select existing assets to be linked.

The type of assets that can be linked is configured as part of primary category as detailed above. The list of assets that can be searched in the “Add from library” page should be based on that configuration. “Add from library” page always shows all assets that are in “live” state in the sourcing repository.

User has option to create a new asset and link it to a node through collection editor. “Create” option shows the categories of assets that can be created. This is based on the configuration of type of assets that can be linked. Selecting a category will launch the editor page of the selected category. Once the asset is created and saved using the editor page, the asset is automatically linked.

If the user has edit access for a linked asset, there should be an option to “Edit” the linked asset. It should open the corresponding editor. A creator of an asset will by default have access to Edit it.

Note: Through this process, an asset that is in “draft” state is also linked to the collection. However, the collection cannot be submitted for approval, unless all the linked assets are in “live” state.

Limiting maximum number of assets linked to a node

In both the scenarios - Link existing assets (Add from Library) or Create and link assets - there needs to be an upper limit on maximum number of assets that can be linked to nodes in a collection (at any level of hierarchy).

This limit is driven by the technical considerations for providing smooth & fast performance for consumers. We need to support configurable limits for various object types at system level, e.g. Max number of question = 500, Max number of content = 1200.

This limit would apply in context to both “Create and link an asset to a node” and “Link existing assets to a node”

Create hierarchy through a csv

There is an option to create the entire collection hierarchy of the collection through a csv. This is a one time option only and there are some nodes created in the collection hierarchy, this option is disabled. The csv is similar to what exists currently for textbooks. The functionality is detailed in this page:

Download hierarchy csv

There is an option to download the hierarchy of a collection in the form of a csv. This csv will contain the metadata of each node and linked assets. It is similar to what exists currently for textbooks. The functionality is detailed in this page:

Update collection metadata and linked assets through a csv

There is an option to update metadata and linked assets through a csv. It is similar to what exists currently for textbooks. The functionality is detailed in this page:

Review comments

Reviewer has an option of providing comments (as a textbox) when requesting changes from the creator. When the creator opens the collection that is sent back for corrections, there is a comments icon in the editor (as in the current editor). Clicking that opens a textbox showing the latest comments from the reviewer.