Objective
Achieve multi-lingual support in inQuiry
Fields that needs multilingual support
body
answer
instructions
feedback
hints
User Flow
Scenario 1 : Create and consume questions & question set in any language
Creator / Editor
A dropdown will be present at the beginning of Question or Question set creation.
A default list of languages will be available in the drop down. Additional languages to be displayed in the dropdown list can be configured.
The language will be pre-selected as English by default.
The user will be able to choose any language from the dropdown menu.
Allow free-text ie. the user should be able to type a language that is not in the drop down
Upon selecting a language, the corresponding language code is stored.
Option 1 :
There will be a drop-down across each of the fields, for which multiple languages are supported.
The language selected for the first field, will be retained as the default for the rest of the fields, unless selected otherwise.
Eg. While creating a question set, if the creator first chooses the language for the ‘instructions’ field as `Hindi`, the rest of the fields - ‘body’, ‘options’ etc, should automatically have ‘Hindi’ as default language.
Option 2 :
There will be only one drop down where the language is selected, and will be applied for all fields within a question/question set.
Option 3:
Dropdown for language selection will be present at 3 places :
At Question Set Root node, where it will cover the following fields :
Name
Description
Instructions
Topic
At each Section, where it will cover the following fields :
Title
Description
Instruction
At each Question, where it will cover the following fields:
Name?
Question body
Options
Solution
Feedback
Hint
Creator is able to type or copy paste in any language (question body/instruction/options..).
Validate if the entered language is same as the selected language.
If the entered language is different from the selected language, an error message will be displayed. This is not going to be a validation, it will just be an alert.
Player
A dropdown option will be present at the beginning of the Question or Question set, that is selected for playing.
For eg : Alongside the button for editing the player configurations, add another dropdown for the language selection.
The drop down will be populated based on the languages that are available in the question set or question
Eg 1 : If a question set contains questions that are in English and in Hindi, the dropdown will show English & Hindi only.
The user will be able to choose any language based on the available languages in the dropdown.
No support for free-text ie the user can only choose from the existing options and cannot enter any type in a new entry
At the question set level
The player will only display the questions in the question set, which are present in the selected language.
For eg:
There are 10 questions in a question set. Questions 1,2 & 3 have only English data (body) and
questions 4,5,6 & 7 have entries in Hindi and English i.e. the same question is present in both the languages.
Questions 8, 9 & 10 have entries only in Hindi.
Upon selecting Hindi from the dropdown, the question set will contain questions 4,5,6,7,8,9,10
At each question level
A dropdown option will be present at the beginning (could be near the progress bar info legend)
The dropdown will display only the languages in which the question body is present.
Upon selecting a language from the dropdown, the question will be displayed in the selected language.
By default the language will be English
If the options are not present in the selected language, display the options from the default language.
Selecting value on the question drop-down could override the question set drop-down?
Scenario 2 : Create a Question / Question Set in multiple languages
Creator
User should be able to choose the language from a dropdown and create a question in that language
Dropdown for language selection will be present at 3 places :
At Question Set Root node, where it will cover the following fields :
Name?
Description?
Instructions
Topic?
At each Section, where it will cover the following fields :
Title?
Description?
Instruction
At each Question, where it will cover the following fields:
Name?
Question body
Options
Solution
Feedback
Hint
Incase the user selects a non-english language, the Google Input Tool prompt pops-up in the selected language.
Incase of MCQ (or other interactive questions), the creator can enter the options in the selected language.
If the language of the entered text is different from the selected language, an error message will be displayed. This is not going to be a validation, it will just be an alert.
User can add another text box corresponding to the same question body (for example), choose another language, enter the question in the mentioned language.
The text box will be auto-filled the translation of the original text in the selected language, which can be edited by the creator.
User will be able to copy the options from any of the previously entered set of options (for eg. in-case of MCQ with options which are numeric values)
User could enter the options for the corresponding language
Similarly for instructions etc
Player
A dropdown will be present at the beginning of the Question or Question set, that is selected for playing.
The user will be able to choose any language based on the available languages in the dropdown.
The language in the dropdown will be populated based on the languages in which the question / question set is available.
The drop down can have multi-select options ie the user will be able to select multiple languages
[Question] Restriction on the number of languages?
The question / question set will be rendered in the selected language/languages
The question level language selection will override the question set level language selection ie, the user will be able to view the question is any language that is available in the dropdown
Reference :
Scenario 3 : The Editor and Player should support rendering in any language
Creator
Will be able to choose any language based on their preference, before entering the Editor
The form on the editor will be loaded in the selected language. Eg : labels, Info etc
Assumption : The entries for the labels and texts for various languages is already stored.
Support scenario 1 & scenario 2
Player
Will be able to choose any language based on their preference, before entering the Editor/ Player
Assumption : The dropdown contains only the languages for which is entry to required fields [TBD]
All the questions, questions sets in the selected language will be loaded.
Select a question of question set to play
Assumption : The entries for the items under menu etc (TBD) are entered in the selected language
Support scenario 1 & scenario 2