Overview

UMLCF (UnaMentis Markup Language Curriculum Format) is a JSON-based specification for educational content optimized for voice-based AI tutoring. Unlike traditional e-learning standards like SCORM or xAPI, UMLCF is built from the ground up for natural conversation.

Key Characteristics

  • Voice-Native: Every text field can have TTS-optimized spoken variants
  • Tutoring-First: Built for natural conversation, not LMS delivery
  • Unlimited Hierarchy: Topics can nest to arbitrary depth
  • Standards-Grounded: Maps to IEEE LOM, LRMI, SCORM, xAPI, QTI, CASE, Open Badges
  • AI-Enrichment Ready: Designed for automated content enhancement
{
  "umlcf_version": "1.0.0",
  "curriculum": {
    "id": "intro-calculus",
    "title": "Introduction to Calculus",
    "description": "A comprehensive introduction to differential calculus",
    "language": "en-US",
    "topics": [...]
  }
}

Why UMLCF?

Existing e-learning standards were designed for click-through courses and learning management systems. They don't address the unique needs of voice-based AI tutoring:

Need Traditional Standards UMLCF
Pronunciation guides Not supported Built-in spokenText variants
Comprehension checks Separate quiz objects Inline stopping points
Alternative explanations Not standardized First-class support
Misconception handling Not addressed Remediation triggers
Conversation flow Page-based navigation Natural dialogue structure
Depth adaptation Fixed content Multiple depth levels

Document Structure

A UMLCF document has a hierarchical structure:

Curriculum Root container with metadata
Metadata Title, version, language, audience
Topics[] Learning content hierarchy
Glossary Terms with pronunciations
Topic Single learning unit
Learning Objectives
Transcript
Stopping Points
Alternatives
Misconceptions
Assessments
Examples
Children[]

Voice-Native Features

UMLCF includes several features specifically designed for text-to-speech synthesis and natural voice interaction.

Spoken Text Variants

Every text field can have a spokenText variant optimized for TTS:

{
  "text": "The derivative of x² is 2x.",
  "spokenText": "The derivative of x squared is 2 x."
}

Pronunciation Guides

The glossary supports pronunciation hints for technical terms:

{
  "glossary": [{
    "term": "Euler",
    "definition": "Swiss mathematician (1707-1783)",
    "pronunciation": "OY-ler",
    "ipa": "/ˈɔɪlər/"
  }]
}

Stopping Points

Inline comprehension checks that pause the AI to verify understanding:

{
  "transcript": {
    "paragraphs": [
      "A derivative measures the rate of change of a function.",
      "Think of it as the slope of the function at any point."
    ],
    "stoppingPoints": [{
      "afterParagraph": 1,
      "type": "comprehensionCheck",
      "prompt": "Can you think of a real-world example where we care about rate of change?"
    }]
  }
}

Content Depth Levels

UMLCF supports multiple depth levels for the same content, allowing the AI tutor to adapt to the learner's needs:

Overview 2-5 min

High-level intuition without technical detail. Perfect for quick introductions.

Introductory 5-15 min

Basic concepts with minimal mathematics. Suitable for beginners.

Intermediate 15-30 min

Moderate detail with equations mentioned but not derived.

Advanced 30-60 min

In-depth coverage with derivations and proofs.

Graduate 60-120 min

Comprehensive treatment with full mathematical rigor.

Research 90-180 min

Paper-level depth with citations and cutting-edge content.

Topic Structure

Each topic contains the content and metadata for a single learning unit:

{
  "id": "derivatives-introduction",
  "title": "Introduction to Derivatives",
  "depthLevel": "intermediate",
  "estimatedDuration": "PT20M",

  "learningObjectives": [
    "Define the derivative as a rate of change",
    "Calculate derivatives of polynomial functions",
    "Interpret the derivative geometrically as slope"
  ],

  "transcript": {
    "text": "Today we're going to explore derivatives...",
    "spokenText": "Today we're going to explore derivatives.",
    "stoppingPoints": [...]
  },

  "alternativeExplanations": [{
    "id": "simple-analogy",
    "style": "analogy",
    "content": "Think of it like a speedometer in your car..."
  }, {
    "id": "technical",
    "style": "technical",
    "content": "Formally, the derivative is defined as the limit..."
  }],

  "misconceptions": [{
    "id": "derivative-is-tangent",
    "description": "Confusing derivative with tangent line",
    "triggers": ["the derivative is a line", "derivative touches the curve"],
    "remediation": "The derivative gives us the slope of the tangent line..."
  }],

  "children": [
    { "id": "power-rule", ... },
    { "id": "chain-rule", ... }
  ]
}

Alternative Explanations

When a learner doesn't understand, the tutor can try a different approach:

  • simple: Plain language, no jargon
  • technical: Formal definitions and notation
  • analogy: Real-world comparisons
  • visual: Descriptions of diagrams or animations
  • example: Worked examples

Misconception Handling

UMLCF allows content authors to anticipate common misunderstandings:

  • Triggers: Phrases that indicate the misconception
  • Remediation: Corrective explanation
  • Prerequisites: Topics to review if misconception persists

Assessments

UMLCF supports various assessment types optimized for voice interaction:

Reflection Questions

Open-ended prompts for deeper thinking

{
  "type": "reflection",
  "prompt": "How might derivatives help
  in predicting stock prices?",
  "rubric": [
    "Mentions rate of change",
    "Connects to real-world prediction"
  ]
}

Verbal Quizzes

Quick knowledge checks with spoken answers

{
  "type": "verbalQuiz",
  "question": "What is the derivative
  of x cubed?",
  "expectedPatterns": [
    "3 x squared",
    "three x to the second"
  ],
  "feedback": {
    "correct": "Exactly right!",
    "incorrect": "Remember the power rule..."
  }
}

Application Problems

Real-world problem solving scenarios

{
  "type": "application",
  "scenario": "A ball is thrown upward...",
  "questions": [
    "When is the ball at its highest?",
    "What is the maximum height?"
  ],
  "hints": [
    "What happens to velocity at the peak?"
  ]
}

Import System

UMLCF includes a pluggable import system for converting existing content:

CK-12 FlexBooks

Import K-12 EPUB textbooks from CK-12 Foundation

EPUB → UMLCF

Fast.ai Notebooks

Import Jupyter notebooks from fast.ai courses

Jupyter → UMLCF

OpenStax

Import college textbooks from OpenStax

CNXML → UMLCF

Markdown

Import structured markdown documentation

Markdown → UMLCF

AI Enrichment Pipeline

Raw imported content can be enhanced using a 7-stage LLM pipeline:

  1. Content Analysis: Identify structure and key concepts
  2. Segmentation: Break into conversational chunks
  3. Objective Extraction: Generate learning objectives
  4. Assessment Generation: Create quizzes and reflections
  5. Tutoring Enhancement: Add stopping points and misconceptions
  6. Alternative Explanations: Generate multiple explanation styles
  7. Knowledge Graph: Build concept relationships

Standards Mapping

UMLCF fields map to established educational technology standards for interoperability:

Standard Purpose UMLCF Mapping
IEEE LOM Metadata curriculum.metadata.*
LRMI Learning resources topic.learningObjectives, topic.depthLevel
SCORM Content packaging curriculum structure, sequencing
xAPI Learning analytics assessment events, progress tracking
QTI Assessments topic.assessments.*
CASE Competency frameworks learningObjectives, masteryThresholds
Open Badges Credentials curriculum.badges, topic.achievements