This is the third installment in my blog about SAP Translation Hub so far (see here and here). A lot has happened since SAP introduced this product over a year ago. As it has evolved, so too, has our SAP add-on tf-externalize for SAP® Translation Hub, which truly connects it to the ABAP world. Today, I want to tackle one of its features in more detail: the reference language.
The reference language feature has been there from the beginning, and it’s very, very useful. In fact, I’ve called it SAP Translation Hub’s “killer feature” on more than one occasion. The basic idea is that instead of sending one text in one language to SAP Translation Hub, you send two texts — one in the source language and one in the reference language. The reference language text helps disambiguate the text in the source language, which allows SAP Translation Hub to return a more accurate match. This means: you improve translation quality and minimize review work.
How are you able to select two texts that mean the same thing, you ask? That’s easy — if a button says Cancel when you log on in English and Stornieren when you log on in German, they reside in the same object and have the same ID. Now what happens if we send those two texts to the SAP Translation Hub?
Let’s say we are translating from English into French. A text like Cancel has two possible translations in French: Interrompre, which means “cancel an action,” and Annuler, which means “cancel an invoice.” In German, the situation is identical to French. Abbrechen is used for cancelling actions and Stornieren for cancelling invoices. This three-way relationship between English, French and German helps clarify which variety of Cancel we need. It disambiguates the English source text.
So, if you know that the English Cancel can be correctly translated into German with Stornieren, you know that it is much more likely that the correct French translation is Annuler and not Interrompre. How do you know this? Experience, you say? Well, SAP Translation Hub’s multilingual text repository works much the same way.
SAP Translation Hub stores not just a few text pairs, but a large number of so-called vectors. Each vector consists of a text in multiple languages that was once used to translate the same text, such as the same button on a screen, plus a large amount of metadata. This means that when you feed it not just one text, but two, it can select a vector that matches both the source language text and the reference language text. As a result, it can return a much better match.
Of course, tf-externalize also supports this reference language feature. This is especially useful in projects where the texts are translated into more than one language and high translation quality is expected. In such a scenario, instead of pulling translations from SAP Translation Hub for all languages at project start, we first get translation suggestions for one language only and ask translators for that language, say German, to start translation. So, in our example, we give the Germans a head start!
Once the German translators have translated the first few packages, we use tf-externalize for SAP® Translation Hub to get translation suggestions for all other languages from SAP Translation Hub. This time using German as a reference language. Plus, we also send the newly translated German texts in addition to the English source texts. The resulting translation suggestions will be of much higher quality, which allows the review work to go much quicker.
The translators for the other languages now start translating the completed packages in German, and the German translators start working on the next packages. Once these packages are completed for German, translation suggestions are again pulled from SAP Translation Hub for the other languages. This process can then be repeated until the translation is complete for all languages.
This process leads to a much more cost-efficient translation process overall, without compromising quality. However, for projects where speed is of the essence, it may not be possible to give one language a head start while the other translators are waiting. Apart from the initial delay, this scenario gives you lower translation costs with essentially no downside at all.