TermBase eXchange 格式

Added in version 4.5.

在 5.12 版本发生变更.

TBX 是一种用于交换术语数据的 XML 格式。

支持的功能

文件扩展名

.tbx

Linguality ⓘ

双语

支持复数 ⓘ

No

支持描述 ⓘ

Yes

支持解释 ⓘ

Yes

支持上下文 ⓘ

Yes

支持位置 ⓘ

No

支持标记 ⓘ

Yes

API 标识符

tbx

支持只读字符串 ⓘ

No

支持删除过时字符串 ⓘ

No

术语替代

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 多值格式 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.

解释

Weblate 加载并保存解释,这些来自 TBX 文件的解释将被展示在 术语表 中。

  • 翻译解释被存储为 <note from="translator"></note> 标签。

  • 源字符串解释被存储为 <descrip></descrip> 标签。

  • 源字符串解释存储为 <descrip type="Usage note"></descrip> 标签。

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 将 <termNote type="administrativeStatus"> 中管理状态为 forbidden 或 obsolete 的术语导入为 禁止的译文。

含 <descrip type="Translation needed">No</descrip> 的术语被导入为只读字符串,见 不可翻译的术语.

导入术语表文件

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.

示例文件

示例文件:

<?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>

Weblate 配置

典型的 Weblate 部件配置

文件掩码

tbx/*.tbx

单语言译文模版语言文件

空

新语种的翻译模版

空

文件格式

TermBase eXchange 文件