From Okapi Framework
Jump to: navigation, search


Help Topics:

Warning: This is documentation is under construction
Note: Olifant for the Java-based Okapi framework is currently under development.
If you are using Windows, you can still use the older version of Olifant for .NET


Olifant is a cross-platform application that allows you manage multilingual TMX documents.

Olifant imports and exports the TMX documents into translation memories (TMs). Those TMs are stored in a TM repository. A repository is a collection of independent TMs stored in a single database.

Each TM can have millions of entries, in multiple languages, and you can have hundreds of TMs in a repository. The exact limitations depend on the type of repository used as well as the machine from where the repository is running.


Olifant works with several types of repository: they can be on your file system or remote or even in memory, and they are implemented using different database engines.

To know more about what repository to use, see the Repositories page.

Data Model

Like in most other Okapi applications there are two level of data in Olifant:

  • A text unit is a group of one or more segments
  • A segment is a text that generally corresponds to some linguistic unit like a sentence.

Olifant presents you with tables where each row (or entry, or record) corresponds to a segment, even when some of the fields are text unit fields.

For example, the following TMX entries:

<tu tuid='entry1'>
 <tuv xml;lang='en'><seg>Some text</seg></tuv>
 <tuv xml:lang='fr'><seg>Du texte</seg></tuv>
<tu tuid='entry2'>
 <tuv xml;lang='en'><seg>More text</seg></tuv>
 <tuv xml:lang='fr'><seg>Plus de texte</seg></tuv>

correspond to the following Olifant TM table:

Flag/SegKey  Text~EN     Text~FR         tuid
□ 1 Some text Du texte entry1 □ 2 More text Plus de texte entry2