Skip to content

ijnebzor/rise-360-xapi-statement-mapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

🧭 xAPI TinCan Mapper

A lightweight, browser-based tool for extracting structured xAPI mappings directly from tincan.xml or Rise360 JSON exports — no Python, no installation, no dependencies.

This tool lets you upload a TinCan/xAPI manifest and instantly view:

  • question IDs
  • choice IDs
  • cleaned question text
  • cleaned answer labels
  • associated scores
  • composite keys for reporting
  • CSV export of the full mapping

This is useful for LMS/LRS implementers, course developers, and anyone needing to decode how a Rise360/Storyline course structures its xAPI interactions.


🌟 Features

  • Runs entirely in your browser
  • No backend, no tracking, no installation
  • Supports:
    • tincan.xml (Rise360/Storyline exported packages)
    • Rise360 JSON (tincan.json)
  • Extracts all:
    • activity IDs
    • cmi.interaction activity nodes
    • choices
    • scores
    • cleaned labels
  • Exports to CSV
  • Handles HTML markup, XML entities, and whitespace cleaning

🚀 How to Use

  1. Download xAPI Parser.html from this repo.
  2. Open it in any modern browser (Chrome, Edge, Firefox, Safari).
  3. Upload:
    • tincan.xml
      or
    • Rise360 JSON export
  4. The table of mappings appears instantly.
  5. Click Download CSV to export.

No Python.
No server.
Nothing to install.


📦 Repository structure

xapi-tincan-statement-mapper/
│
├── xapi_statement_mapper.py   # main script
├── README.md
├── LICENSE
├── .gitignore
└── images/
    └── mapper-screenshot.png  # optional screenshot used in README 

🔒 Privacy

tincan.xml files may contain course titles or internal URLs.
They should not contain learner data, but use caution regardless.

This tool runs locally in your browser, never uploads anything, and never stores data.


📝 Example Output

After loading tincan.xml, you will see rows containing:

questionNum questionName xapi_question_id choice_id Score Label CompositeKey
1 What is your role? Q1_abc123 c1 1 "A TECHNICAL ROLE" Q1_abc123/c1
1 What is your role? Q1_abc123 c2 0 "A NON-TECHNICAL ROLE" Q1_abc123/c2

Screenshot:

image


📄 License

MIT License — free for personal or commercial use.
Not endorsed or supported by Articulate, SCORMCloud, ADL or any vendor.


🤝 Contributions

Issues and pull requests are welcome.
If you improve the parser (e.g. SCORM 2004 support, visualisation, debug tools), feel free to submit a PR.


💬 Notes

This project was created with help from LLM tooling and shared publicly to help anyone impacted by inconsistent Rise360 xAPI behaviour.
No warranty or ongoing maintenance is provided.

About

Maps xAPI statements from a tincan.xml

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages