Skip to documentation

Stimulus Files (Content)

Last Updated: 2026-10-09 | For: Teachers & Content Creators | Level: Intermediate

New to content creation? Start with the Quick Start Guide for a beginner-friendly introduction!


Overview

Stimulus files contain the actual questions, answers, and media for your MoFaCTS lessons. They work in conjunction with TDF files to create complete learning experiences.

Stimulus format/schema reference is available here


The optional stimulus parameter field contains comma-separated item parameters. The second value is reserved as an item individualized optimal difficulty threshold. deliverySettings.optimalThreshold overrides this.

setspec

Stimulus files should be generated using the format of one of the example files. "stims" field indicates a cluster of related stimuli (1 or more). A selection of clusters of items are specified as the "clusterlist", e.g., 0-5 to specify the first 6 groups. All items of each cluster are used for learningsessions and may be specified in the sequence for assessment sessions. AutoTutor sessions read the first stim in their configured cluster for display.text and the structured autoTutor script. SPARC pages are defined in setspec.sparcPages and selected by the unit's sparcsession.pageId. New H5P display configuration is rejected.

Supported display tags are

  • clozeText - clozeText only matters for partial answers when hints present
  • text - html supported
  • audioSrc
  • imgSrc
  • videoSrc
  • attribution

Media reference rules

  1. Use canonical media references produced by package upload/conversion.
  2. Do not rely on non-canonical filename recovery behavior.
  3. Keep media references scoped to the correct package/content set.
  4. If a referenced media asset is unresolved, runtime can hard-fail instead of continuing with missing media.
  5. If a prompt image requires attribution, place it in display.attribution so runtime can render a linked caption beneath the image.

Prompt image attribution

Use display.attribution for prompt media that requires creator/source/license credit.

{
  "display": {
    "imgSrc": "https://upload.wikimedia.org/wikipedia/commons/2/2c/India_in_its_region_%28undisputed%29.svg",
    "attribution": {
      "creatorName": "TUBS",
      "sourceName": "Wikimedia Commons",
      "sourceUrl": "https://commons.wikimedia.org/wiki/File:India_in_its_region_(undisputed).svg",
      "licenseName": "CC BY-SA 3.0",
      "licenseUrl": "https://creativecommons.org/licenses/by-sa/3.0/"
    }
  }
}

MoFaCTS renders the visible caption from creatorName, sourceName, and licenseName. The caption links to sourceUrl.

Example of 2 stimuli clusters, one cloze (but essentially just text) and one image based.

{
  "setspec": {
    "clusters": [
      {
        "stims": [
          {
            "display": {
              "imgSrc": "Masala-dosa-WS.jpg"
            },
            "response": {
              "correctResponse": "Masala Dosa"
            }
          },
          {
            "display": {
              "clozeText": "Thin crispy pancake made from fermented rice and lentils, filled with spiced potato mixture"
            },
            "response": {
              "correctResponse": "Masala Dosa"
            }
          }
        ]
      },
      {
        "stims": [
          {
            "display": {
              "imgSrc": "Idli-chuntey-WS.jpg"
            },
            "response": {
              "correctResponse": "Idli"
            }
          },
          {
            "display": {
              "clozeText": "Steamed cake made from fermented rice and black lentils"
            },
            "response": {
              "correctResponse": "Idli"
            }
          }
        ]
      },
      {
        "stims": [
          {
            "display": {
              "imgSrc": "Khatta-vada-WS.jpg"
            },
            "response": {
              "correctResponse": "Vada"
            }
          },
          {
            "display": {
              "clozeText": "Deep-fried snack made from lentil or flour dough"
            },
            "response": {
              "correctResponse": "Vada"
            }
          }
       ]}
    ]
  }
}

Creating stimulus content

Use the guided manual creator for explicit prompts and answers, AI Content Creator for assisted text or image pairs, or the Anki/Canvas importers for existing materials. Review the generated stimulus file, answer mapping, and media before assignment. The administrative cloze-generation tool is a separate text-processing workflow.

See: Admin Reference - Content Generation for details on using this feature.

Images

In button trials where responseType == "image" the responses are interpreted as image paths and feedback is presented as an image.

Authoring validation checklist

  1. Each referenced media key resolves to an uploaded asset.
  2. Audio/image/video references are consistent across TDF and stimulus content.
  3. Condition-root and subcondition variants reference assets available in their package scope.
  4. A test launch verifies at least one representative item per media type.

Answer alternatives and displayed feedback

For ordinary practice answers that use pipe-separated alternatives, put the learner-facing answer first. The answer matcher can accept the alternatives, while the displayed correct answer uses the first form rather than exposing the complete alternative string. Speech grammar expands authored alternatives and normalizes punctuation for lookup. Keep numerical distinctions explicit when authoring speech answers.

See Also