Introduction to XLIFF


Today's software files can be in any one of several formats, such as RC, EXE, DLL, .NET, Java, HTML, XML, and others.  RC-WinTrans's approach to handling these diverse file types lies in converting different file formats to one single format (XLIFF) for internal processing.  This eliminates the difficulties of dealing with several formats and normalizes the translation to a common standard and common procedures for processing the data.


XLIFF (XML Localization Interchange File Format) is a format for exchanging localization data.  XLIFF can be used to exchange data between companies, such as a software publisher and a localization vendor, or between localization tools, such as TM systems and MT systems.


By the way: RC-WinTrans uses XLIFF files  data  files where the translation data of the respective source files are stored.



What is XLIFF?

XLIFF is an XML-based format that enables translators to concentrate on just the text to be translated. Likewise, since it's a standard, manipulating XLIFF files makes localization engineering easier: once you have converters for your source file formats, you can simply use a tool that can deal with XLIFF and not worry about the original file format.  It also supports the full localization process by providing tags and attributes for things like comments, translation status of individual strings, and word count of source texts.


The XLIFF format grew out of a collaboration of a group of localization customers, localization suppliers, and tools vendors, including: Oracle, Novell, IBM/Lotus, Sun MicroSystems, Berlitz, Moravia-IT, and the RWS Group.


The XLIFF format was brought under the management of an OASIS Technical Committee. In April 2002, the first Committee Specification for XLIFF was published.  This publication is available online at


The XLIFF format aims to:

separate localizable text from formatting.

enable multiple tools to work on source strings and add to the data about the string.

store information supporting the localization process.


In its most basic form, an XLIFF file consists of one or more file elements.  Each of these contains a header and a body section.  The header contains project data, such as contact information, project phases, and pointers to reference material.  The body section contains "trans-unit" elements- the main elements in an XLIFF file.  The trans-unit elements store localizable text and its translation(s).  These elements represent segments (usually sentences in the source file that can be translated fairly independently).  The trans-unit elements contain source, target, alt-trans, and a handful of other elements.



Support for the Localization Process

The XLIFF file allows for a list of phases to be stored in the header of each file element.  The phase elements contain attributes to store information on when the phase took place, which tool was used, who the contact person for the phase was, the name of the phase, the name of the process carried out during the phase (for example, translation or review), and a job ID for the entire process.  Note that elements can also be included so that users can leave comments on a phase.  Each target element can contain a phase-name attribute which links it to a given phase.  This allows users to specify which phase introduced a particular translation, which can be useful for review purposes.