·汉化新世纪 ·汉化新世纪论坛 ·百家争鸣 ·论坛集萃 ·汉化问答 ·软件介绍
文章首页 >> 汉化教学 >> 编程知识 >> 本地化中的 XML: 实用分析    Creative Commons License,创作共用协议(中文版)  署名 非商业性使用 禁止演绎

本地化中的 XML: 实用分析

作者: Rodolfo M. Raya 来源:IBM developerWorks 中国 时间:2004-12-12 点击:9643

本地化中的 XML: 实用分析

与本地化行业关系最密切的 XML 标准概述

Rodolfo M. Raya, 产品开发主管, Heartsome Holdings Pte. Ltd.

2004 年 9 月 01 日

了解 XML 标准如何帮助改进涉及到不同地点的多个参与者的翻译过程。本文主要讨论本地化行业中最常用的 XML 格式,并说明 XML 为何在多语言文档交换中变得越来越重要。

谋求在国外市场运作的任何公司都知道语言技术对于成功至关重要。合同、产品手册、小册子、广告战以及其他与公众沟通相关的每一件事,都必须适应、调整以便符合进行商业运作的不同地区的不同文化。

本文介绍了 XML 在本地化中的应用,目的是为以后的文章打下基础,后面我们将介绍相关 XML 标准的技术细节。

本地化工作流

本地化项目需要经过多个步骤,涉及到多个参与者。

图 1 所示的传统过程包括 5 个阶段(图中的蓝色框表示发生在内部的过程,黄色框表示翻译机构完成的任务)。


图 1. 传统的本地化过程
 传统的本地化过程

第一个阶段是创建需要翻译的文档。比如,典型的软件产品可能包括:

其他类型的产品如电器或者汽车可能没有 RC 文件,但会有其他需要翻译的内容,如复杂的网站、幻灯片或者广告脚本。

文档准备好后就发送给翻译机构或者几位独立的译者。这个阶段在 图 1中标为“翻译提供者”。

通常可能需要翻译多种文档格式,这样就可能带来两个问题:

如果要降低成本,第一种选择就是减少文档格式的数量。

翻译之后的文档通常需要重新格式化:不同语言的文本长度也不同,因此手册或者合同常常需要调整。这个阶段称为译后桌面出版。这一阶段通常由翻译机构或者第三方专家完成,这是因为通常这些专家配备处理多种语言的工具。

重新格式化后的文档应该经过翻译人员的审查,以避免 DTP 操作人员偶然造成的错误。完成必要的纠错之后,翻译文档最后提交给制造商。

翻译和本地化

翻译是把文本呈现为另一种语言的动作。

本地化是一种特殊的翻译,要考虑到翻译文本所用的地方或者区域的文化。

比方说,尽管英国和美国都说英语,但大西洋两岸的措词却有很大不同。比如“本地化”在英国拼写为“localisation”,而美国拼写为“localization”。

有时候“本地化”一词特指软件产品的翻译。这样说不够精确,因为并非所有的软件本地化项目都考虑到目标语言的变化。

将翻译问题交给第三方专业机构的传统做法有可能造成成本膨胀,并且不必要地增加项目的复杂性。

引发的另一个问题是要把机密信息透露给翻译人员。公司是否要透露自己的源代码呢?这是一个难以决定的问题,但管理人员通常认为较好的做法是,只向翻译机构提供需要翻译的文本,并尽量减少提供上下文所需要的机密信息的数量。





回页首


修改后的工作流

下面是另一种运作过程:

  1. 从原始文档中抽取所有可以翻译的文本。
  2. 将抽取的字符串保存为特殊的 XML 文档。
  3. 将需要翻译的 XML 文档发出。
  4. 从 XML 文档中抽取翻译后的字符串并重新插入原始文档。

使用这种方法,公司可以对本地化的过程及其各个组成部分进行更多的控制。此外,在文本抽取过程中采用好的计算机辅助翻译(CAT)工具可以减少译后 DTP 的需要。

图 2 总结了上面所述的步骤。


图 2. 修改后的本地化工作流
修改后的本地化工作流

第二个阶段(“翻译准备”)包括把字符串转化成专门的 XML 词汇表,以及重用已有的翻译。这项工作可以使用 CAT 工具或定制的文本过滤器来完成。

翻译机构返回翻译后的 XML 文档后,所有的字符串都重新插入原始文档。这个过程称为 逆转换,可以使用与步骤 1 中相同的工具完成。





回页首


XML 标准: XLIFF 和 TMX

上述过程并非什么新东西。很多软件公司都遇到过多种文档格式所造成的问题,并寻找一种基于 XML 的解决方案。

2001 年,几家 IT 公司(包括 Novell、Oracle、Sun 和 IBM)组织了一个技术委员会起草 XML Localisation Interchange File Format(XML 本地化交换文件格式,XLIFF)规范,该规范于 2002 年由 Organization for the Advancement of Structured Information Standards(结构化信息标准促进组织,OASIS)正式发布。

XLIFF 是一种通用格式

XLIFF 的一个优点是相对比较简单。XLIFF 文件可以描述成 翻译单元的集合。每个翻译单元包含从原始文档中抽取的一个句子或者一个段落,原始文本放在 <source> 元素中,翻译人员需要用适当的翻译文本填充 <target> 元素。

以前项目中的遗留翻译结果可以使用 <alt-trans> 元素增加到新的翻译单元中。有时候 <alt-trans> 元素中的翻译是正确的,则所有翻译人员必须接受建议的文本。

图 3 说明了翻译单元中不同成分之间的关系。


图 3. 翻译单元的组成
翻译单元的组成

清单 1 是一个实际的翻译单元:


清单 1. 翻译单元

<trans-unit approved="no" id="1" resname="res1" xml:space="preserve">     <source xml:lang="en">Corporate Headquarters</source>     <target xml:lang="es">Casa Central de la Compa?ía</target>     <alt-trans match-quality="100" origin="web" tool="TM Search">         <source xml:lang="en">Corporate Headquarters</source>         <target xml:lang="es">Casa Central de la Compa?ía</target>     </alt-trans>     <alt-trans match-quality="92" origin="web" tool="TM Search">         <source xml:lang="en">"Corporate Headquarters"</source>         <target xml:lang="es">"Casa Central de la Compa?ía"</target>     </alt-trans> </trans-unit>

图 4 是 XLIFF 编辑器的具体实现,其中包括源文本、目标文本和建议的翻译。


图 4. XLIFF 编辑器的实现
XLIFF 编辑器的实现

关于这种格式的更多信息请参阅 参考资料中到 XLIFF 规范的链接。

使用 TMX 重用译文

XLTFF 文件 <alt-trans> 元素中的可选译文从 译文记忆(TM) 数据库提取。译文记忆是一种语言技术,允许通过在数据库中搜索类似的片段(句子、段落或者短语)和建议的匹配来翻译文档片段。比如,可以通过将从 XLIFF 文件中翻译过来的 <source>/<target> 对保存在关系数据库或专门设计的 TM 服务器中来创建 TM。

技术手册、法律合同和公司网站常常包含在不同版本中重复出现的文本。因此维护一个 TM 数据库并尽量使用其中的内容是一种好办法。良好的 TM 系统可以显著降低本地化项目的成本。

Open Standards for Container/Content Allowing Re-use (OSCAR)组定义了 TMX公共标准,在使用不同 CAT 工具或者翻译提供程序时可以更有效地重用译文。

TMX 网站上指出:

TMX (译文记忆交换,Translation Memory eXchange)是一种厂商中立的开放式 XML 标准,用于交换使用计算机辅助翻译(CAT)和本地化工具创建的译文记忆(TM)数据。TMX 的目标是减缓不同工具和/或翻译机构之间译文记忆数据的交换,在交换过程中减少或者避免重要数据的损失。

XLIFF 和 TMX 两种规范都包含以 XML 格式存储源文档格式化信息所需要的全部元素。好的 CAT 工具使翻译人员在翻译丰富文本格式(RTF)文档时能够重用 HTML 页面中的句子,同时又不改变文本布局。这正是为何要用 TMX 格式补充 XLIFF 的主要原因。

与 XLIFF 文件类似,TMX 文件也由翻译单元组成。每个单元用 <tu> 元素表示,至少包含两个 翻译单元变体或者 <tuv> 元素。每个 <tuv> 元素给出了相应语言的文本。清单 2 是 清单 1的候选译文。


清单 2. 清单 1 所用的候选译文

<tu tuid="1090682451312" creationdate="20040313T224601Z">     <tuv xml:lang="en">        <seg>Corporate Headquarters</seg>     </tuv>     <tuv xml:lang="es">        <seg>Casa Central de la Compa?ía</seg>     </tuv> </tu>

本文附带的 .zip 文件包含完整的 XLIFF 和 TMX 例子(请参阅 参考资料)。

XLIFF 和 TMX 都是 XML 词汇表,因此可以使用 XSL 转换将 XLIFF 文件转化成 TMX 格式。(请参阅 参考资料中到 Okapi Framework 的链接,Okapi Framework 是一组 XSL 工具,用于增强对与翻译相关的 XML 资料的操作。)

译文记忆是宝贵的财产。本地化项目完成后,所有的译文都应该存放到公司维护的记忆中。这样公司就可以逐渐增加每个项目中重用文本的比例。





回页首


管理术语表

术语表是一组带有含义解释的专用术语,也可能包含术语的翻译。

合同和技术手册通常都包含在特定上下文中具有特殊含义的术语。文档交给翻译人员时通常都伴有术语表,如果术语表中包含推荐的译法,翻译人员就应该采用推荐的译法。

术语表可以采用多种格式编写。如果仅仅列出术语和译文,两栏的电子表格就足够了。但是如果公司关注术语的一致性,简单的列表就不够了。

必须反复强调,一些术语的含义仅限于给定的上下文。术语表中的表项应该包含对每种可能出现的上下文的说明、所涉及的每种语言的推荐译法以及负责文档的人员要求的任何附加属性。没有好的术语表,翻译人员就可能把复杂的技术手册翻译成毫无用处的文档。

如果要为翻译人员或者翻译机构提供可用的术语表,必须采用适当的格式。编写 TMX 标准的 OSCAR 组同时还建立了 TermBase eXchange (TBX)规范,这种基于 XML 的通用格式被普遍接受为标准。

TermBase 或者术语数据库是一种特殊的术语表,其中的术语按照用户定义的属性被分成几类。TBX 是一种可选的术语数据库内容 XML 表示。

从技术上讲,TBX 是一种 术语标记框架(TMF),是与 ISO 12200 标准(被称为 MARTIF)兼容的标记语言。

与 TMX、XLIFF 类似,TBX 提供了不同术语工具之间的可移植性,允许在一定程度上独立于工具提供商。





回页首


软件本地化

翻译普通的散文时译文的长度一般不重要。比如,德语句子通常比英文文本要长,短篇小说的德语版比英语版长一两页没有什么关系。

应用最广泛的编程语言是 C 和 C++。在 C/C++ 中,GUI 文本通常保存在 资源文件中,这种扁平文本文件有利于提取文本进行翻译。但是,作者(或者可视化工具)根据原始语言中文本的长度定义了对话窗口的大小。如果翻译之后文本的长度改变了,就会影响到窗口的布局。如果翻译后的标签比原来长,文本可能被截掉;如果翻译后的文本短了,对话框中可能出现多余的空白。

所幸的是,XLIFF 标准包含有的属性允许指定对话框中字符串的位置、文本所用的字体和字号以及其他很多细节。可以使用专门为软件本地化设计的工具在翻译的过程中可视地调整对话框布局。

Java 技术是 C/C++ 之后应用最广的语言,而且它是为促进软件国际化设计的。 准备本地化的 Java 应用程序将 GUI 文本存储在 资源包中,与 C/C++ 类似,这也是一些扁平文本文件,因此提取文本非常简单。但是与 C/C++ 相比,Java 技术有一个优点“GUI 对象可以在执行期间根据所含文本长度动态调整。这种特性是 Java 语言成为开发多语言应用程序的最佳选择之一。





回页首


结束语

本地化和全球化的各个方面都紧密地依赖于采用的技术。这篇入门文章简要介绍了本地化过程中关系最为密切的 XML 标准: XLIFF、TMX 和 TBX,并说明了各自的用法。XML 技术不是一种新东西,但富有想像力地将其用于翻译工作正逐步引起人们的兴趣,不再局限于大型公司环境,而进入谋求在全球市场中取得成功的小型企业的视野。

下一篇文章将详细探讨使用 Java 技术实现 XLIFF 和常见文件格式之间的来回转换,如扁平文本文件或者 HTML。我将介绍一种用于 Java 资源包的完备的转换工具。






回页首


下载

名字 大小 下载方法
x-localis-examples.zip 27KB  FTP     教学基地下载
关于下载方法的信息 Get Adobe® Reader®




回页首


参考资料





回页首


关于作者

Rodolfo M. Raya 的照片

Rodolfo Raya 是 Heartsome Holdings 公司的 XML 专家,该公司使用 XML 和 Java 技术开发多平台翻译/本地化和内

声明:本文引自www-900.ibm.com,版权归原出处所有。

汉化新世纪 责任编辑: 乾 .:|:. 标签(Tag): XML 本地化

·上一篇: 深入 Alchemy CATALYST 系列:安装文件(*.msi)的本地化 ·下一篇: MultiTerm iX 入门图解教程

· 版权申明: 本文引自《IBM developerWorks 中国》,如有版权疑问请及时联系本站,以便本站处理。

· 转载申明: 本文引自《IBM developerWorks 中国》[ 作者: Rodolfo M. Raya],如需转载请直接联系原始作者,并请注明原始出处。

相关文章                                                                                发表评论 打印此文 关闭窗口

| 设为首页 | 加入收藏 | 联系我们 | 友情链接
Creative Commons License,创作共用协议(中文版)  署名 非商业性使用 禁止演绎
本站内容,除转载或版权特别申明的内容外,皆遵守 创造共用协议中文版之“署名-非商业性使用-禁止演绎 2.5 中国大陆”条款
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 China License.
本网站内容源自汉化新世纪论坛的摘录和汉化新世纪成员的原创文章。
凡汉化新世纪论坛的文字皆默认为汉化新世纪与原作者共同拥有并授权发布。
如对本站发布文章有所异议请来信告知,我们将及时删除。
凡商业摘录本站文字请先与我们联系,本站将保留非授权商业发布的追究权利。
凡非商业摘录本站文字请明显注明出处和原作者,并不得改动,凡改动必先征求原作者同意。
苏ICP备05002283号