Coding the next generation of localisation tools
Developing XLIFF-based FOSS localization tools for increased inter-operability, better collaboration, and data freedom
- Track: Coding for Language Communities devroom
- Room: AW1.124
- Day: Sunday
- Start: 13:00
- End: 13:20
XLIFF represents a new generation of localisation storage, providing a basic standard for expressing the common features of other formats, while allowing for extensibility to encompass more diverse features.
We’ll be looking at the history of XLIFF and how we’re implementing it with FOSS localisation tools like Pootle and the Translate Toolkit, and what this will mean for localizers, developers and software managers.
The localization world is no stranger to the document interchange problems of word processors. The XLIFF format emerged to assist localizers in sharing and moving localization files between tools.
We’ll look at some of the history of XLIFF, the false starts and the issues of some of the initial versions. Then look at the current 2.0 version of XLIFF and the advantages that have come about by simplifying the format.
The Translate Toolkit is used as a file converter into PO and we’ll look at our efforts to migrate the toolkit to use XLIFF as its target format. XLIFF, being a richer format, allows us to express more of the data that we get from other files formats and that we struggle to squeeze into PO.
To achieve this we are developing a FOSS library for XLIFF 2.0. and implementing extensions to the formats we need to support. In doing so, we aim to build on XLIFF’s powerful extensibility to provide lossless storage of localisation data, and minimally lossy conversion between formats.
Once we have stabilized this library, we will be refactoring the data model within Pootle, our web-based translation tool, to make better use of these new features for conversion and data interchange.
We have identified a number of common localisation patterns that are not specified within the core XLIFF schema, so we will be working with the relevant standards body to have these use cases specified as standard extensions to the protocol.
Speakers
Ryan Northey |