Master Documentation

Pipeline Operations

Husimi operates on a strict, deterministic pipeline. This guide covers the end-to-end workflow and the required data structures to produce clean, platform-ready assessment outputs.

Part 1: The Pipeline Workflow

1. Ingestion & Extraction

You can feed the system via raw documents or structured spreadsheets. If you lack a spreadsheet, our Optical Extraction Engine will generate one for you.

  • Optical Extraction (PDF/Image): Upload scanned PDFs or images. The engine maps Question Text, Options, and automatically preserves equations using LaTeX delimiters.
  • Direct Spreadsheet Upload: Upload standard `.xlsx` or `.csv` files. The system will auto-detect column headers if they match standard naming conventions.
  • Media ZIP Linking: Upload a ZIP file containing images. The system will map files (e.g., fig1.png) to any question that references that filename.

2. Structural Validation

The core of the system. We run 25+ deterministic rules against your grid to ensure strict IMS Global standards compliance.

Block Errors (Critical)

Export is disabled until these are fixed. Triggers include: Missing correct answers, duplicated Identifier IDs, or Multiple Choice questions lacking sufficient options.

Caution Flags (Warnings)

Formatting anomalies that render poorly in an LMS. Triggers include: Trailing whitespaces, mismatched HTML tags, or inconsistent capitalization across options.

3. Data Remediation Workspace

When flags are triggered, the Data Fixing Workspace provides a split-screen UI. You will see your raw data on the left, and the system's calculated correction on the right. Clicking "Apply Heuristic Fix" allows the 3-pass cleaning pipeline to strip illegal characters and normalize delimiters without corrupting mathematical equations.

4. Linguistic Quality Review

An optional but recommended step. The Linguistic Validation Engine performs a pedagogical audit across your batch.

  • Identifies grammatical mismatches between the question stem and the options.
  • Flags relative positional references (e.g., "All of the above") which will break if the LMS shuffles options.
  • Ensures tone and spelling conventions remain identical across rows compiled by multiple authors.

5. Export Configuration & Packaging

Map your data to the specific architectural quirks of your target LMS.

LMS Targeting Adapters

Select Canvas, Moodle, or Generic QTI 3.0. Our Canvas adapter, for example, will automatically rewrite nested paragraph tags and convert standard generic feedbacks into `modalFeedback` nodes.

Custom Template Mapping

Use the mapping UI to route custom spreadsheet columns (like "Difficulty Level") into specific, valid XML metadata placeholders inside the manifest.

Generate Package

Click "Export." The system strictly compiles the `imsmanifest.xml`, packages the media, and outputs a ready-to-upload ZIP file.

Part 2: Technical Reference

Spreadsheet Formatting

To bypass the optical extraction and upload directly, your `.csv` or `.xlsx` must contain these core headers. Column order does not matter as long as the headers are identifiable.

Required Column HeaderDescriptionExample Value
Question_TypeThe identifier for the logic engine.MCQ, MSQ, TF
Question_TextThe actual stem of the question.What is the capital of France?
Option_1 ... Option_NThe available choices.Paris
Correct_AnswerMaps to the correct Option number or text.Option_1

Supported Question Types

Use the following codes in your Question_Type column.

MCQMultiple Choice

Single correct answer from multiple options.

MSQMultiple Select

Multiple correct answers. Define correct answers separated by commas (e.g., 1,3).

TFTrue / False

Binary choice. Options must explicitly be True and False.

FIBFill in the Blank

Text entry. Correct answers are evaluated exactly.

Math & LaTeX Syntax

Our parser requires standard LaTeX delimiters in your spreadsheet. When configuring the export, you can choose to convert these into Native MathML or retain them for MathJax rendering depending on your LMS capabilities.

Inline Equations

Wrap the equation in single dollar signs.

Solve for x in the equation $2x + 4 = 10$.

Display (Block) Equations

Wrap the equation in double dollar signs to render it on its own line.

Use the quadratic formula: $x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$