The header of the CSV file may contain the following fields:

entryId

entryDescription

entryTranslatable

term

termLocale

termIsSource

translation_{ISO_639-1_language_designator}

Below are the specifications for each field:

  • entryId: string used to group terms and multiple translations; necessary for advanced imports (see below)

  • entryDescription: string representing the term description

  • entryTranslatable: bool that defines if the term is translatable or not

  • term: string representing the term base entry

  • termLocale: locale according to ISO 639-1 representing the term locale

  • termIsSource: bool that defines if the term is source or not; necessary for advanced imports (see below).

  • translation_{ISO_639-1_language_designator}: locale according to ISO 639-1 representing the target language locale

Note: If you specify the field entryTranslatable in the header but assign no value to it, Lingohub will use the default true.

Simple imports are performed when entryId is not found in the CSV header.

The fields term and termLocale are mandatory.

Advanced imports are performed when entryId is found in the CSV header.

The fields term, termLocale, and termIsSource are mandatory.

How do they differ? Simple imports are read row by row, while advanced imports are read row by row but feature a grouping option through the entryId field. This means that different rows can be grouped together if they share an identical entryId value.

Default value true for the field entryTranslatable: If you do not define a value, it will automatically set to true.

Simple CSV import

A simple CSV import will only be triggered if entryId is not present in the CSV header.Your CSV file entries will be read row by row.

For a standard CSV import, your file must respect the following specifications:

  • Valid header - the CSV file's header must contain at least these entries:
    term,termLocale. The previously mentioned formula can add more specifications.

  • Valid language codes - use the ISO 639-1 code to specify your ‘termLocale’ and target language locales. The language codes must be in lowercase.

  • Valid source language - If you import into an existing term base, the termLocale must be identical to the source language of this term base.

Below is an example of a valid CSV file content for a term base:

entryDescription

entryTranslatable

term

termLocale

translation_fr

translation_es

"Email address"

true

email

en

Courriel

Email

Our company name

false

Lingohub

en

You can add multiple translations for the same target language by adding the field translation_{ISO_639-1_language_designator} more than once:

entryDescription

entryTranslatable

term

termLocale

translation_de

translation_de

"A place to live"

true

Home

en

Haus

Gebäude

Our company name

false

Lingohub

en

Note: If you set a term to be not translatable, but add translations to it, the translation values will be ignored.

Advanced CSV import

An advanced CSV import will only be triggered if entryId is present in the CSV header.

Your CSV file will be read row by row but will group terms by entryId if identical values exist.

For an advanced CSV import, your file must respect the following specifications:

  • Valid header - the CSV file's header must contain at least these entries:
    entryId,term,termLocale,termIsSource
    More specifications can be added in accordance to the previously mentioned formula.

  • Valid entryIds - entryId is defined as a string. You can:

    • Distinguish between different terms by using different entryIds

    • Combine multiple translations of a term by using an identical entryId.
      Note: You must define the source term as termIsSource first, before multiple translations in the same language can be added to it.

  • Valid language codes - use the ISO 639-1 code to specify your termLocale. The language codes must be in lowercase.

  • Valid source language - If you import into an existing term base, the termLocale of your entries where termIsSource is set to true, must be identical to the source language of this term base.

Below is an example of a valid CSV file content for a term base:

entryId

entryDescription

entryTranslatable

term

termLocale

termIsSource

email

"Email address"

true

email

en

true

email

""

true

Courriel

es

false

email

""

true

Email

fr

false

Note: If you set a term to be not translatable, but add translations to it, the translation values will be ignored.

Did this answer your question?