A web application can be considered as a two-tier construction. The web browser, where everything is presented to the user via HTML pages, is the first tier. The second tier is an engine that uses certain dynamic web content technology, such as JSP, ASP or PHP, to serve the user by making queries and updates against a database. When translating web applications for the purpose of internationalization or localization, translators only need to focus on the interface, i.e. the first tier. Elements to be translated include onscreen messages, error messages, labels, tab labels, button tops, dialogs, pick lists, drop-down lists and hyperlinks, just to name a few. These should be translated clearly, precisely and free of error.