Overview
Categories provide a powerful way to organize questions into logical groups within your knowledge checks. They enable you to structure content hierarchically, create prerequisite relationships, and track performance across different topic areas.Every question in a knowledge check must be assigned to a category. By default, questions belong to the ‘general’ category.
Category Structure
Each category is defined with the following properties:Category Properties
ID
ID
A unique UUID automatically generated for each category.Used internally to reference categories and establish relationships.
Name
Name
A human-readable identifier for the category.
- Must be unique within the knowledge check
- Used when assigning questions to categories
- Displayed to users during assessments
- Shown in performance breakdowns
Choose clear, descriptive names that help users understand the topic area. Use lowercase with hyphens for consistency.
Prerequisite Category ID
Prerequisite Category ID
Specifies another category that must be completed first.Users must complete “javascript-basics” before accessing “advanced-javascript” questions.
- Set to
nullfor no prerequisite (default) - Set to another category’s ID to create a dependency
- Enables progressive learning paths
- Enforces skill progression
Skip on Missing Prerequisite
Skip on Missing Prerequisite
Controls behavior when a prerequisite is not met.
- false (default)
- true
Strict enforcement: Questions from this category are hidden/locked until the prerequisite is satisfied.Users cannot access these questions until they complete the prerequisite category.Use when:
- Prerequisites are essential for understanding
- You want to enforce learning order
- Content builds strictly on previous knowledge
Creating Categories
Categories are defined in the knowledge check schema:Default Category
Every knowledge check starts with a default ‘general’ category:The ‘general’ category is created automatically if no categories are specified. All questions default to this category unless explicitly assigned elsewhere.
Assigning Questions to Categories
Each question references a category by name:Category Hierarchies
Create learning progressions using prerequisite relationships:Example: Programming Course
- Programming Fundamentals (no prerequisite)
- Control Structures (requires Fundamentals)
- Functions and Scope (requires Control Structures)
- Object-Oriented Programming (requires Functions)
- Advanced Patterns (requires OOP)
Example: Flexible Certification
- Core Concepts (required start)
- Intermediate Topics (must complete Core)
- Choose either Specialization A or B (both available after Intermediate)
Using
skipOnMissingPrequisite: true for specializations allows users to access them immediately, but the UI can show recommendations about completing the prerequisite first.User Experience
How Users See Categories
Category Overview
When viewing a knowledge check, users see categories listed with:
- Category name
- Number of questions in each category
- Lock status if prerequisites not met
- Completion percentage (in practice mode)
During Assessment
While taking an exam or practicing:
- Questions grouped or labeled by category
- Progress tracked per category
- Locked categories indicated with icon/message
- Prerequisite requirements shown
Prerequisites in Action
Scenario: Strict Prerequisites- “Advanced Topics” appears locked/grayed out
- Message: “Complete ‘Basics’ to unlock this category”
- Questions from this category are not displayed
- Category unlocks automatically after prerequisite completion
- “Expert Level” is accessible immediately
- Badge or icon: “Recommended after ‘Intermediate’”
- Optional confirmation: “This content builds on Intermediate. Continue?”
- Full access to all questions
Performance Tracking
Categories enable detailed performance analytics:Individual Performance
Aggregate Analytics
- Category Difficulty: Average scores across all users per category
- Drop-off Rates: Which categories have highest abandonment
- Prerequisite Effectiveness: Do prerequisites improve advanced category performance?
- Time per Category: How long users spend in each section
Best Practices
Organizing Content
Logical Grouping
Group related questions together:
- By topic or concept
- By skill level
- By learning objective
- By question type (if relevant)
Balanced Categories
Aim for even distribution:
- 5-15 questions per category
- Similar difficulty within categories
- Comparable time requirements
- Consistent point values
Clear Naming
Use descriptive category names:
- Lowercase with hyphens
- Reflect actual content
- Avoid abbreviations
- Be specific and clear
Progressive Difficulty
Build prerequisite chains:
- Start with fundamentals
- Build to advanced topics
- Create clear learning paths
- Use appropriate prerequisite modes
When to Use Prerequisites
- Strict Prerequisites
- Soft Prerequisites
- No Prerequisites
Use
skipOnMissingPrequisite: false when:- Content requires prior knowledge to understand
- Following a curriculum or course structure
- Building skills sequentially
- Preventing user frustration with too-advanced content
- Ensuring proper learning progression
- Programming courses (basics before advanced)
- Mathematics (algebra before calculus)
- Language learning (beginner before intermediate)
- Professional certifications with levels
Common Patterns
Pattern 1: Linear ProgressionExample Configurations
Example 1: Web Development Course
Example 2: Product Knowledge Assessment
Validation Rules
- Category Name Uniqueness: No two categories can have the same name
- Valid Question References: All questions must reference existing categories
- Valid Prerequisite IDs:
prequisiteCategoryIdmust reference an existing category or benull - No Circular Dependencies: Prerequisites cannot create circular references (A → B → A)
- ID Format: Category IDs must be valid UUIDs
Troubleshooting
Questions Not Appearing
Questions Not Appearing
Issue: Questions assigned to a category aren’t showing up.Check:
- Category name in question matches exactly (case-sensitive)
- Category exists in
questionCategoriesarray - No typos in category name
- Question
accessibilitysetting allows it in current mode
Prerequisites Not Working
Prerequisites Not Working
Issue: Users can access categories they shouldn’t.Check:
prequisiteCategoryIdis set correctlyskipOnMissingPrequisiteisfalsefor strict enforcement- Prerequisite category ID exists and is correct
- User has actually completed prerequisite (check completion logic)
Validation Errors
Validation Errors
Issue: Knowledge check won’t save due to category errors.Check:
- All category names are unique
- All questions reference existing categories
- No circular prerequisite dependencies
- All IDs are valid UUIDs
- Required fields (id, name) are present
Next Steps
Question Types
Learn about assigning questions to categories
Practice Mode
See how categories affect practice sessions
Examination Mode
Understand category performance in exams
Knowledge Checks
Back to knowledge check overview