Response to Wiblert's 1/20/2011mail

Response to Wiblert's 1/20/2011mail

About classes of main profile

Response to Wiblert's 1/20/2011mail

Your message:
Attached is a webpage generated by Niall's profiling tool that summarizes all the elements that are used by the current collection of Main profile examples. These now include four examples from KERIS, and all the QTI examples from the MOCAH team, in addition to the JISC collection. The full set is also attached as a zip file.

Our comments
    - In the current collection of Main profile examples, the examples from MOCAH team are only those without our extensions (clone files which have been generated from our extended QTI files and thus without our extensions: templateConstraint, sumContainer, repeat and so on). But the extensions have been adopted by the IMS-QTI group. It should be better that the whole set of examples will be included in the collection of examples.
    - Our extensions do not appear in the webpage 18_1_2011_all.html generated by Niall's profiling tool that summarizes all the elements that are used (132 used out of 202).

Your message:
> I've also looked at how many of the unused QTI classes are pseudo classes: that is, classes used for documentation purposes, but never actually used in any tests or items. There are 35 of those. Subtract those from the 202 total, and you get 167 'real' items, of which 132 are used. Which means that 35 are unused. As far as I can tell, those are the following:...

UPMC already uses:

In the editor of exercise templates:

    * index: to precise an element of a collection
    * integerModulus: to test the divisibility of an integer by an other
    * m:math (external): to express all mathematical expressions

In the editor of metadata:
    * qtiMetadata: to refer to the IMS-QTI metadata
    * interactionType: to specify the type of interaction of an exercise

In the editor of tests:
    * testFeedback: to define the global feedback at the end of a test

It seems to be useful to keep:
    * integerToFloat: to do some conversion of type
    * randomFloat: to generate a ramdomly float
    * substring (expression): to test if a variable of type string contains an other variable of type string.
    *exitResponse: to terminate the response processing immediately

    * string exists as a type, not as a class
    * duration: exists as a type, not as a class