Why am I losing context matches when I move my TM from one tool to another using TMX?
Current TM systems often not only save the segment you translated, but also some context for the segment. The context is used to improve the matching. This is why you might see matches called CM (context match), 101% or 102%, ICE (in-context exact) or similar. They show that the segment you work on right now is not only the same as in the TM, but also the context is the same.
Unfortunately, the way this context information is saved to the TM and what exactly is saved as context is not standardized.
This means, tool A will not be able to read, interpret and use the context information from tool B. You will only receive a 100% match instead of a context match.
Here are examples how some tools save their context:
The sample text was translated into the TMs and the TMs were exported to TMX (Translation Memory Exchange format).
Sample text:
This is sentence one.
This is sentence two.
This is sentence three.
What is in the TMs:
Context for the second sentence in the TMX file from memoQ
The source segments before and after the actual segment are saved as context.
Context for the second sentence in the TMX file from SDL Trados Studio 2017
A hash code with information about the previous segment and the structure of the current segment (heading, footnote, content of a cell…) is saved as context.
Context for the second sentence in the TMX file from SDL Trados Studio 2019
A hash code plus explicit text of source and target segment before the actual segment is saved as context.
Also, the place where the context information is saved could be different (within the tuv area (translation unit variant = language) or before it. And the names of the attributes of the prop element are also different (x-Context versus x-context-pre and x-context-post)).
This shows why it is not possible to re-use context information between tools.