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.
...
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 |
...
Authors can see tags displayed in content blocks in Libraries and in each level of the course hierarchy in Studio.
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.
Authors can add free-form tags to any piece of content or any part of the course outline.
UI where author just sees a field to add as many tags as desired, with predictive suggestions.
Authors can add free-form tags on admin-defined fields to any piece of content or any part of the course outline.
UI where author is presented with the field and can enter a single free-form tag.
Authors can choose from a tag from an admin-defined closed taxonomy to any piece of content or any part of the course outline.
UI where author is presented with the field and a drop-down (or other UI selection element) to select the value.
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:
...