Feature: eLearning-import als Uitbreiding in Instellingen #1992

Closed
opened 2026-09-06 08:14:45 +00:00 by brenno · 0 comments
Owner

Doel

Voeg een algemene eLearning-importfunctie toe aan OciDeck. De ingang komt als Uitbreiding in het instellingenmenu. De gebruiker kiest een bestand of pakket, ziet eerst herkenning en waarschuwingen en importeert daarna naar een nieuw OciDeck-deck of bestaand deck.

Dit is een lokale import- en conversielaag, geen LMS en geen runtime-koppeling. Geen verplicht account, server of telemetrie.

Scope

  • Ondersteun IMS Manifest/SCORM, QTI, xAPI/CMI5, AICC en Open Learning XML/OLX.
  • Herken het formaat vóór import en toon course/module/slide/media/question-counts, overgeslagen onderdelen en externe URLs.
  • Pak veilig uit met bestaande pad-, grootte- en resourcegrenzen; schrijf alleen relatieve paden binnen het project.
  • Bewaar bron-ID's, leerdoelen, hiërarchie, navigatie, feedback en toetsinformatie waar het formaat dat toelaat.
  • Externe content wordt niet zonder expliciete actie opgehaald.
  • Niets dat niet kan worden gemapt mag stilzwijgend verdwijnen; maak een waarschuwing, placeholder of importreport.
  • Learner-identiteiten, tokens, suspend data en runtime-resultaten worden niet standaard inhoud.

Instellingen en resultaat

Instellingen → Uitbreiding → eLearning importeren. De gebruiker kiest detailniveau: alleen structuur; structuur plus inhoud; of ook toetsvragen wanneer veilig. Het resultaat is gewone OciDeck-Markdown/.ocideck. Leesbare inhoud blijft in Markdown; opaque importmetadata, mappingrapport en eventuele resultaatdata komen in sidecars. Geen base64 of geheimen in de .md.

FILE_FORMAT.md: ontwerp vóór code

Inventariseer en ontwerp:

  1. course, module/section, learning object, activity, objective, assessment, item, feedback, prerequisite, completion en score;
  2. wat nu ontbreekt: leerdoelen, modulehiërarchie, prerequisites, completion rules, vraagmetadata, feedback, scoring/outcomes, attempts, adaptiviteit, toegankelijkheidsmetadata, bron-ID's en runtime/resultaten;
  3. front matter, slide classes, fenced blocks en sidecars;
  4. verliesvrije mapping, gecontroleerde degradatie en unsupported onderdelen;
  5. versieering en migratie: oude OciDeck-bestanden blijven leesbaar en onbekende eLearning-metadata gaat niet verloren.

eLearning-tab en toetsing

Maak een aparte eLearning-tab in de slide-typekeuze. Onderzoek minimaal leerdoel/competentie, module/hoofdstuk, kenniskaart, single choice, multiple response, true/false, matching, ordering, fill-in/short answer, hotspot/image choice, feedback/remediation en assessment/resultaat. Hergebruik het bestaande question-type waar de semantiek past, maar voeg geen QTI/xAPI/AICC-semantiek stilzwijgend toe aan bestaande velden. Toetsing moet answer key, scoring, feedback, attempts, time limit, pass threshold en resultaatweergave kunnen representeren.

Acceptatiecriteria

  • FILE_FORMAT-ontwerp vóór implementatie.
  • Elk formaat heeft importer, mappingtabel, fixturepakket, waarschuwingstest en round-trip/geen-dataverlies-besluit.
  • Ongeldige of schadelijke pakketten falen gesloten: geen path traversal, decompression bomb of netwerkfetch.
  • Visuele importcontrole, make check, security/privacy/documentatiepoorten groen.
  • UI-teksten volgen de bestaande 31-talige l10n-poort.

Afhankelijkheden: de vijf formaatissues hieronder.

Bronnen:

## Doel Voeg een algemene eLearning-importfunctie toe aan OciDeck. De ingang komt als Uitbreiding in het instellingenmenu. De gebruiker kiest een bestand of pakket, ziet eerst herkenning en waarschuwingen en importeert daarna naar een nieuw OciDeck-deck of bestaand deck. Dit is een lokale import- en conversielaag, geen LMS en geen runtime-koppeling. Geen verplicht account, server of telemetrie. ## Scope - Ondersteun IMS Manifest/SCORM, QTI, xAPI/CMI5, AICC en Open Learning XML/OLX. - Herken het formaat vóór import en toon course/module/slide/media/question-counts, overgeslagen onderdelen en externe URLs. - Pak veilig uit met bestaande pad-, grootte- en resourcegrenzen; schrijf alleen relatieve paden binnen het project. - Bewaar bron-ID's, leerdoelen, hiërarchie, navigatie, feedback en toetsinformatie waar het formaat dat toelaat. - Externe content wordt niet zonder expliciete actie opgehaald. - Niets dat niet kan worden gemapt mag stilzwijgend verdwijnen; maak een waarschuwing, placeholder of importreport. - Learner-identiteiten, tokens, suspend data en runtime-resultaten worden niet standaard inhoud. ## Instellingen en resultaat Instellingen → Uitbreiding → eLearning importeren. De gebruiker kiest detailniveau: alleen structuur; structuur plus inhoud; of ook toetsvragen wanneer veilig. Het resultaat is gewone OciDeck-Markdown/.ocideck. Leesbare inhoud blijft in Markdown; opaque importmetadata, mappingrapport en eventuele resultaatdata komen in sidecars. Geen base64 of geheimen in de .md. ## FILE_FORMAT.md: ontwerp vóór code Inventariseer en ontwerp: 1. course, module/section, learning object, activity, objective, assessment, item, feedback, prerequisite, completion en score; 2. wat nu ontbreekt: leerdoelen, modulehiërarchie, prerequisites, completion rules, vraagmetadata, feedback, scoring/outcomes, attempts, adaptiviteit, toegankelijkheidsmetadata, bron-ID's en runtime/resultaten; 3. front matter, slide classes, fenced blocks en sidecars; 4. verliesvrije mapping, gecontroleerde degradatie en unsupported onderdelen; 5. versieering en migratie: oude OciDeck-bestanden blijven leesbaar en onbekende eLearning-metadata gaat niet verloren. ## eLearning-tab en toetsing Maak een aparte eLearning-tab in de slide-typekeuze. Onderzoek minimaal leerdoel/competentie, module/hoofdstuk, kenniskaart, single choice, multiple response, true/false, matching, ordering, fill-in/short answer, hotspot/image choice, feedback/remediation en assessment/resultaat. Hergebruik het bestaande question-type waar de semantiek past, maar voeg geen QTI/xAPI/AICC-semantiek stilzwijgend toe aan bestaande velden. Toetsing moet answer key, scoring, feedback, attempts, time limit, pass threshold en resultaatweergave kunnen representeren. ## Acceptatiecriteria - FILE_FORMAT-ontwerp vóór implementatie. - Elk formaat heeft importer, mappingtabel, fixturepakket, waarschuwingstest en round-trip/geen-dataverlies-besluit. - Ongeldige of schadelijke pakketten falen gesloten: geen path traversal, decompression bomb of netwerkfetch. - Visuele importcontrole, make check, security/privacy/documentatiepoorten groen. - UI-teksten volgen de bestaande 31-talige l10n-poort. Afhankelijkheden: de vijf formaatissues hieronder. Bronnen: - https://www.adlnet.gov/assets/uploads/ADLGuide2004_Final_073108.pdf - https://www.1edtech.org/standards/qti/index - https://adlnet.gov/assets/uploads/xAPI_v1.0.1-2013-10-01.pdf - https://github.com/AICC/CMI-5_Spec_Current - https://docs.openedx.org/en/latest/educators/olx/what-is-olx.html
brenno 2026-09-06 13:23:00 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#1992
No description provided.