Internacjonalizacja wspomaga tworzenie portali wielojęzycznych. Koncepcja polega na tym aby w kodzie aplikacji posługiwać się unikalnym 'kluczem' tłumaczenia, a w osobnym miejscu przechowywać tłumaczenia w różnych językach dla danego klucza.
W jPALIO tłumaczenia są przechowywane w bazie danych. Mając na uwadze względy wydajnościowe dostęp do tłumaczeń jest keszowany. Klucz tłumaczenia składa się następujących atrybutów:
Atrybut | Opis | Przykład |
Język | Język danego tłumaczenia | eu pl ru |
Kod tłumaczenia | Unikalny identyfikator za pomocą którego programista odwołuje się do danego tłumaczenia | firstName lastName |
Kategoria | Kategoria jest atrybutem opcjonalnym. Służy ona do rozróżniania dwóch lub więcej tłumaczeń o takich samych kodach. |
W dalszej części tekstu. |
Aby lepiej zobrazować przydatność kategorii posłużmy się przykładem. Załóżmy że mamy w portalu kod 'house' i jego tłumaczenie w języku polskim 'dom'. Lecz w jednym miejscu(np na formularzu z danymi adresowymi) chcielibyśmy użyć innego tłumaczenia, np. 'budynek'. W takim przypadku pierwsze tłumaczenie zostawiamy z pustą kategorią, natomiast drugiemu przypisujemy jakąś kategorię np. 'address'. Kategorie mogą też służyć do grupowania tłumaczeń np. wszystkie tłumaczenia na danej stronie mogą mieć taką samą kategorię.