Taxonomies & Skills
Overview
Taxonomies & Organization covers tools for categorizing and organizing course content and metadata — including content tagging (applying taxonomy tags to courses and content blocks), taxonomy management, and course organization metadata (language, level, subjects).
This is a newer feature area in Open edX. Content tagging and taxonomy management were added as part of the broader openedx-learning initiative and are now available in frontend-app-authoring.
Current State (2026)
- Tagging UI: Authors can tag courses and individual content blocks with taxonomy tags directly in
frontend-app-authoring - Taxonomy management: Taxonomies (hierarchical controlled vocabularies) defined and managed via Django admin or the taxonomy API
- System taxonomies: Open edX ships with some built-in taxonomies (languages, difficulty level); operators can add custom ones
- Tag search: Tags can be used to filter content in library and course search
- OEP alignment: Taxonomy system designed to align with OEP-40 (Tags and Taxonomies)
Architecture
- Backend:
openedx-learningprovides the taxonomy and tagging data model; REST API for CRUD operations on taxonomies and tags - Frontend:
frontend-app-authoringrenders the tagging sidebar; callsopenedx-learningAPIs - Scoping: Taxonomies can be scoped to organizations or made system-wide
- Extensibility: Custom taxonomy sources (e.g., external SKOS vocabularies) can be integrated
Relevant Repositories
| Repository | Role in This Feature | Activity Level | Notes |
|---|---|---|---|
| openedx/frontend-app-authoring | Tagging sidebar UI, taxonomy management pages | High | Main frontend |
| openedx/openedx-learning | Taxonomy and tagging backend (OEP-40) | High | Data models + API |
| openedx/openedx-platform | Course metadata fields (language, level, org) | High | Legacy metadata |
| openedx/edx-organizations | Organization management | Low | Org scoping |
Recent Changes
- Content tagging feature actively developed and released in recent Open edX named releases
- Taxonomy API stabilization
History
Origin
- Year introduced: ~2023 (content tagging as a distinct feature)
- Initial implementation: Simple course metadata fields (language, level, subjects) existed from early edX; structured taxonomy system is much newer
- Context: As course catalogs grew to thousands of courses, discovery and organization needed structured metadata
Key Milestones
| Year | Milestone | Teams / People Involved |
|---|---|---|
| Early | Course metadata fields (language, level) in course settings | Unknown |
| ~2022–2023 | OEP-40 (Tags and Taxonomies) proposal and development | Unknown |
| ~2023–2024 | Content tagging UI released in frontend-app-authoring | Unknown |
People Who Shaped This Area
- Engineering: Unknown — open question for interview
- Product: Unknown — open question for interview
- Design: Unknown — open question for interview
Open Questions
- [ ] What was the product case for building a full taxonomy system vs. simpler tagging?
- [ ] Who authored OEP-40 and what was the design process?
- [ ] How are taxonomies being used in practice by early adopters?
- [ ] How does tagging integrate with search and catalog discovery?
- [ ] What external taxonomy standards (SKOS, Dublin Core) influenced the design?