TMX, the (Translation Memory eXchange) format was originally maintained by the OSCAR special interest group of the Localisation Industry Standards Association (LISA). In March 2011 LISA was closed and its standards moved under Creative Commons license.
The purpose of TMX is to allow any tool using translation memories to import and export databases between their own native formats and a common format. This allow tools users to not be cornered in using a specific tool, but to make sure the asset that their TM databases constitutes can go through the raise and fall of different generation of translation tools.
The version 1.4b is the latest specification and can be found here: https://www.gala-global.org/tmx-14b .
Two important aspects of TMX to keep in mind:
- For text that includes inline codes (such as formatting, images, etc.), tools that support TMX Level 1 only are not providing true interoperability since they will lose all inline codes.
- TMX does not provide a standard for segmentation. Therefore there is no guarantee that a TM will yield the same results when moved from one tool to the other, even for exact matches. This is not a problem specific to TMX, but a general issue of segmentation that occurs regardless which format you use to migrate your TMs. The adoption of the SRX (Segmentation Rules eXchange format) help to carry the information about how the segments of the TM have been made, but this does not solve all the issues.
Example of TMX document with one entry:
<tmx version="1.4b"> <header creationtool="XYZTool" creationtoolversion="1.01-023" datatype="PlainText" segtype="sentence" adminlang="en-us" srclang="EN" o-tmf="ABCTransMem"> </header> <body> <tu> <tuv xml:lang="en"> <seg>Text in <bpt i="1"><B></bpt>bold<ept i="1"></B></ept>.</seg> </tuv> <tuv xml:lang="fr"> <seg>Texte en <bpt i="1"><B></bpt>gras<ept i="1"></B></ept>.</seg> </tuv> </tu> </body> </tmx>
TMX in the Okapi Framework
The Okapi Framework use TMX in many places. For example: