Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Project Leads: Jenna Makowski Brad Brown Braden MacDonald Ali Hugo Dave Ormsbee (Axim) Bryan Kersten (Deactivated)

Project Status: In Community Review

Table of Contents

Background: Community Needs Driving The Project

We’ve heard many use cases expressed that illustrate the need to align course content to taxonomies. These use cases are diverse and span a range of needs and outcomes. However, they are all underpinned by a common need of connecting course content to taxonomies, or controlled vocabularies. This is often expressed by the need to “tag content”, or to “add tags to content”.

...

By building platform capacity to align content with taxonomies, or to “add tags to content”, we can deliver many benefits to all Open edX user personas. Some examples include:

Value for authors and instructional designers

...

  • Standardize and control the taxonomies your authors are using to align content to competencies, skills, subjects

  • Choose to author your own taxonomy, or ingest third-party taxonomies, such as the Open Skills Network taxonomy or Lightcast Skills taxonomy

Value for learners

...

Until now tagging capabilities have been built to support the delivery of specific, narrowly scoped, features.  For example, the Discovery IDA has both a simple feature to provide tagging via the Django taggit library, and a custom set of models to allow the mapping of a skills taxonomy to courses.  Additionally, a number of course-run-specific metadata fields are stored in the course_metadata_courserun in the edx-platform database.  These fields require database migrations to add and remove and are specific to particular deployments of the platform in many cases. While many of the details of the technical implementation will not be understood until the technical design has been approved, there are important considerations that we can list regarding our expected approach.

...

  1. The platform will support tagging based primarily on name-value pair style tags. It will support the following four types:

Field Type

Description

Field (example names)

Tag (value)

Author Experience

Free-form

Open-ended option to allow any author to add any desired tags; these are all collected in a single (possibly invisible) field for good data management

Tags

Anything author wants to enter

Author sees a field to add as many tags as desired and can free-form add. Could include predictive suggestions of existing tags as they type.

System-defined

Core tags controlled at the platform level in order to keep consistency across search and discovery and for general messiness control. Admins would not be able to change these.

Language, format/content type, organization

Specific set against each of these.

Many of these would not be visible but some might be integrated into facet search (e.g., content format, language). Most would not be editable.

Admin-defined fields

Admins can set up specific fields that authors can free-form enter tags on. These would typically be used for instances in which there could be many possible tags but admin wants them organized separately from free-form tags

Outcomes, Learning Objectives

Anything author wants to enter

Author is presented with the field and can enter a single free-form value.

Admin-defined closed taxonomies

Admins can set up specific fields that require closed taxonomies (including selecting from existing, uploading, manually creating). Includes ability to create child and grandchild hierarchies

Lightcast skills, state standards

Biology, Microbiology

Author is presented with the field and a drop-down (or other UI selection element) to select the value.

Example of Name-Value Pairs might include:

Field

Tag

subject

eg Anthropology

competency

eg Conflict Resolution

skill

eg Define Stakeholder Roles

curriculum alignment

eg Operations and Algebraic Thinking

learning outcome

eg Factor Binomial equations

level of difficulty

eg Medium

hours of effort

eg 4 - 6

prerequisites

eg Linear Algebra

...

  1. Authors can see tags displayed in content blocks in Libraries and in each level of the course hierarchy in Studio. 

    1. When content is reused from Libraries in a course, authors will be able to add additional tags to the content, but will not be able to change any tags that were associated with the content in the Library.

  2. Authors can add free-form tags to any piece of content or any part of the course outline.

    1. UI where author just sees a field to add as many tags as desired, with predictive suggestions.

  3. Authors can add free-form tags on admin-defined fields to any piece of content or any part of the course outline.

    1. UI where author is presented with the field and can enter a single free-form tag.

  4. Authors can choose from a tag from an admin-defined closed taxonomy to any piece of content or any part of the course outline.

    1. UI where author is presented with the field and a drop-down (or other UI selection element) to select the value.

  5. Permissions for adding or editing tags follow the same logic and permissions structure as editing content. 

...

Taxonomy: A controlled vocabulary in which all the values belong to a single hierarchical structure and have parent/child relationships to other terms, or horizontal relationships to other terms. For example, the Core Subject Taxonomy for Mathematical Sciences Education or the Open Skills Network Taxonomies

Name-Value Pair: The mechanism to relate tags to data sets, where name functions as the constant that defines the data set, and value functions as the variable tags that belong to the set. For example:

...