The Language Manager allows you to create multiple translations for panel default info pages and invitation text. A preferred language can be defined for panelist, so that the system can always display the correct translation for each individual panelist. The preferred language code is automatically appended to survey links so that if translations exist for a survey, the panelist will see the correct version. English will be listed as the panel default language.
1: Accessing the Language Manager
To access the Language Manager, click Panel functions and select "Language manager".
2: Viewing the Language Manager
All translation functions take place within the language manager. The following options are available:
- Click this button to start the download of the XML file for the current default language, so that it can be used as master language by the translators.
- Click this button to import a translated language XML file.
- Click this button to change the language and the language code of a panel language. Notice, that you cannot have the same language twice.
3: Uploading a Language
Start by downloading a copy of the default language XML file by clicking "Download selected language". You can then resave the file and make translation changes within or send to a translation service.
3.1: Working with the XML translation file
Kinesis highly recommends use of a text editer program such as Notepad++ when modifying translation XML files. XML Notepad also works well. Note that some versions of Microsoft Word can corrupt your translation XML files by inserting/removing additional HTML.
Throughout the downloaded XML file, tags (e.g., <locale> </locale>) surround content such as question labels, question text, choice text, etc.. Much of this content will be translated directly in the file which can then be saved under a new file name before being imported back into your survey. The tags themselves should NEVER be translated. In addition, not all content between tags should be translated (e.g., question labels or additional HTML that has been inserted around text on your survey pages).
- Change the content between the <language> tags to the name of the NEW language to which you will be translating. When imported this is will be stored as the language name you see within the Language Manager.
- Number questions can be localized -- ex. use "," vs. "." as the thousand separator. The format values for the content between the <locale> tags include: "us", "int", or "french". If the number questions are not using thousand separators or decimals, the default "us" will work.
- Date questions can be localized by modifying the content between the <format> tags to any of the following:
- Document encoding must be UTF-8
- Anything enclosed in ~ or % should NOT be translated, examples: ~QUESTION~ or %DATA%
- Attribute values such as a choice ID should not be translated.
- HTML tags should not be translated, example:
- Survey properties starting with <mobile___> can be left untranslated if the survey runs in web only mode.
- Kinesis Survey XML documents can be validated against Document Type Definition (DTD) found via the URL specified in the DOCTYPE header at the top of your translation file.
Before importing the translated document, check the tag contents and make sure it corresponds to the language translated to. If a language with the same name already exists, it will be updated, otherwise the language will be automatically created for you. The name of the language is read from the tag and this will be the language name you will see in the application (unless you manually change the content between the <language> tags as described earlier.
Once your file has been sent to the translation company and returned and uploaded, you should still retest your survey to make sure that the translations were completed. Translation companies use automated software and occasionally words or phrases may be skipped. While it is not necessarily to thoroughly test logic, you should run through to make sure that the translations appear on each survey screen. The Language Manager includes a side by side testing tool that allows you to quickly compare any two languages used in your survey.
3.2: UTF-8 requirements
All XML translation files must use UTF-8 (Unicode) character encoding. UTF-8 has become the dominant character encoding for the web and is compatible with just about every language.
The scripts they support can be found here. Most of the languages in your lists, such as French, German, or Swedish fall into the "Latin" script. However, others like Japanese and Chinese support multiple scripts or versions.
When using the Language Manager in Kinesis, always make sure that the XML files you are importing in are UTF-8 encoded. Whatever XML editor you or your translator will need to support this. Since UTF-8 is a standard encoding, it shouldn't be an issue, but be aware since some programs may automatically convert to ASCII encoding even though they support UTF-8.
3.2.1: Language Codes
Each translation file contains a language code tag (<langcode>). The file must contain this tag; tag contents must be a valid language code accepted by Kinesis. A list of acceptable language codes is below:
|af - Afrikaans||en-us - English (United States)||ru - Russian|
|sq - Albanian||et - Estonian||ru-mo - Russian (Republic of Moldova)|
|ar - Arabic||fo - Faeroese||sz - Sami (Lappish)|
|ar-dz - Arabic (Algeria)||fa - Farsi||sr-yu - Serbian (Cyrillic)|
|ar-bh - Arabic (Bahrain)||fi - Finnish||sh-yu - Serbian (Latin)|
|ar-eg - Arabic (Egypt)||fr - French||sk - Slovak|
|ar-iq - Arabic (Iraq)||fr-be - French (Belgium)||sl - Slovenian|
|ar-jo - Arabic (Jordan)||fr-ca - French (Canada)||sb - Sorbian|
|ar-kw - Arabic (Kuwait)||fr-lu - French (Luxembourg)||es-ar - Spanish (Argentina)|
|ar-lb - Arabic (Lebanon)||fr-ch - French (Switzerland)||es-bo - Spanish (Bolivia)|
|ar-ly - Arabic (Libya)||gd - Gaelic (Scotland)||es-cl - Spanish (Chile)|
|ar-ma - Arabic (Morocco)||ka - Georgian||es-co - Spanish (Colombia)|
|ar-om - Arabic (Oman)||de - German||es-cr - Spanish (Costa Rica)|
|ar-qa - Arabic (Qatar)||de-at - German (Austria)||es-do - Spanish (Dominican Republic)|
|ar-sa - Arabic (Saudi Arabia)||ed-li - German (Liechtenstein)||es-ec - Spanish (Ecuador)|
|ar-sy - Arabic (Syria)||de-lu - German (Luxembourg)||es-sv - Spanish (El Salvador)|
|ar-tn - Arabic (Tunisia)||de-ch - German (Switzerland)||es-gt - Spanish (Guatemala)|
|ar-ae - Arabic (U.A.E.)||el - Greek||es-hn - Spanish (Honduras)|
|ar-ye - Arabic (Yemen)||he - Hebrew||es-mx - Spanish (Mexico)|
|eu - Basque||hi - Hindi||es-ni - Spanish (Nicaragua)|
|be - Belarusian||hu - Hungarian||es-pa - Spanish (Panama)|
|bg - Bulgarian||is - Icelandic||es-py - Spanish (Paraguay)|
|ca - Catalan||id - Indonesian||es-pe - Spanish (Peru)|
|zh-hk - Chinese (Hong Kong Sar)||ga - Irish||es-pr - Spanish (Puerto Rico)|
|zh-cn - Chinese (PRC)||it - Italian||es - Spanish (Spain)|
|zh-sg - Chinese (Singapore)||it-ch - Italian (Switzerland)||es-uy - Spanish (Uruguay)|
|zh-tw - Chinese (Taiwan)||ja - Japanese||es-ve - Spanish (Venezuela)|
|hr - Croatian||ko-kr - Korean||sx - Sutu|
|cs - Czech||lv - Latvian||sv - Swedish|
|da - Danish||lt - Lithuanian||sv-fi - Swedish (Finland)|
|nl - Dutch||mk - Macedonian (FYROM)||th - Thai|
|nl-be - Dutch (Belgium)||ms - Malaysian||ts - Tsonga|
|en-au - English (Australia)||mt - Maltese||tn - Tswana|
|en-bz - English (Belize)||nb-no - Norwegian (Bokmal)||tr - Turkish|
|en-ca - English (Canada)||nn-no - Norwegian (Nynorsk)||uk - Ukrainian|
|en-cx - English (Caribbean)||pl - Polish||ur - Urdu|
|en-ie - English (Ireland)||pt-br - Portuguese (Brazil)||ve - Venda|
|en-jm - English (Jamaica)||pt - Portuguese (Portugal)||vi - Vietnamese|
|en-nz - English (New Zealand)||rm - Rhaeto-Romanic||xh - Xhosa|
|en-za - English (South Africa)||ro - Romanian||ji - Yiddish|
|en-tt - English (Trinidad)||ro-mo - Romanian (Republic of Moldova)||zu - Zulu|
|en-gb - English (United Kingdom)|
3.2.2: Change the language name
By default, the language name shown on the Language Selection page will be in English (e.g., "Spanish" instead of "Español"). To modify the text displayed for a language name, use the optional <language> tag within translation's XML file: