Ability to define multiple languages on the same form is a highly sought after feature by big enterprises who have participants spread across multiple countries.
Please do not confuse this with the 10-12 languages in which entire AgilePoint product is localized. This is the feature specific to forms as most of the users directly deal with forms only. You can add any language for a form and provide translation and not limited to those 10-12 languages.
Just like we had in previous version of forms, we have an additional security feature where system admin first has to define the language at global level in Manage Center and provide translation for common error/display messages, buttons etc. so that form designers do not have to translate those at each app level and also lets an enterprise control which languages their form designers can use.
However in addition to standard control and message translation, you now also have ability to define the custom strings just as you would do in a Taxonomy store and provide translation at global level so that you can use this shared translation key in multiple apps and changing it at global level will change it across all forms which use this key.
Next form designer can choose which of the available languages he wants to use on the forms and provide translation. All translation files are stored in JSON format and can be sent to translators as well.
When user tries to load the form, it first looks for language setting in user’s profile and if a form is translated in that language then it loads that by default. However if a match is not found, it will load the default language used on form while designing it. User also has ability to switch language manually.
Here is a quick video on how to use this feature. Please note that at time of recording the video this feature was about to be released and was in beta mode but as of today it is already available to all clients.