# 3. Content Organization

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 3. Content Organization

### 3.1 Assign Content to Courses, Subjects, and Topics
**What it does:** Connects content items (videos, podcasts, documents) to the learning structure: the Super Administrator assigns content to the courses, subjects, and topics it belongs to, so the content is in the right place in the curriculum and is surfaced to the learners who need it. Assignment is what makes content part of the learning experience rather than an orphaned file.

**Sub-features:**
- Content assignment: a content item assigned to a course, subject, and topic
- Multi-level assignment: the content placed at the course, subject, and topic level as appropriate
- Assignment validation: the target nodes exist and are active
- Coverage view: the content per topic/course, so gaps are visible
- Reassignment: moving content to the correct node where misplaced
- Unassignment: removing a content item from a node (with the impact reviewed)
- Audit logging of assignment changes

**Super Administrator User Journey:**
1. A new video tutorial is ready. Super Admin assigns it to its course, subject, and topic (the curriculum nodes it belongs to).
2. The assignment is validated: the target nodes exist and are active; an invalid node is flagged.
3. Saves; the content is now in the learning structure and is surfaced to the learners in that context.
4. Reviews the coverage view: the content per topic/course, so a topic with no content is a visible gap.
5. For content misplaced at assignment (assigned to the wrong topic), Super Admin reassigns it to the correct node; the change is recorded.
6. For a content item that is no longer part of a topic (a syllabus change), Super Admin reviews the impact (learners who had it) and unassigns it; the impact is handled.
7. Confirms the assignment is complete: the content is where it should be, and the coverage is adequate (no silent gaps).
8. The assignment changes are audit-logged with the content, the nodes, and the timestamp.

**Rules & Edge Cases:**
- Content is assigned to courses, subjects, and topics; the assignment places it in the learning structure.
- The target nodes must exist and be active; an invalid node cannot be assigned.
- The coverage view shows content per node; a gap (a topic with no content) is visible, not silent.
- A reassignment moves content to the correct node; the change is recorded.
- An unassignment is reviewed for impact (learners who had the content) before it is done.
- Assignment changes are audit-logged with the content, nodes, and timestamp.

### 3.2 Prerequisite Topic Linking
**What it does:** Links content topics as prerequisites of other topics, so the learning dependencies are explicit at the content level: a topic (and its content) that must be understood before another. The Super Administrator creates the prerequisite links so the platform can enforce or recommend the correct content order, warn a learner who attempts advanced content without its foundation, and build a correct recommended path through the content.

**Sub-features:**
- Prerequisite link: a content topic marked as a prerequisite of another
- Link creation: the Super Admin defines which topics are prerequisites of which
- Enforcement/recommendation: the order enforced or recommended per the rules
- Learner warning: a learner attempting content without its prerequisite is warned
- Recommended path: the prerequisite graph informs the suggested content order
- Prerequisite review: the links checked for correctness
- Audit logging of prerequisite link create/remove

**Super Administrator User Journey:**
1. For a subject's content, Super Admin defines the prerequisite links: the foundational topics that must come before the advanced ones (e.g., basic concepts before applications).
2. Creates the links so the content dependencies are explicit in the topic structure.
3. Configures the behavior: the prerequisite order is recommended (a learner is warned but can proceed) or enforced (a learner must complete the prerequisite first), per the rules.
4. A learner attempts advanced content without completing its prerequisite; the platform shows the warning: "Complete the prerequisite topic first."
5. The recommended path reflects the prerequisite graph: the suggested content order respects the dependencies, so a learner following it is always ready.
6. Reviews the prerequisite links for correctness: the dependencies are genuine (a wrong prerequisite is removed), so the order is not artificially constrained.
7. For a topic with multiple prerequisites, confirms all are linked, so the learner is warned about each unmet dependency.
8. The prerequisite link create and remove events are audit-logged with the topics, the subject, and the timestamp.

**Rules & Edge Cases:**
- A prerequisite link is directional: topic A is a prerequisite of topic B (A before B).
- The behavior (enforce vs. recommend) is per the rules; a warning does not silently block where the rule is recommend.
- The prerequisite graph informs the recommended path; the suggested order respects the dependencies.
- Links are reviewed for correctness; a wrong prerequisite is removed and recorded.
- A topic can have multiple prerequisites; all unmet ones are surfaced to the learner.
- Prerequisite link changes are audit-logged with the topics, subject, and timestamp.

### 3.3 Content Search and Retrieval
**What it does:** Provides search and retrieval across the platform's content: the Super Administrator (and the learners, within their access) can search for content by its attributes (title, topic, subject, type, difficulty) and retrieve it, so the right content is found quickly rather than browsed for. Search makes the organized content discoverable.

**Sub-features:**
- Content search: search across the content by its attributes
- Search attributes: title, topic, subject, type (video/podcast/document), difficulty
- Filtered search: narrowing the results by the attributes
- Result ranking: the results ordered by relevance
- Retrieval: opening the content from the search results (within access)
- Access-scoped results: the search returns only the content the searcher can access
- Audit logging of administrative content retrieval (where applicable)

**Super Administrator User Journey:**
1. Super Admin needs to find a specific video (on a topic). Opens content search and searches by the topic (and the type: video).
2. The results appear, ranked by relevance; Super Admin filters by the subject and difficulty to narrow further.
3. Opens the content from the results (within access); the content is retrieved and available.
4. For a learner, the search is access-scoped: they see only the content they can access (their courses/entitlement), not the whole catalog.
5. Reviews the search for a content gap: a search for a topic returns no content, confirming the gap (routed to the content owners).
6. For a content item that is hard to find (poorly titled), Super Admin improves its metadata (a clearer title/topic) so it is findable; the change is recorded.
7. Confirms the retrieval works end-to-end: the search finds the content, and the content opens correctly.
8. Administrative content retrieval is audit-logged where applicable (the search, the content, the timestamp).

**Rules & Edge Cases:**
- Search is across the content by its attributes (title, topic, subject, type, difficulty); the attributes are the search keys.
- Results are ranked by relevance and can be filtered; the search is precise, not just a list.
- Results are access-scoped: a searcher sees only the content they can access; there is no leakage of inaccessible content.
- A search returning no content confirms a gap; it is a signal, not an error.
- Poorly findable content is improved via its metadata (a clearer title/topic); the change is recorded.
- Administrative retrieval is audit-logged where applicable.
