Internationalisierung ist ein zentraler Bestandteil der *FormEngine.
Einer Formular-Instanz wird während der Initialisierung ein Locale zugewiesen, das für jede Art
von Ausgaben im Formular verwendet wird.
Dazu zählen insbesondere:
- Beschriftungen und Info-Tooltips von Komponenten
- Beschriftungen von Optionen in Auswahllisten und Bäumen
- Ein- und Ausgabeformat internationalisierbarer Werte (z.B. Datum)
- Fehlermeldungen von Validierern und Konvertern
- Bestätigungsmeldungen vor dem Submit
- Textgenerierung über Kalkulatoren
- Parameter für Renderer
Innerhalb einer Formulardefinition gibt es verschiedene Möglichkeiten, die Beschriftungen von Komponenten oder
von Optionen zu internationalisieren. Die gebräuchlichste Art ist die Angabe eines MessageBundles
für das Formular. Innerhalb der Formulardefinition können dann für Beschriftungen und andere Texte
Keys aus diesem MessageBundles verwendet werden.
(z.B. <component ... label-key="select.label" info-key="select.info" >)
Bei kleinen Formularen, die vielleicht nur in zwei Sprachen verwendet werden sollen, ist es auch möglich, die Texte direkt in der Formulardefinition anzugeben. Besipielsweise kann die Beschriftung für eine Komponente nicht nur als Attribut angegeben werden, sondern durch mehrere Unterelemente mit den benötigten Sprachversionen.
<component ... >
<label text="Label"/> <!-- Default-Text -->
<label lang="de" text="Beschriftung"/>
So können Formulardefinitionen kompakter gestaltet werden, da alle relevanten Inhalte in der XML-Datei stehen.


