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

Slides:



Advertisements
Similar presentations
Tridion 5.3 Templates.
Advertisements

What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word processor), it must be given the instructions.
National Agriculture and Food Research Organization National Agricultural Research Center Data Mining and GRID Research TeamTakuji Kiura, Atsushi Yamakawa,
Schedule of Releases (since Tromso meeting) and New Access Interfaces.
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Retrieval of Information from Distributed Databases By Ananth Anandhakrishnan.
SE 370: Programming Web Services Week 4: SOAP & NetBeans Copyright © Steven W. Johnson February 1, 2013.
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Using JavaServer Pages Harry R. Erwin, PhD CIT304/CSE301.
Understand Web Services
Copyright W. Howden1 Lecture 19: Intro to O/O Components.
LYU9901-Travel Net LYU9901-Travel Net Supervisor: Prof. Michael R. Lyu Students: Ho Chi Ho Malcolm Lau Chi Ho Arthur (Presentation on )
The Horticulture and Food Research Institute of New Zealand Ltd Using MetBroker software with FieldServer Matthew Laurenson.
The Architecture of Transaction Processing Systems
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Introducing JavaBeans Identify the features of a JavaBean Create and add a bean to an application Manipulate bean properties using accessor and mutator.
Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
Chapter 15 Designing Effective Output
1/ 27 The Agriculture Ontology Service Initiative APAN Conference 20 July 2006 Singapore.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
CS413: Java Programming language Applications Applets
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Sakai: Localization & Internationalization Beth Kirschner University of Michigan
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Internationalization and the Java Stack Part 1 Matt Wheeler.
Sadegh Aliakbary. Copyright ©2014 JAVACUP.IRJAVACUP.IR All rights reserved. Redistribution of JAVACUP contents is not prohibited if JAVACUP.
Developing applications that harness the Agricultural and Natural Resource Grid (and linking your own data) Matthew Laurenson and Seishi Ninomiya National.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Internationalization and the Java Stack Matt Wheeler.
Distributed Software Development VLab project plan.
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
CSCI 6962: Server-side Design and Programming Web Services.
Learning objectives By the end of this lecture you should be able to:  have a well-earned rest! Ch 24 Beyond the second semester.
PPPL Spring/Summer CO-OP 2006 Stephen Krenzel. Focus of the CO-OP The co-op focused on improving ElVis, an application for the visualization and monitoring.
Dynamic Content On Edge Cache Server (using Microsoft.NET) Name: Aparna Yeddula CS – 522 Semester Project Project URL: cs.uccs.edu/~ayeddula/project.html.
Internationalization in the Java Stack Matt Wheeler.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
IFORM ACCOUNT MAINTENANCE ICT4D SESSION 4. IFORMBUILDER WEBSITE REQUIREMENTS To access the iFormBuilder website, you need the following items: -Reliable.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
SE-02 COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require.
INT-5: Integrate over the Web with OpenEdge® Web Services
Federated Database Set Up Greg Magsamen ITK478 SIA.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Yu Xinwen, CAF Yamakawa, A., Kiura, T. Ninomiya, S., NARC, NARO 基于数据网格的数据共享与集成 Data-Grid based application of data integration and sharing.
Jian Gui WANG New Implementation of Agriculture Models APAN19---Jan New Implementations of Agriculture Models Using Mediate Architecture.
Java Applets: GUI Components, Events, Etc. Ralph Westfall June, 2010.
Applets and Frames. Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved L14: GUI Slide 2 Applets Usually.
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
JSP BASICS AND ARCHITECTURE. Goals of JSP Simplify Creation of dynamic pages. Separate Dynamic and Static content.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Development of Distributed MetBroker toward Information Grid Jedsada Phengsuwan, Sornthep Vannarat, Piyawut Srichaikul Computer Technology Research and.
What is Java? Object Oriented Programming Language Sun Microsystems “Write Once, Run Everywhere” Bytecode and Virtual Machine Java Platform (Java VM and.
Chapter 3 JSP Overview. The Problem with Servlets processing the request and generating the response are both handled by a single servlet class Java programming.
Java – in context Main Features From Sun Microsystems ‘White Paper’
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
Applets. 9/04/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved L12: Applets Slide 2 Applets Usually.
© 2005 The Horticulture and Food Research Institute of New Zealand Ltd The agmodel project: Live linking between natural resource models and weather databases,
SOAP, Web Service, WSDL Week 14 Web site:
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
CX Introduction to Web Programming
ASP.NET Forms.
ODBC, OCCI and JDBC overview
Internationalization
Chapter 1 Introduction to Computers, Programs, and Java
Unit – 5 JAVA Web Services
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require understanding.
Presentation transcript:

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

Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

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

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

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

Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

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

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

Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

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

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

Client Application – Sample Code

Translator Application

Supervisor Applet – Translation Status

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...

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

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); }

Notes All demos at 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)

Thesaurus versus User Interface Localizer

Documentation and Demos Web site: Will be open source

Contents Internationalization Java ResourceBundles User Interface Localizer Future Plans

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.

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