Technology FAQ about Website and UI Translation
LinguaSol is a LanguageTech company and continuously innovates cutting edge technology products for the translation industry. From globalizing websites to localizing applications or translating documents in an effortless, quick and cost-effective way, LinguaSol provides localization and translation solutions for all business needs. With an installed base of more than 150 customers and more than one million satisfied users, LinguaSol is located in Pune.
1. What exactly is Linguify?
Linguify is not just a run-time on-the-fly page translation engine – it also has large set of application and tools to manage the collect-extract-translate-deploy cycle. It comprises of following major components:
- Run-time Engine for interception & replacement of web page contents consisting of various types of parsers and high-performance translation repository
- Crawlers, Page grabbers, text filters & connectors
- Text pre-processing engines like Term-base Detection, Name Entity Recognition
- Translation Management System with In-context Translation Editor, Advanced QA tools
- Scheduler & data connector for content change detection
2. How does Linguify translate webpages?
Simplified description of Linguify run-time translation process is as follows:
- Step 1: Intercept web data – implemented using Reverse Proxy technique.
- Step 3: Get the translated contents from the repository and replace the text. This step can get complicated when you have strings which contain both fixed text and variable data. Obviously, actual operations are far more complex to handle all varieties of web data and provide flexible translation options.
3. Why Linguify doesn’t use Scripting?
Simple – translation with Scripting cannot assure full SEO. Any translated website without SEO is almost meaningless. Moreover Scripting results into sluggish text replacement, especially on slower internet connections, resulting in poor user experience. Since these two factors are absolute show-stoppers, LinguaSol does not recommend using this.
To explain the above factors, it is useful to understand how Scripting works. Script is added (to each page), which executes after the page is downloaded and rendered on user’s browser. This execution navigates the page DOM, and collects text from each node. This text is now sent to server where translations are kept, and response received. Now the Script again navigates the DOM and replaces the original text with translated text. It is obvious that the contents are initially displayed in original language and then replaced (after some time) with translated text – hence the delay. During indexing, Bots would have (in almost all cases) already parsed and extracted text from the page before the Translation Script is able to populate translated contents and hence indexing takes place with original text.
However, LinguaSol has Scripting available as an Add-on just in case user want to translation web application for use within LAN where SEO is not required.
Linguify Scripting is highly advanced algorithm to ensure that there is no delay in showing translated contents. This is achieved by employing a proprietary method to avoid double node navigation & round-trip.
4. Does Linguify store translated webpages?
No, since Linguify translated pages on-the-fly, there is no need to store translated pages.
Are Reverse Proxy based solutions capable of translation of all type of pages including complex pages?
Most Reverse Proxy solutions are capable of translation of basic HTML, but have limitations in handling complex formats e.g. contents in HTML format inside Script tag, nested JSON with array type data which require selective translation (since Values of some Keys need to be left untouched), contents inside dynamically created JS etc.
Linguify has evolved to handle all such cases, and also has a super-processor (internally known as Page Processing Language) which enables it to handle any unseen or non-standard situations.
5. Can Linguify handle translation of Data, complex strings, error strings, alerts etc?
Yes. Linguify can translate static as well as dynamic contents with ease. Linguify also translates strings which consist of both static and dynamic text. Error strings and alerts sometimes fall in this category, and Linguify routinely translates such text.
Can Linguify translate Proper nouns?
Yes, Linguify can be configured to include Phonetic Transliteration Engine for almost all Indian language (both English to Indian language & reverse). It may be noted that the transliteration acceptability is about 80-85% due to lack of equivalence of English & Indian language phonemes.
6. What types of web data streams are translated by Linguify?
Linguify can translate wide variety of data streams:
- Plain and complex text (text having embedded attributes for part of string) in base HTML
- Text in HTML, XML or JSON format embedded within Script tag
- JSON, Nested JSON, JSON with array – with selective translation of specific Keys
- String consisting of fixed text and variable data
- Dynamic PDFs, Excel Reports
7. What all type of contents can Linguify translate?
- Simple fixed text (paragraphs, label, menus, captions etc.)
- Dynamic text – contents from database
- String containing fixed plus variable/dynamic contents (translation of such string also results into reordering of location of variable part depending upon source and target languages)
- Rich text – HTML text with embedded attributes and href
- Complex text – text broken across multiple tags within a span
- Translation of proper nouns (name/place)
8. Can Linguify translate images and PDFs?
Yes. Linguify achieves this by replacing the original images and PDFs by their translated versions.
9. What are the exclusions i.e. is there something that Linguify does not translate?
In case the application has used proprietary data communication protocol outside HTTP e.g. encrypted API call or sockets, LinguaSol may not be able to intercept such data and hence may not be able to translate such data. It may be noted that such implementations are extremely rare, and LinguaSol has encountered only 2-3 such websites in last 5-6 years (out of about 300+ major websites and applications).
Linguify also does not translated Password Protected or Signed PDFs (obviously replacement of original text with translated text invalidates the checksum). But there are other ways of fulfilling this requirement which requires minor changes in the flow.
10. Does Linguify allow translation of specific URLs and hide excluded links?
Yes, Linguify provides selection of specific URLs (or pattern of URLs) to be translated (and exclude all others). Linguify can also remove the HREF tag if the URL is excluded from translation so that the clickable link is no longer shown to the user.
11. Can Linguify translate only select part of page?
Yes, you can specify which elements to translate. For doing this, it is necessary to identify such elements, which can be done on the basis of ControlID / ClassID or data attribute.
12. Can Linguify help hiding the untranslated part of page?
Yes. In real life, you may not want to (or have budget for) translate full contents of the page. Often elements like User Reviews or Comments are excluded from translation. In order to keep uniform user experience i.e. all contents to be shown in target language, you don’t want to show any page contents which are not translated. Linguify allows you to hide such untranslated elements.
Are there any pre-requisites for use of Linguify e.g. i18N or any such preparation?
No, Linguify can translate practically any type of website or web application in as-is mode – you don’t need to make any changes or provisions. There are no pre-requisites.