Presentation is loading. Please wait.

Presentation is loading. Please wait.

User Interface Localizer: A system for making decision support software “world-compatible” Matthew Laurenson and Seishi Ninomiya National Agricultural.

Similar presentations


Presentation on theme: "User Interface Localizer: A system for making decision support software “world-compatible” Matthew Laurenson and Seishi Ninomiya National Agricultural."— Presentation transcript:

1 User Interface Localizer: A system for making decision support software “world-compatible” Matthew Laurenson and Seishi Ninomiya National Agricultural Research Center, Tsukuba, Japan

2 Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

3 Internationalization – Why? © Copyright 1998 ACNielsen Corporation. All rights reserved – used with permission

4 The same application in four languages… One of the screens is probably much easier for you to use and contribute to.

5

6 Many Aspects to Internationalization Labels for text components (our focus) but also Date systems and formats Number formats Language for documentation Differences in farming systems and scales

7 Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

8 WeatherDataResources_ko extends ResourceBundle {... {"database", " 데이터베이스 "}, {"region", " 지역 "}, {"weather station", " 기상관측소 "}, {"station report"," 관측지점 보고 "}, {"element", " 기상요소 "}, {"metbroker", " 기상중매자 "}, {"servlet", " 서블렛 "}, {"applet", " 애플렛 "},... WeatherDataResources_zh extends ResourceBundle {... {"database", " 数据库 "}, {"region", " 地区 "}, {"weather station", " 气象站 "}, {"station report", " 台站报告 "}, {"element", " 天气要素 "}, {"metbroker", " 气象代理 "}, {"servlet", " 服务器端小程序 "}, {"applet", " 小程序 "},... Java ResourceBundles ISO Language ID Language-independent ID

9 ResourceBundle Issues If add or modify then must recompile Awkward for translators to edit Slow to load over network

10 Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

11 User Interface Localizer - Aims Easy replacement for ResourceBundles Web-based translation – easy updating Avoid compilation step Easy to add a new language Good performance for distributed applications

12 ResourceServer: Web-based Localization Database ResourceServer User Translator User Translator Supervisor User Translator Use r Translator User Add and remove label ids. Add and remove label ids. Set up new languages. Set up new languages. Authorize translators. Authorize translators. Send ids & receive text Send ids & receive text No user authorization required No user authorization required View labels in several languages Edit one language Password-controlled Communication using Java Remote Method Invocation (RMI) PostgreSQL

13 Client Application – Sample Code

14 Translator Application

15 Supervisor Applet – Translation Status

16 User Testing Asked three Chinese co-workers (good English skills) to translate terms on paper. Found that we needed term descriptions (in English, entered by supervisor) as well as English translations UIL Version 0.2 includes descriptions in translator interface Ready for next round of testing...

17 Resource Bean Created ResourceBean for fast application loads. Retrieves text from User Interface Localizer in separate thread to speed application load Groups together requests for efficiency Sets component popup text with item description if translation not available

18 Adapting Applet to User Interface Localizer import net.agmodel.resBean.*; class MyApplet implements …,ResourceBeanListener{ private ResourceBean rb=new ResourceBean(); … public void init(){ rb.registerComponent(myButton,”Utility”,”ok”); rb.registerComponent(aLabel,”Physical”,”rain”); … rb.setRBListener(this); rb.setLive(true); } public void internationalizationComplete(){ rb.setLive(false); }

19 Notes All demos at www.agmodel.net use RB Not yet used outside NARC Potential to replace database with Agricultural Ontology Service if can identify terms in AOS with some ID. (Need to be able to readily add new terms)

20 Thesaurus versus User Interface Localizer

21 Documentation and Demos Web site: http://www.agmodel.net/ResourceServer/ Will be open source

22 Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

23 ResourceSOAP Simple Object Access Protocol (SOAP) is language-neutral version of Java RMI Many programming languages have SOAP toolkits With SOAP access, User Interface Localizer could serve Visual Basic and Delphi applications.

24 Thank you 非常感谢 ! 감사합니다 Merci Malo


Download ppt "User Interface Localizer: A system for making decision support software “world-compatible” Matthew Laurenson and Seishi Ninomiya National Agricultural."

Similar presentations


Ads by Google