r3 - 01 Dec 2004 - 11:38:34 - KenKruglerYou are here: OSAF >  Journal Web  >  ContributorNotes > KatieParlanteNotes > KatieParlante20041129

notes for conversation with KenKrugler about I18N/L10N

  • Questions:
    • Tools for ICU resource bundles? (In particular, tools for ICU4C) KenKrugler - there are tools, but ICU discourages using resource bundles (deprecated). The new approach is to store localizable data in XLIFF (.xlf) files, which are then converted at build time to ICU packages using XLIFF2ICUConvertor -> genrb -> pkgdata.
    • Existing open source projects using ICU resource bundles? (Again, ICU4C) KenKrugler - ICU lists a bunch of projects at http://oss.software.ibm.com/icu/credits/companies.html, but it doesn't say which are ICU4C vs. ICU4J. Some they mention are Apache, Xerces, Perl, Python, OpenOffice?, Mozilla, and various flavors of Linux.
    • Is there a notion of localizing xml? I think Mozilla uses DTDs for localizing XUL files -- is this common? KenKrugler - yes. For example, .xlf files are XML, as are PalmSource?'s .xrd resource files. One approach is to use an .xsl to convert an internal format to .xlf, send this out for translation, and then convert back to the internal format. The problem with this is that you have to either package up all of the non-text format data and include it in the .xlf, or create a secondary file that contains this same info, or be able to merge the .xlf back into the original file. Plus it's hard to take advantage of XLIFF support for localization comments/history/etc, unless you replicate all of this in the internal format. Thus ICU's approach of using XLIFF as the source-controlled container for all localizable data.

  • Observations:
    • We're not using 'menu' resources: need to work with cpia parcels
    • Widgets uses gettext/po files. Widgets localization: http://www.wxwindows.org/i18n.php
    • poEdit looks pretty good (used by widgets folks): http://poedit.sourceforge.net/
    • one could get the 'explicit context' and 'slightly harder for programmers' advantage by using id#s or all caps as gettext string, and provide a po file for en.
    • we could rely on tools for enforcement -- either at unit test time, or before check in (as we do with tabs)
    • ICU doesn't really provide a nice date object, but it does provide date formatting/parsing -- I had been conflating the two

  • Thought experiment:
    • Would it be ok to use wxWidgets for locales, date formatting/parsing, etc? We want to avoid using wxDate as a type in the repository.
    • Are there examples where we need to localize repository data beyond cpia data? KenKrugler - hopefully not, though there are examples of locale-sensitive repository behavior involving sorting of user-visible strings. I don't know whether any of the schema data is user-visible...hopefully not.

  • Projects to look at:
    • Mozilla
    • Open office
    • wxWidgets
    • zope/plone

  • Goals:
    • would be nice to not have to write our own custom localization tools

-- KatieCappsParlante - 30 Nov 2004

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r3 < r2 < r1 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.