Translating the application

To translate the client interface, go on GeoNetwork on Transifex. Only the reference language (ie. en) MUST be updated on github. All other translations MUST be on Transifex.

Main files to translate are the Angular UI ones:


Once translated, the new language needs to be added to the application.

// Add the language here
module.constant('gnLangs', {
  langs: {
    'eng': 'en',
    'dut': 'du',
    'fre': 'fr',
    'ger': 'ge',
    'kor': 'ko',
    'spa': 'es',
    'cze': 'cz'

// Lang names to be displayed in language selector
$scope.langLabels = {'eng': 'English', 'dut': 'Nederlands',
  'fre': 'Français', 'ger': 'Deutsch', 'kor': '한국의',
  'spa': 'Español', 'cze': 'Czech'};

To automatically retrieve and update translations files, the script source file web-ui/ can be used. To use the script you have to join the translation team on Transifex.

Register the new lang in the l variable of the transifex synchronization file:



and run the script

cd web-ui

Then on the Java application, register the new language in source file src/main/webResources/WEB-INF/config-spring-geonetwork.xml:

<util:set id="languages">

Add a new SQL file for the database initialization in source file src/main/webapp/WEB-INF/classes/setup/sql/data/loc-cze-default.sql and update translations. This file is used to register the new language for database entity translations (eg. groups, status).

In source file src/main/webResources/WEB-INF/config-db/initial_data.xml, register the new SQL file:

<bean class="org.fao.geonet.domain.Pair" factory-method="read">
  <constructor-arg value="WEB-INF/classes/setup/sql/data"/>
  <constructor-arg value="loc-cze-"/>

Translating a standard

To translate a standard, see the schema folder (source file schemas/iso19139/src/main/plugin/iso19139/loc). Those files are used in the editor and formatters to translate standard elements, to provide help text, recommended values list, …