SAP Translation Hub’s Reference Language Feature

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 Hidden Gem

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.

When there are multiple possible translations but only one is right

In this simplified example, “Cancel” can be translated into French in two different ways; however, only one of the possible translations is also a valid translation for “Stornieren.”

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?

Disambiguation is the thing

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.

A language vector in SAP Translation Hub's multilingual text repository

A language vector can contain translations in any number of languages, plus metadata.

SAP Translation Hub Learns from Experience, Too

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.

Working with a Reference Language

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!

Exporting short texts from and pull from SAP Translation Hub

Once German is done, we get translations from SAP Translation Hub for the other languages.

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.

German as reference language

With this process, one language finishes a few packages first before the other languages start…

Translation as a Relay Race

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.