langcog / web-cdi

7 stars 5 forks source link

build out scoring functionality #97

Closed mcfrank closed 5 years ago

mcfrank commented 6 years ago

we need to articulate what scoring functionality is core for web-cdi beyond percentiles for vocab checklist.

@vmarchman

HenryMehta commented 5 years ago

I'm going to have to change the approach on scoring. The WS scoring seemed to have all groups equivalent to the item_type within the item level csv file. The WG file doesn't do this. Imitation and Labeling are both within starting_to_talk. I think the best solution is to add an additional column to the item level csv files which will hold the scoring category. In most cases this will the be same as the item type, but sometimes will be different.

HenryMehta commented 5 years ago

@vmarchman Further looking at the WG requirements means this approach won't work because you're summing some sub-categories and counting other columns twice.
Will work through another approach

HenryMehta commented 5 years ago

@vmarchman I think I have in place scoring for English WG and WS (with the exception of where you just want the text copied).

I will document this more fully over the weekend but here are the key points:

I new field has been added to web_cdi.instrument_forms called scoring_category. This is used to specify the scoring category. This needs to be included in the csv files passing the data items into the forms. If it is not, then the item_type is used instead.

A new table has been created in researcher_ui.instrumentscore. This table has a foreign key link to research_ui.instrument and includes title, category and measure fields. The title is the string that will show in the downloaded data file, the category is a semi-colon delimited list of categories (as specified in web_cdi,instrument_forms.scoring_category and measure is a semi-colon delimited list of answers that will be used to increment the score.

I have also introduced json files that stipulate how to populate researcher_ui.instrumentscore. It is simply a json list of title, category and measure. In order to assoicate the correct json file with the correct instrument, I have added a field to instruments.json called scoring_json which specifies which scoring mechanism to use for each instrument.

Since I have only created the scoring json files for English WG and WS at the moment, I have the French, Spanish and short forms all using the English versions. I'll work through creating the different language options later

In short, please test English WS and WG. I think they should work correctly.