Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support QTI v2.2 #8

Open
rzach opened this issue May 21, 2020 · 5 comments
Open

Support QTI v2.2 #8

rzach opened this issue May 21, 2020 · 5 comments
Labels
enhancement New feature or request

Comments

@rzach
Copy link

rzach commented May 21, 2020

Enhancement request for future development: support the newer QTI 2 standard for quizzes and questions.

I'm attaching a sample test in QTI 2 that should illustrate all the features currently supported by text2qti:
QTI_2.1_Sample_Test.zip
It was created with the ONYX test editor which is a reference implementation of QTI 2.1. The specification can be found here. Canvas should support QTI 2.1 for import, but I guess exports only QTI 1 for export.

Reasons this may be desirable:

  • Support for more LMS. In QTI 2, tests and questions have both titles and descriptions. Importing a QTI 1 test package created by text2qti into Brightspace (eg) creates a quiz in which every question is called "Question" (ie the question text is imported into the description field/question prompt not the question title field, since QTI 1 doesn't have both.
  • Support more question types and options.
@rzach rzach mentioned this issue May 21, 2020
@gpoore
Copy link
Owner

gpoore commented May 21, 2020

Thanks for the example file. Support for v2.1 would be good. I don't expect to have time to work on this myself for the forseeable future...I'm going to look into adding a few more question types and other features over the next few days, and then I'll probably be limited to basic maintenance/bug fixes for a while.

For question titles: There are actually titles in QTI v1.2. You can open a QTI file and search the XML for something like

<item ident="{ident}" title="Question">

text2qti is always just setting "title" to "Question" because Canvas apparently ignores it. You could try editing the title and importing into Brightspace. If it doesn't ignore the title, I can easily add a way to set the title.

@gpoore gpoore added the enhancement New feature or request label May 21, 2020
@rzach
Copy link
Author

rzach commented May 21, 2020

Fair enough, I just wanted to put this info here since I was just collecting tools and specs myself. Perhaps someone else is interested in contributing it at some point.

@wsphd
Copy link

wsphd commented Dec 20, 2020

Another options is to use the rpy2 module and simply call the exams2qti21 function in the exams R package. It's not a perfect solution, but it might be a serviceable workaround in the short-run.

@jredrejo
Copy link

@gpoore I imagine you have not too much bandwidth if there's no changes in the status of this issues after more than 2 years.
I'm willing to volunteer to add that support because it's important for a project where I collaborate ( https://www.learningequality.org/kolibri/ ) do you think you could have time to review possible PRs to include them in text2qti and close this issue if I do them?

@gpoore
Copy link
Owner

gpoore commented Jul 13, 2023

@jredrejo If you can create a complete implementation for QTI v2, I'll be happy to review it. I haven't used text2qti myself since last fall, but I'll be using it again in a little over a month, and will probably have time to work on some of the smaller issues and perhaps add a few features then. However, I don't have time for larger issues like this unless I'm using the features myself, and I still don't need QTI v2 for what I'm doing. If you think any significant reorganization or refactoring of the existing code is needed to add QTI v2, I'll be happy to discuss that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants