Formato TermBase eXchange

Adicionado na versão 4.5.

Alterado na versão 5.12.

TBX é um formato XML para a troca de dados de terminologia.

Recursos suportados

File extensions

.tbx

Linguality ⓘ

Bilingual

Supports plural ⓘ

No

Supports descriptions ⓘ

Yes

Supports explanation ⓘ

Yes

Supports context ⓘ

Yes

Supports location ⓘ

No

Supports flags ⓘ

Yes

API identifier

tbx

Supports read-only strings ⓘ

No

Supports removing obsolete strings ⓘ

No

Term alternatives

Each TBX concept is one string with independent lists of source and target alternatives. Weblate reads every direct <tig> in the selected languages; IDs are optional and do not pair alternatives across languages. All source alternatives can match in the glossary, and each permitted target can be copied separately. Term statuses and notes are displayed with their alternatives.

See Multivalue formats for how alternatives are handled by quality checks, automatic fixes, and machine translation.

When editing alternatives, unchanged text is matched first, including duplicate occurrences. Remaining alternatives reuse unmatched terms in their original order, retaining IDs and metadata. Renaming and deleting alternatives together can therefore associate a renamed term with the first unmatched term’s metadata. New alternatives are created without IDs. Term metadata is read-only in Weblate.

A missing target language does not remove a concept whose source exists. DNT terms can use the matching source alternative without creating a translation. Language codes still need to match the component configuration.

Explicações

O Weblate carrega e salva explicações de arquivos TBX para serem exibidas no Glossário.

  • A explicação da tradução é armazenada como tag <note from="translator"></note>.

  • A explicação do texto fonte é armazenada como tag <descrip></descrip>.

  • Source string description is stored as <descrip type="Usage note"></descrip> tag.

Concept notes are shared. Language notes are read only for the selected language, and term notes belong to their own alternative. Editing a target explanation does not overwrite notes in other languages.

TBX components offer native and generated TBX downloads. Conversion to formats that use grammatical plurals is unavailable because those formats cannot preserve independent source and target alternatives.

Generated TBX downloads preserve represented flags, explanations, alternative IDs, statuses, and note scopes. Weblate flags use the same weblate-flags attribute as native TBX storage. Native file editing also preserves unrecognized XML and unselected languages; generated exports contain the selected language pair.

Glossary flags and read-only metadata

Weblate imports terms with forbidden or obsolete administrative status in <termNote type="administrativeStatus"> as Traduções proibidas.

Terms with <descrip type="Translation needed">No</descrip> are imported as read-only strings, see Termos não traduzíveis.

Importing glossary files

TBX can store multiple languages in one XML file, but Weblate still maps each component file to a translation language using the component file mask. For a TBX glossary component, the component source language is used for source terms and the language parsed from the file name is used as the target glossary language.

Avoid naming a TBX translation file with the same language code as the component source language, because the source language already exists in Weblate and the file can be detected as a duplicate language.

The Add upload method preserves alternative IDs, statuses, and scoped notes when importing TBX into a TBX glossary.

Exemplo de arquivos

Exemplo de arquivo:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE martif PUBLIC "ISO 12200:1999A//DTD MARTIF core (DXFcdV04)//EN" "TBXcdv04.dtd">
<martif type="TBX" xml:lang="en">
    <martifHeader>
        <fileDesc>
            <sourceDesc>
                <p>Translate Toolkit</p>
            </sourceDesc>
        </fileDesc>
    </martifHeader>
    <text>
        <body>
            <termEntry>
                <langSet xml:lang="en">
                  <tig>
                    <term>address bar</term>
                  </tig>
                </langSet>
                <langSet xml:lang="cs">
                  <tig>
                    <term>adresní řádek</term>
                  </tig>
                </langSet>
            </termEntry>
            <termEntry weblate-flags="terminology">
                <langSet xml:lang="en">
                  <tig>
                    <term>administrator</term>
                  </tig>
                </langSet>
                <langSet xml:lang="cs">
                  <tig>
                    <term>správce</term>
                  </tig>
                </langSet>
            </termEntry>
            <termEntry>
                <descrip>Example source string explanation text</descrip>
                <descrip type="Usage note">Example source string description text</descrip>
                <langSet xml:lang="en">
                  <tig>
                    <term>administrate</term>
                  </tig>
                </langSet>
                <langSet xml:lang="cs">
                  <tig>
                    <term>spravovat</term>
                    <note from="translator">Example translation string explanation text</note>
                  </tig>
                </langSet>
            </termEntry>
            <termEntry>
                <descrip type="Translation needed">No</descrip> <!-- mark as untranslateable -->
                <langSet xml:lang="en">
                  <tig>
                    <term>Weblate</term>
                  </tig>
                </langSet>
            </termEntry>
            <termEntry>
                <langSet xml:lang="en">
                  <tig>
                    <term>example forbidden term</term>
                    <termNote type="administrativeStatus">forbidden</termNote>
                  </tig>
                </langSet>
                <langSet xml:lang="cs">
                  <tig>
                    <term>příklad zakázaného výrazu</term>
                  </tig>
                </langSet>
            </termEntry>
        </body>
    </text>
</martif>

Configuração do Weblate

Configuração de componente típica do Weblate

Máscara do arquivo

tbx/*.tbx

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo TermBase eXchange