OmegaT for PISA 25

Data flow for translating and editing
XLIFF files with the Okapi XLIFF filter

Importing and translating an untranslated (monolingual) XLIFF file

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

import

The Okapi XLIFF filter extracts the source text when the file is imported in OmegaT (or when the project loads).

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

The Okapi XLIFF filter extracts the source text when the file is imported in OmegaT (or when the project loads).

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

Let's translate this file

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

Saving...

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

export

export

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The source text was extracted.

 Strongly agree.

 Welcome to this survey!

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The source text was extracted.

 Strongly agree.

 Welcome to this survey!

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The target node in the target XLIFF file was populated with the translation.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The target node in the target XLIFF file is populated with the translation.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The source text in the XLIFF file was never altered.

During merge, it's maintained as part of the skeleton.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

.

.

.

.

.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

The only difference between the source and the target files is in the target text.

<!DOCTYPE html>
<html lang="en" dir="ltr">
	<head>
		<meta charset="utf-8">
		<title></title>
		<link rel="stylesheet" href="github-markdown.css">
	</head>
	<body class="markdown-body">
		<h1>Page about OmegaT</h1>
		<p>This is <i>just</i> a draft. Stay tuned ;)</p>
		<div id="mc_embed_signup">
		<form action="https://capstan.us18.list-manage.com" method="post">
		    <div id="mc_embed_signup_scroll">
			<label for="mce-EMAIL">Subscribe</label>
			<input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
		    <!-- do not remove this or risk form bot signups-->
            <div class="clear"><input type="submit" value="Subscribe" class="button"></div>
		</form>
		</div>
	</body>
</html>

An HTML file to translate...

We want to translate only the text!

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" its:version="2.0">
    <file original="03_index.html" source-language="en-US" target-language="fr-FR" datatype="html">
        <body>
            <trans-unit id="tu2" restype="x-h1">
                <source xml:lang="en-US">Page about OmegaT</source>
                <target xml:lang="fr-FR">Page about OmegaT</target>
            </trans-unit>
            <trans-unit id="tu3" restype="x-paragraph">
                <source xml:lang="en-US">This is <g id="1">just</g> a draft. Stay tuned ;)</source>
                <target xml:lang="fr-FR">This is <g id="1">just</g> a draft. Stay tuned ;)</target>
            </trans-unit>
            <trans-unit id="tu4">
                <source xml:lang="en-US"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></source>
                <target xml:lang="fr-FR"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></target>
            </trans-unit>
            <trans-unit id="tu5">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
            <trans-unit id="tu7" restype="x-value">
                <source xml:lang="en-US">Subscribe</source>
                <target xml:lang="fr-FR">Subscribe</target>
            </trans-unit>
            <trans-unit id="tu6">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
        </body>
    </file>
</xliff>

This is the XLIFF used to translate that HTML file

from which OmegaT will only extract the target text.


                                                                                                                                                                                                                                                 




                                         Page about OmegaT



                                         This is <g id="1">just</g> a draft. Stay tuned ;)
      


                                                   Subscribe
            
            
            
            
            
            
            

                                         Subscribe
            
            
            
            
            
        

from which OmegaT will only extract the target text.

This is what it looks like when you import the source XLIFF file in OmegaT.

This is what it looks like when the translation is done

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" its:version="2.0">
    <file original="03_index.html" source-language="en-US" target-language="fr-FR" datatype="html">
        <body>
            <trans-unit id="tu2" restype="x-h1">
                <source xml:lang="en-US">Page about OmegaT</source>
                <target xml:lang="fr-FR">Page sur OmegaT</target>
            </trans-unit>
            <trans-unit id="tu3" restype="x-paragraph">
                <source xml:lang="en-US">This is <g id="1">just</g> a draft. Stay tuned ;)</source>
                <target xml:lang="fr-FR">Ce n'est <g id="1">qu'un</g> brouillon. Restez à l'écoute ;)</
            </trans-unit>
            <trans-unit id="tu4">
                <source xml:lang="en-US"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></source>
                <target xml:lang="fr-FR"><g id="1">Souscrire</g> <x id="2"/> <x id="3"/></target>
            </trans-unit>
            <trans-unit id="tu5">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
            <trans-unit id="tu7" restype="x-value">
                <source xml:lang="en-US">Subscribe</source>
                <target xml:lang="fr-FR">Souscrire</target>
            </trans-unit>
            <trans-unit id="tu6">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
        </body>
    </file>
</xliff>

And this is what the target XLIFF file looks like when you export from OmegaT.

Notice how the original text content of the target segments has been replaced with the translation.

As you can see, the outcome of that process is a translated/bilingual XLIFF file

Importing and editing
a translated (bilingual) XLIFF file

But what if the task is to review a bilingual XLIFF (already translated)?

Now, that was to translate a monolingual XLIFF file.

What would happen if you imported a bilingual/translated XLIFF file in OmegaT?

  • Nothing would be extracted because it's already translated.
  • The target text of each segment would be extracted, as usual.
  • Both source and target would be extracted if they are different.
  • The source text would be extracted for translation, as usual.

mini-poll

By default, this is what would happen.

Remember that the source and target languages of our review task are English and French

Only the translation has been extracted, but there's no source version we can refer to.

How to review a translated/bilingual XLIFF file in OmegaT

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Welcome to this survey!

 Select the right answer.

 Select the right answer.

 Click here to continue.

 Select the right answer.

 Click here to continue.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Select the right answer.

 Strongly agree.

 Tout à fait d'accord.

 Click here to continue.

 Clique ici pour continuer.

This is the final stage of a translation task.

The editing task could of course take place in this same project, without adding or removing any files.
That would be the simplest approach.

But let's see what would happen if the translated XLIFF files are added to a new project. 

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

The output of the translation task was a translated (bilingual) XLIFF file...

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

...which may in turn be the input (i.e. the source file) of a new OmegaT project.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

In that case, the Okapi XLIFF filter would extract both the source and the target texts

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

import

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

 Welcome to this survey!

 Select the right answer.

 Strongly agree.

 Click here to continue.

 Select the right answer.

 Tout à fait d'accord.

 Bienvenue à cette enquête!

 Sélectionnez votre réponse.

 Clique ici pour continuer.

 Sélectionnez votre réponse.

Saving...

There are 2 XLIFF filters in OmegaT

(key takeaway)

OmegaT XLIFF filter

  • For monolingual files
    • Input: monolingual
    • Output: bilingual
  • For translation tasks
  • Compatible with segmentation in the project
  • Enabled by default

Okapi XLIFF filter

  • For bilingual files
    • Input: bilingual
    • Output: bilingual
  • For editing or review tasks
  • Incompatible with segmentation in the project
  • Enabled when the default OmegaT XLIFF filter is not enabled

OmegaT's default XLIFF filter

Okapi XLIFF filter

It's a draft. Stay tuned.

It's a draft. Stay tuned.

source

target

It's a draft. Stay tuned.

On vous tiendra au jus.

source

target

It's a draft. Stay tuned.

On vous tiendra au jus.

source

target

It's a draft. Stay tuned.

On vous tiendra au courant.

source

target

It's a draft. Stay tuned.

On vous tiendra au jus.

It's a draft. Stay tuned.

On vous tiendra au jus.

This is a summary and a review of the difference between the two filters.

To be extracted, the source text must be duplicated to the target element.

It's a monolingual extraction.

It's a draft. Stay tuned.

This is a translation task.

The outcome is a bilingual segment in the target XLIFF file.

The starting point is a bilingual XLIFF file (containing bilingual segments).

It's a bilingual extraction.

This is a review/editing task.

On vous tiendra au courant.

The outcome is a bilingual segment in the target XLIFF file.

What is the main difference between the default/standard XLIFF filter and the Okapi XLIFF filter?

  • The Okapi filter can only be used to review XLIFF files.
  • The default filter extracts the target text, the Okapi filter extracts both the source text and the target text.
  • The default filter extracts the target text, the the Okapi extract only the source text.
  • None, both filters extract the target text only.

mini-poll

okapi

The okapi (/oʊˈkɑːpiː/; Okapia johnstoni), also known as the forest giraffe, Congolese giraffe, or zebra giraffe, is an artiodactyl mammal native to the northeast of the Democratic Republic of the Congo in Central Africa. Although the okapi has striped markings reminiscent of zebras, it is most closely related to the giraffe.

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" its:version="2.0">
    <file original="03_index.html" source-language="en-US" target-language="fr-FR" datatype="html">
        <body>
            <trans-unit id="tu2" restype="x-h1">
                <source xml:lang="en-US">Page about OmegaT</source>
                <target xml:lang="fr-FR">Page sur OmegaT</target>
            </trans-unit>
            <trans-unit id="tu3" restype="x-paragraph">
                <source xml:lang="en-US">This is <g id="1">just</g> a draft. Stay tuned ;)</source>
                <target xml:lang="fr-FR">Ce n'est <g id="1">qu'un</g> brouillon. Restez à l'écoute ;)</
            </trans-unit>
            <trans-unit id="tu4">
                <source xml:lang="en-US"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></source>
                <target xml:lang="fr-FR"><g id="1">Souscrire</g> <x id="2"/> <x id="3"/></target>
            </trans-unit>
            <trans-unit id="tu5">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
            <trans-unit id="tu7" restype="x-value">
                <source xml:lang="en-US">Subscribe</source>
                <target xml:lang="fr-FR">Souscrire</target>
            </trans-unit>
            <trans-unit id="tu6">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
        </body>
    </file>
</xliff>

Let's come back to our translated XLIFF file.

As we said, for a review task, both the source and target text need to be extracted.

This is what this file should look like in a project correctly configured to review this translation.

"Correctly configured" means using the Okapi XLIFF filter, not the default/standard one.

How to use the Okapi filter?

As is also the case with Open XML filters, to enable an added-on filter, disable the standard one.

 

To enable the Okapi XLIFF filter, unselect the standard OmegaT XLIFF filter.

What happens if the project is not configured correctly?

We already saw how the standard XLIFF filter handles a translated XLIFF file.

And by now you know how to fix it.

In a nutshell, just disable the standard filter so that the Okapi filter is used instead.

Did you notice something unexpected?

Or almost... One last thing:

These two segments are not translated!

That's because the text has been segmented.

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" its:version="2.0">
    <file original="03_index.html" source-language="en-US" target-language="fr-FR" datatype="html">
        <body>
            <trans-unit id="tu2" restype="x-h1">
                <source xml:lang="en-US">Page about OmegaT</source>
                <target xml:lang="fr-FR">Page sur OmegaT</target>
            </trans-unit>
            <trans-unit id="tu3" restype="x-paragraph">
                <source xml:lang="en-US">This is <g id="1">just</g> a draft. Stay tuned ;)</source>
                <target xml:lang="fr-FR">Ce n'est <g id="1">qu'un</g> brouillon. Restez à l'écoute ;)</
            </trans-unit>
            <trans-unit id="tu4">
                <source xml:lang="en-US"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></source>
                <target xml:lang="fr-FR"><g id="1">Souscrire</g> <x id="2"/> <x id="3"/></target>
            </trans-unit>
            <trans-unit id="tu5">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
            <trans-unit id="tu7" restype="x-value">
                <source xml:lang="en-US">Subscribe</source>
                <target xml:lang="fr-FR">Souscrire</target>
            </trans-unit>
            <trans-unit id="tu6">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
        </body>
    </file>
</xliff>

The Okapi filter XLIFF extracts the segment pair.

And then OmegaT uses the target text...

... as the translation of the source text.

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" its:version="2.0">
    <file original="03_index.html" source-language="en-US" target-language="fr-FR" datatype="html">
        <body>
            <trans-unit id="tu2" restype="x-h1">
                <source xml:lang="en-US">Page about OmegaT</source>
                <target xml:lang="fr-FR">Page sur OmegaT</target>
            </trans-unit>
            <trans-unit id="tu3" restype="x-paragraph">
                <source xml:lang="en-US">This is <g id="1">just</g> a draft. Stay tuned ;)</source>
                <target xml:lang="fr-FR">Ce n'est <g id="1">qu'un</g> brouillon. Restez à l'écoute ;)</
            </trans-unit>
            <trans-unit id="tu4">
                <source xml:lang="en-US"><g id="1">Subscribe</g> <x id="2"/> <x id="3"/></source>
                <target xml:lang="fr-FR"><g id="1">Souscrire</g> <x id="2"/> <x id="3"/></target>
            </trans-unit>
            <trans-unit id="tu5">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
            <trans-unit id="tu7" restype="x-value">
                <source xml:lang="en-US">Subscribe</source>
                <target xml:lang="fr-FR">Souscrire</target>
            </trans-unit>
            <trans-unit id="tu6">
                <source xml:lang="en-US"><x id="1"/></source>
                <target xml:lang="fr-FR"><x id="1"/></target>
            </trans-unit>
        </body>
    </file>
</xliff>

The source text of this translation unit contains two sentences.

To retrieve the translation, the whole source text needs to match.

If OmegaT segments the text that is displayed in the editor, there can be no match with the source text that came with the XLIFF file.

Remember that matching happens on a source segment basis.

Let's see how to fix this too.

(or better: how to avoid it)

In a nutshell, just disable segmentation in the project settings.

However, rather than tweaking settings manually, it's better to use a template.

However, rather than tweaking settings manually, it's better to use a template.

This is an empty project
(i.e. it has no files)

but it has the correct settings to review a translated XLIFF file.

Let's check the project settings...

disabled

enabled

disabled

So we can use it as a
project template.

Let's now add the translated XLIFF file.

That would be of course if you had to create the project manually. However, it can be automated.

That would be of course if you had to create the project manually. However, it can be automated.

This presentation was meant mostly to provide the essential background information you need to understand about how OmegaT interacts with XLIFF files.

However, there might are other more advanced options that need to be considered when preparing a project, so please check with the tech team if you have doubts or questions.

Language codes must be compliant with the BCP-47 standard

<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:okp="okapi-framework:xliff-extensions" xmlns:its="http://www.w3.org/2005/11/its" xmlns:itsxlf="http://www.w3.org/ns/its-xliff/" its:version="2.0">
  <file original="index.html" source-language="en-US" target-language="es-ES" datatype="x-text/html">
    <body>
      <group id="1" restype="div">
        <trans-unit id="1_1">
          <source xml:lang="en-ZZ">Hello world!</source>
          <target xml:lang="es-ES" state="needs-translation" />
          <note>Translate "world" as in "people", not as in "planet".</note>
        </trans-unit>
        <trans-unit id="1_2">
          <source xml:lang="en-ZZ">How are you?</source>
          <target xml:lang="es-ES" state="needs-translation" />
        </trans-unit>
      </group>
    </body>
  </file>
</xliff>

PROS

  • No CSS or JS files are exposed
  • Segment ID

CONS

  • No preview

OmegaT / XLIFF Okapi filter for PISA25 engineers -- 2022

By cApStAn LQC

OmegaT / XLIFF Okapi filter for PISA25 engineers -- 2022

Session 5: How to handle XLIFF files in OmegaT (two typical cases)

  • 273