This document explains how to localize Orbeon Forms (i18n/L10n).
See also Supported Languages.
See these 2 files:
Each file has as series of
<resource> elements each with an
xml:lang attribute. You need to add your own element. Say you want to localize to Italian:
You can start by copying an existing
<resource> element (for example French).
Starting 2014-03-21, we are marking placeholder resources for existing languages with
NOTE: You must not translate the
<value> part of item definitions, for example:
<required><label>Richiesto</label><hint>Se è necessario immettere i dati</hint><item><label>Sì</label><value>true</value></item><item><label>No</label><value>false</value></item></required>
For Form Builder, starting with Orbeon Forms 4.0, you also need to update the following property in your
<propertyas="xs:string"name="oxf.fr.available-languages.orbeon.builder"value="en fr it"/>
By default, Orbeon Forms 4.0 sets it to
en fr. The updated property at least needs to include the new language or languages that you are adding, in this case,
it. For more details on this, see this Stack Overflow question.
Orbeon Forms XBL components are located as subdirectories here:;
Each subdirectory has a .xbl file with some metadata. For example:
As of Orbeon Forms 2016.1, the following controls need help:
handwritten-signature.xbl (link needs authorization)
In there, you will notice the localization in English, French, etc. Add your own language.
To get started search for the English version in all files for both:
Then add the corresponding resources for the new language.
NOTE: Makes sure also to localize
dialog-select-resources.xml, which is easily missed.
These files are used by the Form Builder toolbox for built-in XForms controls.
As of Orbeon Forms 2018.2, the following files need help:
TODO: more files,
For formatting of dates and times, a Java class usually needs to be added. See the example for Norwegian:
You can go about this in various ways.
Localize the files
Send them to us
with a github pull request
by sending the files to us separately
Either way, we need the CLA signed.
But you will want to see the results yourself first. Here you can either work with
the source from github
or a binary build
If working with the source, build Orbeon Forms, localize the files, and test as you go.
If working with a binary build, you can override built-in files by creating your own files under the WAR file's WEB-INF/resources directory: