US20150121199A1 - Method for processing and loading web pages supporting multiple languages and system thereof - Google Patents

Method for processing and loading web pages supporting multiple languages and system thereof Download PDF

Info

Publication number
US20150121199A1
US20150121199A1 US14/404,791 US201214404791A US2015121199A1 US 20150121199 A1 US20150121199 A1 US 20150121199A1 US 201214404791 A US201214404791 A US 201214404791A US 2015121199 A1 US2015121199 A1 US 2015121199A1
Authority
US
United States
Prior art keywords
language
file
translation
web page
xml
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/404,791
Inventor
Yang Wu
Yanming Shi
Peng Wan
Xiao Xiang
Xiaoyuan Zhang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Assigned to HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD. reassignment HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SHI, YANMING, WAN, Peng, WU, YANG, XIANG, Xiao, ZHANG, XIAOYUAN
Publication of US20150121199A1 publication Critical patent/US20150121199A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • G06F17/2247
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/197Version control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3088Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/70Type of the data to be coded, other than image and sound
    • H03M7/707Structured documents, e.g. XML

Definitions

  • the present invention relates to the application field of computer networks, especially relates to a technology of implementing web pages supporting multiple languages.
  • WWW World Wide Web
  • a HTML file is written for each language in each Web page, and the HTML (Hyper Text Makeup Language) file corresponding to one language is reloaded when the language is switched.
  • HTML Hyper Text Makeup Language
  • Each Web page corresponds to a HTML file and a translation file
  • the translation file is usually, but not limited to an eXtensible Markup Language (referred to as “XML”) file (the following uses the XML file as the translation file for illustration), and a corresponding node set is built for every language in the XML file.
  • XML eXtensible Markup Language
  • Strings having difference with various languages referred to as “language string” in the following
  • that are dynamically inserted using Web scripting codes or in the HTML file are extracted, and are associated with the strings of node sets for various languages in the XML file through index.
  • Strings in the HTML file is replaced through index from the node set of corresponding language in the XML file, when loading a Web page or switching languages.
  • Each Web page has a corresponding HTML file, and a XML file is written for each language.
  • Language strings in the HTML file are extracted and associated with the strings in respective XML file through index.
  • the strings in the HTML file are replaced from the XML file of the corresponding language through index, when loading a Web page or switching language.
  • the solution 2 is better than the solution 1 while the solution 3 is better than the solution 2.
  • the solution 2 and the solution 3 are better than the solution 1.
  • the comparison between the solution 2 and the solution 3 is determined by the specific circumstances: both time complexity if traversing the algorithm are same, which both are square of the number of language strings (n) in the current Web page, and for the interactive speed of the Web front-end (browser) and the Web backend (server): the solution 2 only needs to obtain one HTML file and one XML file (or referred as XMLII) when loading a Web page and needs to obtain nothing when switching language; the solution 3 needs to obtain one HTML file and one XML file (or referred as XMLIII) when loading a Web page, and needs to obtain the XML file of another corresponding language (or referred as XMLIII') when switching language.
  • the solution 3 can bisect the interaction time when loading a new Web page to several time segments of every language switching, and the frequency for the user to switch languages again is much lower than the frequency for the user to load a new Web page, so the solution 3 is better than the solution 2.
  • the presently known three solutions all take the ID properties of tags (referred to as “language tag” in the following) including language string in the HTML file as the index keys between the HTML file and the XML file.
  • language tag in the following
  • the ID properties of all tags in one HTML file are required not to be repeated by the World Wide Web Consortium standards, resulting in that the tags of the same language string displayed in different position of a HTML file have to be set with different position properties, and meanwhile repeated in the corresponding XML file multiple times;
  • the language string has to be stored in multiple corresponding XML, respectively, when multiple HTML files have the same language string;
  • dynamic language string indicating the language string that is not associated with the XML file node by the language tag in the HTML file
  • the workload when adding a new language and maintaining existing language(s) and the redundancy among the languages are increased by above defect1, defect2 and defect 3; the response speed for the user to switch Web pages or languages is reduced by above defect4 and defect5.
  • the purpose of the present invention is to provide a method for processing and loading a web page supporting multiple languages, and a system thereof, which can reduce time and cost of labor investment when some language is added or modified, save storage capacity of a web page server, increase the speed of page loading and translation rendering, and reduce the redundancy of a translation file set.
  • one embodiment of the present invention discloses a method for processing a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the method comprises the following steps: scanning all translation files in the translation file set; extracting the same language string in different translation files or in different node sets of a same translation file, and inserting the same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file; deleting the same language string from the original translation files or node sets.
  • Another embodiment of the present invention also discloses a method for loading a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the method comprises the following steps:
  • Another embodiment of the present invention also discloses a system for processing a web page supporting multiple languages, the system is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises the following modules:
  • a scanning module configured to scan all translation files in the translation file set
  • An extracting module configured to extract the same language string in different translation files or in different node sets of a same translation file scanned by the scanning module;
  • An inserting module configured to insert the same language string extracted by the extracting module into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
  • a deleting module configured to delete the same language string extracted by the extracting module from the original translation files or node sets.
  • Another embodiment of the present invention also discloses a system for loading a web page supporting multiple language, the system is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises the following modules:
  • a downloading module configured to download a XML file corresponding to a current HTML file and all ancestor translation files corresponding to the XML file from a server;
  • a combining module configured to combine a language string in the XML file downloaded by the downloading module with the common language string in all the ancestor XML files of this translation file;
  • a translation rendering module configured to insert the combined language string combined by the combining module to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading and translation rendering and reduce the redundancy of a translation file set.
  • the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a translation file set is reduced.
  • the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder.
  • the XML file set of respective language is stored in a respective folder.
  • the name property of the tags can be taken as index when switching the web pages, so as to scan and search the same language strings in the eXtensible Markup Language (XML) file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set.
  • XML eXtensible Markup Language
  • FIG. 1 illustrates a flow chart of a method for processing a web page supporting multiple languages according to the first embodiment of the present invention
  • FIG. 2 illustrates the relationship between the language type, HTML files and XML files of the method for processing a web page supporting multiple languages
  • FIG. 3 illustrates a workflow chart of adding the first language supported by the Web page
  • FIG. 4 illustrates a workflow chart of adding the second or nth language supported by the Web page
  • FIG. 5 illustrates a flow chart of a method for loading a web page supporting multiple languages according to the third embodiment of the present invention
  • FIG. 6 illustrates a structure diagram of a system for processing a web page supporting multiple languages according to the fifth embodiment of the present invention
  • FIG. 7 illustrates a structure diagram of a system for processing a web page supporting multiple languages according to the sixth embodiment of the present invention.
  • FIG. 8 illustrates a structure diagram of a system for loading a web page supporting multiple languages according to the seventh embodiment of the present invention
  • FIG. 9 illustrates a structure diagram of a system for loading a web page supporting multiple languages according to the eighth embodiment of the present invention.
  • FIG. 1 is a flow chart of the method for processing a web page supporting multiple languages.
  • the method for processing a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • the method for processing a web page supporting multiple languages comprises the following steps:
  • step 101 scanning all translation files in the translation file set.
  • step 102 extracting the same language string in different translation files or in different node sets of a same translation file.
  • step 103 inserting the extracted same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file.
  • step 104 deleting the same language string from the original translation files or node sets.
  • the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading, and translation rendering, and reduce the redundancy of a translation file set.
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • the “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file.
  • the “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one translation file.
  • the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • the second embodiment of the present invention relates to a method for processing a web page supporting multiple languages.
  • FIG. 2 illustrates the relationships between the language types, the HTML files and the XML files of the method for processing a web page supporting multiple languages
  • FIG. 3 and FIG. 4 are flow charts of the method for processing a web page supporting multiple languages.
  • the second embodiment is improved based on the first embodiment, and the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products.
  • the language type supported in the web page processing which is queried from the language file
  • the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder.
  • the XML file set of respective language is stored in a respective folder.
  • the tags can be taken as index when switching the web pages, so as to scan and search the same language strings in the eXtensible Markup Language (XML) file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set.
  • XML eXtensible Markup Language
  • a translation file is an eXtensible Markup Language (XML) file
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • the technical solution of the present invention is written by taking the eXtensible Markup Language (XML) file as a special case of the translation file.
  • the translation file can also be a translation file using JSON (a data exchange format for marking up data objects or arrays) or custom formats etc.
  • the language type L 2 corresponds to a tree-shaped eXtensible Markup Language (XML) file:
  • the translation file is an eXtensible Markup Language (XML) file, and it further comprises the following steps before the step of scanning all translation files in the translation file set:
  • XML eXtensible Markup Language
  • a translation file is an eXtensible Markup Language (XML) file, and it further comprises the following steps before the step of scanning all translation files in the translation file set:
  • the operation of processing a Web page supporting multiple languages is the operation that deletes the same language strings among multiple XML files, and simultaneously just keeps one copy of the same language strings into a common node set of a common minimum ancestor XML file or a common ancestor of multiple XML files.
  • it is the operation that deletes the same language strings among different node sets of a same XML file, and simultaneously just keeps one copy of the same language strings into a common node set or a common ancestor.
  • the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e.
  • a callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (S d A ), then a code segment CodeSeg A related to S d A is compressed into CbQueue in the form of the closure
  • the workflow of adding the first language supported by the Web page comprises the following steps:
  • step 301 determining the first language L 1 supported by the Web page, writing a language file XML L file, and taking L 1 as a default language L D .
  • step 302 adding a name property for the tags of the same language strings in every HTML file.
  • step 303 writing a corresponding XML file group for each HTML file (each XML file group has only one XML file as only one language is supported by the current Web page).
  • step 304 combining and lifting same language strings.
  • step 305 revising or translating the language strings, only revising the strings for the first language in this process, and mainly translating the strings for a second language and nth language in this process.
  • step 306 storing the XML file set of L 1 in a folder identified as L 1 , then ends this flow.
  • the workflow of adding the second language and nth language supported by the Web page comprises the following steps:
  • step 401 expanding a language file XML L file based on the nth language L n supported by the Web page, and determining a default language.
  • step 402 adding a XML file of the new language L n (XML X,Ln ) into every XML file group.
  • step 403 revising or translating language strings.
  • the combining and lifting operations do not need to be repeated when adding the second language and nth language L n as they have been performed when adding the first language supported by the Web page, and it only needs to translate the language strings of L 2 according to the existing XML file set of L 1 . Therefore, the number of the language strings which need to be translated will reduce r % (with respect to the existing technical solution 1 and technical solution 2).
  • step 404 storing the XML file set of L n in a folder identified as L n , then ends this flow.
  • the third embodiment of the present invention relates to a method for loading a web page supporting multiple languages.
  • FIG. 5 is a flow chart of the method for loading a web page supporting multiple languages.
  • the method for loading a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • the method for loading a web page supporting multiple languages comprises the following steps:
  • step 501 downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server.
  • step 502 combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file.
  • step 503 inserting the combined language string to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a translation file set is reduced.
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • the “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file.
  • the “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one XML file.
  • the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • a server may also be referred to as a web page server
  • a client is a browser for browsing web pages when the server is referred to as a web page server.
  • the fourth embodiment of the present invention relates to a method for loading a web page supporting multiple languages.
  • the fourth embodiment is improved based on the third embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products.
  • the property value of the tags having a same name property is taken as an index key, so as to scan and search the same language strings in the XML file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set.
  • a translation file is an eXtensible Markup Language (XML) file
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • Loading a language file where the language file is used for storing a set of language types supported by a web page and a default language.
  • a translation file is an eXtensible Markup Language (XML) file, and the step of combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file comprises the following sub-steps:
  • the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e.
  • the step of inserting the combined language string into the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch (or render) multiple languages comprises the following sub-steps:
  • a XML file (XML L ) is created to store the set of language types (C L ) supported by a product and a default language (L D ).
  • the current language (L B ) of a browser is determined at first when a Web page accesses the product, and if L B ⁇ C L , then L B is displayed as the default language of the Web page, otherwise L D is displayed as the default language of the Web page.
  • a corresponding XML file group is established according to the HTML file of the Web page, and each XML file in the group stores a string of one language (L 1 , L 1 ⁇ C L ), and the name property of the language tag in the HTML file is taken as the index key between the HTML file and the XML file.
  • the XML files of the same language L 1 are stored to form one XML file set ( ⁇ XML L1 ⁇ ) and are stored in a folder identified as L 1 .
  • Each XML file at least includes one node set (XML A ⁇ A>) named after the present file name (A) and one common node set (XML A ⁇ com>).
  • HTML C HTML C
  • HTML D and HTML E associate with a same group of XML files ( ⁇ XML CDE ,L i
  • a common node set XML CDE ⁇ com> is created in XML CDE .
  • a callback queue CbQueue is created in the Web script codes, and if there is a dynamic language string S d A existing in the Web page (A), then the code segment CodeSeg A related to S d A is compressed into CbQueue in the form of the closure Func A , and a contextual information of the CodeSeg A is added as the property of Func A to ease the internal code calling of Func A . All closures in CbQueue are sequentially executed in a queue order when a user switches languages.
  • HTML 1 form one XML file group described in technical solution 2, where HTML A and HTML B have a “one-to-one” relationship with their respectively corresponding XML file groups ( ⁇ XML A,Li ⁇ , ⁇ XML B,Li ⁇ ), and HTML C , HTML D and HTML E have a “multiple-to-one” relationship with their common XML file group ( ⁇ XML CDE,Li
  • a file set ⁇ XML X,L1 ⁇ includes a total of three levels.
  • XML p(A,B),L1 is parent XML of XML A and XML B ,XML B , XML p(A,B,CDE),L1 is parent XML of XML p(A,B),L1 and XML CDE .
  • the common node sets (XML A,L1 ⁇ com> and XML B,L1 ⁇ com>) of leaf XMLs (XML A,L1 and XML B,L1 ) having a “one-to-one” relationship are empty sets ⁇ .
  • Non-common node sets (XML P(A,B),L1 ⁇ p(A,B)> and XML p(A,B,CDE),L1 ⁇ p(A,B,CDE)>) of non-leaf XMLs (XML p(A,B),L1 and XML p(A,B,CDE),L1 ) may be ⁇ or not ⁇ .
  • XML p(A,B),L1 corresponds to HTML AB when there is a main frame and HTML A and HTML B are taken as the inter-related frames iframe containing another document in HTML AB or when HTML AB is dynamically inserted by using Asynchronous JavaScript and XML (referred to as “Ajax”) between browsers and the Web server, that is, XML p(A,B),L1 ⁇ p(A,B)> stores the language strings of XML p(A,B),L1 , in this time XML p(A,B),L1 ⁇ p(A,B)> ⁇ .
  • Ajax Asynchronous JavaScript and XML
  • the virtual level XML file is not recommended to keep unless it is taken as a root parent XML file.
  • Combining and lifting among XML can not only be performed between two XML, but also can be performed among multiple XML, for example (among three XML):
  • the method embodiments of this invention all can be implemented by software, hardware and firmware etc. No matter this invention is implemented by software, or hardware, or firmware, instruction codes all can be stored in the memory (such as permanent or revisable, volatile or non-volatile, solid or non solid, fixed or exchangeable media etc) that any type of computers can access.
  • the memory can be such as programmable array logic (PAL), random access memory (RAM), programmable read only memory (PROM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM), floppy disc, optical disc, and digital versatile disc (DVD) etc.
  • PAL programmable array logic
  • RAM random access memory
  • PROM programmable read only memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable ROM
  • floppy disc optical disc
  • DVD digital versatile disc
  • FIG. 6 is a structure diagram of the system for processing a web page supporting multiple languages.
  • the system for processing a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises following modules:
  • a scanning module configured to scan all translation files in the translation file set
  • An extracting module configured to extract the same language string in different translation files scanned by the scanning module or in different node sets of a same translation file scanned by the scanning module;
  • An inserting module configured to insert the same language string extracted by the extracting module into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
  • a deleting module configured to delete the same language string extracted by the extracting module from the original translation files or node sets.
  • the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading, and translation rendering, and reduce the redundancy of a translation file set.
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • the “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding XML file.
  • the “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same XML file.
  • the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • the first embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the first embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the first embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the first embodiment.
  • FIG. 7 is a structure diagram of the system for processing a web page supporting multiple languages.
  • the sixth embodiment is improved based on the fifth embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products.
  • the language type supported in the web page processing which is queried from the language file
  • the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder.
  • the XML file set of respective language is stored in a respective folder.
  • a translation file is an eXtensible Markup Language (XML) file
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • the system for processing a web page supporting multiple language further comprises following modules:
  • a querying module configured to query a language type supported by a web page when the web page is switched from a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
  • a choosing module configured to choose a corresponding tree-shaped eXtensible Markup Language (XML) file set according to the language types supported by the web page and queried by the querying module.
  • XML eXtensible Markup Language
  • a translated file is an eXtensible Markup Language (XML) file
  • the system for processing a web page supporting multiple language further comprises the following modules:
  • a setting module configured to set the tags corresponding to the HTML files containing the same strings in the XML files to have a same name property
  • a writing module configured to write the same name property set by the setting module into a key name of the same language strings.
  • the operation of processing a Web page supporting multiple languages is the operation that deletes the same language strings among multiple XML files, and simultaneously just keeps one copy of the same language strings into a common node set of a common minimum ancestor XML file or a common ancestor of multiple XML files.
  • it is the operation that deletes the same language strings among different node sets of a same XML file, and simultaneously just keeps one copy of the same language strings into a common node set or a common ancestor.
  • the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e.
  • the system for processing a web page supporting multiple language further comprises following modules:
  • a queue module configured to pre-create corresponding closures for respective code segments relating to dynamic language strings in the HTML files and compress the closures into a pre-created callback queue
  • a callback module configured to execute code segments corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed at first, when a web page switches languages.
  • a callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (S d A ), then a code segment CodeSeg A related to S d A is compressed into CbQueue in the form of the closure Func A , and a contextual information of CodeSeg A is added as the property of Func A to ease the internal code calling of Func A . All callback functions in CbQueue are sequentially executed in a queue order when a user switches languages, where the dynamic language string is the language string that is dynamically inserted to the web page by way of Web scripting codes.
  • the second embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the second embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the first embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the second embodiment.
  • the seventh embodiment of the present invention relates to a system for loading a web page supporting multiple languages.
  • FIG. 8 is a structure diagram of the system for loading a web page supporting multiple languages.
  • the system for loading a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • the system including following modules:
  • a downloading module configured to download a XML file corresponding to a current HTML file and all ancestor XML files corresponding to the XML file from a server.
  • a combining module configured to combine the language string in the XML file downloaded by the downloading module with the common language string in all the ancestor XML files of the XML file.
  • a translation rendering module configured to insert the combined language string combined by the combining module to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a XML file set is reduced.
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • HTML Hyper Text Makeup Language
  • XML eXtensible Markup Language
  • the “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file.
  • the “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one XML file.
  • the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • a server may also be referred to as a web page server
  • a client is a browser for browsing web pages when the server is referred to as a web page server.
  • the third embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the third embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the third embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the third embodiment.
  • the eighth embodiment of the present invention relates to a system for loading a web page supporting multiple languages.
  • FIG. 9 is a structure diagram of the system for loading a web page supporting multiple languages.
  • the eighth embodiment is improved based on the seventh embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products.
  • the property value of the tags having a same name property is taken as an index key, so as to scan and search the same language strings in the XML file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set.
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • a callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (S d A ), then a code segment CodeSeg A related to S d A is compressed into CbQueue in the form of the closure Func A , and a contextual information of CodeSeg A is added as the property of Func A to ease the internal code calling of Func A . All callback functions in CbQueue are sequentially executed in a queue order when a user switches languages, where the dynamic language string is the language string that is dynamically inserted to the web page by way of Web scripting codes.
  • the system for loading a web page supporting multiple language further comprises following modules:
  • a loading module configured to load a language file, where the language file is used for storing a set of language types supported by a web page and a default language.
  • a language querying module configured to query a language type supported by a loaded web page in the language file loaded by the loading module.
  • a selecting module configured to choose a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page chosen by the language querying module.
  • a dynamically translation rendering module configured to execute a code segments corresponding to respective index functions in the callback queue according to a principle that the one entering the callback queue first is executed first, where the index function is created by a corresponding code segment related to a dynamic language string in the HTML file, and the callback queue can be empty.
  • the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e.
  • the fourth embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the fourth embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the fourth embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the fourth embodiment.
  • relationship terms e.g. first and second etc, only are used to distinguish one substance or operation from another substance or operation in claims and description of the present invention, rather than require or suggest that any practical relationships or orders exist between these substances or operations.
  • terms “including”, “containing” or any other variants mean to include non-exclusive containing, so that processes, methods, objects or apparatus containing a series of elements not only include these elements but also other elements that are not clearly shown or inherent elements of these processes, methods, objects or apparatus. If there is no more limitation, elements limited by the phrase “include a” do not exclude other same elements in processes, methods, objects or apparatus containing these elements.

Abstract

The present invention relates to the application field of computer networks, and disclosed are a method for processing and loading a web page supporting multiple languages and a system thereof, so as to reduce time and cost of labor investment when some language is added or modified, save storage capacity of a web page server, increase the speed of page loading and translation rendering, and reduce the redundancy of a translation file set. The present invention is based on a tree-shaped translation file set, where each hypertext markup language (HTML) has a corresponding translation file. The method includes the following steps: scanning all translation files in a translation file set; extracting a same language string in different translation files or in different node sets of a same translation file, and inserting the same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file; deleting the same language string from the original translation files or node sets.

Description

    TECHNICAL FIELD
  • The present invention relates to the application field of computer networks, especially relates to a technology of implementing web pages supporting multiple languages.
  • BACKGROUND
  • A necessary condition of internationalization is to design and develop products easily adapting to requirements of different areas. It requires that switching and displaying multiple language on the World Wide Web (referred to as “WWW”) page can be conveniently implemented for the product accessed through networks. This kind of convenience includes two aspects:
  • 1. Addition and maintenance of multiple language for a Web page;
  • 2. The interactive experience when using Web page by users. The former requires that the method for processing a Web page supporting multiple languages needs to minimize the workload when adding a new language and maintaining existing language, and the latter requires the method has a higher response speed.
  • One of following three solutions is usually adopted by the prior art to implement the Web page supporting multiple language:
  • 1. A HTML file is written for each language in each Web page, and the HTML (Hyper Text Makeup Language) file corresponding to one language is reloaded when the language is switched.
  • 2. Each Web page corresponds to a HTML file and a translation file, the translation file is usually, but not limited to an eXtensible Markup Language (referred to as “XML”) file (the following uses the XML file as the translation file for illustration), and a corresponding node set is built for every language in the XML file. Strings having difference with various languages (referred to as “language string” in the following) that are dynamically inserted using Web scripting codes or in the HTML file are extracted, and are associated with the strings of node sets for various languages in the XML file through index. Strings in the HTML file is replaced through index from the node set of corresponding language in the XML file, when loading a Web page or switching languages.
  • 3. Each Web page has a corresponding HTML file, and a XML file is written for each language. Language strings in the HTML file are extracted and associated with the strings in respective XML file through index. The strings in the HTML file are replaced from the XML file of the corresponding language through index, when loading a Web page or switching language.
  • For the maintainability of the Web page supporting multiple languages: the solution 2 is better than the solution 1 while the solution 3 is better than the solution 2. For the responding speed when the user switches Web page language: the solution 2 and the solution 3 are better than the solution 1. The comparison between the solution 2 and the solution 3 is determined by the specific circumstances: both time complexity if traversing the algorithm are same, which both are square of the number of language strings (n) in the current Web page, and for the interactive speed of the Web front-end (browser) and the Web backend (server): the solution 2 only needs to obtain one HTML file and one XML file (or referred as XMLII) when loading a Web page and needs to obtain nothing when switching language; the solution 3 needs to obtain one HTML file and one XML file (or referred as XMLIII) when loading a Web page, and needs to obtain the XML file of another corresponding language (or referred as XMLIII') when switching language. When types of supported language (L) are fewer (L≦2), the file lengths of XMLII and XMLIII are similar, and the main factor of influencing user experiences is the interaction number of the Web front-end and the Web backend, so the solution 2 is better than the solution 3. When types of supported language (L) are many (L>2), the file length of XMLII is L times the file length of XMLIII, and the main factor of influencing the user experience is interaction time of the Web front-end and the Web backend. The solution 3 can bisect the interaction time when loading a new Web page to several time segments of every language switching, and the frequency for the user to switch languages again is much lower than the frequency for the user to load a new Web page, so the solution 3 is better than the solution 2.
  • With the internationalization of products, more and more types of language are required to be supported by Web pages, so at present the methods for implementing Web pages supporting multiple language mostly use the solution 3. However, the solution 2 and the solution 3 both have following defects:
  • 1. Although the language strings in Web pages adopt a design of soft coding (i.e. HTML files and language strings are separated), the language supported by the product exists in the Web scripting code by way of hardcode. Therefore, the source code needs to be modified when each time a product supporting different language type sets is provided;
  • 2. The presently known three solutions all take the ID properties of tags (referred to as “language tag” in the following) including language string in the HTML file as the index keys between the HTML file and the XML file. However, the ID properties of all tags in one HTML file are required not to be repeated by the World Wide Web Consortium standards, resulting in that the tags of the same language string displayed in different position of a HTML file have to be set with different position properties, and meanwhile repeated in the corresponding XML file multiple times;
  • 3. The language string has to be stored in multiple corresponding XML, respectively, when multiple HTML files have the same language string;
  • 4. For some Web pages in which the language strings are fewer and meanwhile have close relationships with each other (may be frequently switched by the user), one XML file has to be loaded at same time when each time loading a new HTML file, leading to increasing the pressure of interaction between the Web front-end and the backend;
  • 5. When a user selects switching languages, the language string which is dynamically inserted into the Web page by the Web scripting code mode (referred to as “dynamic language string”, indicating the language string that is not associated with the XML file node by the language tag in the HTML file) cannot be replaced, or the Web page can only be refreshed at the same time of switching languages.
  • In summary, the workload when adding a new language and maintaining existing language(s) and the redundancy among the languages are increased by above defect1, defect2 and defect 3; the response speed for the user to switch Web pages or languages is reduced by above defect4 and defect5.
  • SUMMARY OF THE INVENTION
  • The purpose of the present invention is to provide a method for processing and loading a web page supporting multiple languages, and a system thereof, which can reduce time and cost of labor investment when some language is added or modified, save storage capacity of a web page server, increase the speed of page loading and translation rendering, and reduce the redundancy of a translation file set.
  • To solve the above technical problems, one embodiment of the present invention discloses a method for processing a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the method comprises the following steps: scanning all translation files in the translation file set; extracting the same language string in different translation files or in different node sets of a same translation file, and inserting the same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file; deleting the same language string from the original translation files or node sets.
  • Another embodiment of the present invention also discloses a method for loading a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the method comprises the following steps:
  • Downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server;
  • Combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file;
  • Inserting the combined language string into the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • Another embodiment of the present invention also discloses a system for processing a web page supporting multiple languages, the system is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises the following modules:
  • A scanning module configured to scan all translation files in the translation file set;
  • An extracting module configured to extract the same language string in different translation files or in different node sets of a same translation file scanned by the scanning module;
  • An inserting module configured to insert the same language string extracted by the extracting module into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
  • A deleting module configured to delete the same language string extracted by the extracting module from the original translation files or node sets.
  • Another embodiment of the present invention also discloses a system for loading a web page supporting multiple language, the system is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises the following modules:
  • A downloading module configured to download a XML file corresponding to a current HTML file and all ancestor translation files corresponding to the XML file from a server;
  • A combining module configured to combine a language string in the XML file downloaded by the downloading module with the common language string in all the ancestor XML files of this translation file;
  • A translation rendering module configured to insert the combined language string combined by the combining module to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • Compared to prior art, the main differences and effects of the embodiments of the present invention are:
  • By combining the same language string in different translation files or in different node sets of a same translation file into a minimum common ancestor translation file or a common node set of the same translation file, and deleting the same language string from the original translation files or node sets, the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading and translation rendering and reduce the redundancy of a translation file set.
  • By downloading from the server and combining the language string in a translation file corresponding to the current HTML file with common language string in all ancestor translation files of the translation file and translation rendering the combined language string, the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a translation file set is reduced.
  • Furthermore, according to the language type supported in the web page processing which is queried from the language file, the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder. When each time it requires providing a product that supports different language type sets or different default languages, only the XML file needs to be modified and meanwhile the corresponding folder is removed or added, instead of modifying the Web page and the source code of the script.
  • Furthermore, by setting the tags with a same name property for the language strings having the same literal value, and then writing the name property into a key name of the same language strings, the name property of the tags can be taken as index when switching the web pages, so as to scan and search the same language strings in the eXtensible Markup Language (XML) file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set.
  • Furthermore, by adopting a callback queue technology, only a few callback functions in the queue need to be executed when the user chooses to switch languages or load the web page, which improves the response speed of the webpage or the Web page when the user chooses to switch languages, and simultaneously solves the problem that dynamic language strings cannot be replaced when the user chooses to switch languages or the web page can only be refreshed at the same time of switching languages.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates a flow chart of a method for processing a web page supporting multiple languages according to the first embodiment of the present invention;
  • FIG. 2 illustrates the relationship between the language type, HTML files and XML files of the method for processing a web page supporting multiple languages;
  • FIG. 3 illustrates a workflow chart of adding the first language supported by the Web page;
  • FIG. 4 illustrates a workflow chart of adding the second or nth language supported by the Web page;
  • FIG. 5 illustrates a flow chart of a method for loading a web page supporting multiple languages according to the third embodiment of the present invention;
  • FIG. 6 illustrates a structure diagram of a system for processing a web page supporting multiple languages according to the fifth embodiment of the present invention;
  • FIG. 7 illustrates a structure diagram of a system for processing a web page supporting multiple languages according to the sixth embodiment of the present invention;
  • FIG. 8 illustrates a structure diagram of a system for loading a web page supporting multiple languages according to the seventh embodiment of the present invention;
  • FIG. 9 illustrates a structure diagram of a system for loading a web page supporting multiple languages according to the eighth embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The following description provides plenty of technical details for readers to better understand this application. Those who skilled in the art will understand, however, these technical solutions required to be protected in the claims of the present invention can be practiced without many of these specific technical details and not based on all kinds of changes and modifications in following embodiments. The same reference numerals represent the same component or have the same meaning.
  • Embodiments of the present invention will be further described in detail so that the purpose, technical solution and advantages of the present invention will become clear.
  • The first embodiment of the present invention relates to a method for processing a web page supporting multiple languages. FIG. 1 is a flow chart of the method for processing a web page supporting multiple languages. The method for processing a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • Specifically, as shown in FIG. 1, the method for processing a web page supporting multiple languages comprises the following steps:
  • In step 101, scanning all translation files in the translation file set.
  • Then proceeds to step 102, extracting the same language string in different translation files or in different node sets of a same translation file.
  • Then proceeds to step 103, inserting the extracted same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file.
  • Then proceeds to step 104, deleting the same language string from the original translation files or node sets.
  • And then, this flow is concluded.
  • By combining the same language string in different translation files or in different node sets of a same translation file into a minimum common ancestor translation file or a common node set of the same translation file and deleting the same string from the original translation files or node sets, the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading, and translation rendering, and reduce the redundancy of a translation file set.
  • When adding or modifying some language, e.g. there would have been 5000 strings which are given to the technical support or the translation company for translation, but 2000 of them may be repeated strings. Only 3000 of them need to be translated by people after using the processing method of the present invention.
  • Further, it is understood that the relationship between the Hyper Text Makeup Language (referred to as “HTML”) file and the eXtensible Markup Language (referred to as “XML”) file may be a one-to-one relationship, or may also be a multiple-to-one relationship. The “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file. The “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one translation file.
  • In the present invention, the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • The second embodiment of the present invention relates to a method for processing a web page supporting multiple languages. FIG. 2 illustrates the relationships between the language types, the HTML files and the XML files of the method for processing a web page supporting multiple languages, and FIG. 3 and FIG. 4 are flow charts of the method for processing a web page supporting multiple languages.
  • The second embodiment is improved based on the first embodiment, and the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products. According to the language type supported in the web page processing which is queried from the language file, the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder. When each time it requires providing a product that supports different language type sets or different default languages, only the XML file needs to be modified and meanwhile the corresponding folder is removed or added, instead of modifying the Web page and the source code of the script. By setting the tags with a same name property for the language strings having the same literal value, and then writing the name property into the key names of the same language strings, the tags can be taken as index when switching the web pages, so as to scan and search the same language strings in the eXtensible Markup Language (XML) file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set. By adopting a callback queue technology, only a few closures in the queue need to be executed when the user chooses to switch languages or load the web page, which improves the response speed of the webpage or the Web page when the user chooses to switch languages, and simultaneously solves the problem that dynamic language strings cannot be replaced when the user chooses to switch languages or the web page can only be refreshed at the same time of switching languages. Specifically:
  • A translation file is an eXtensible Markup Language (XML) file;
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • The technical solution of the present invention is written by taking the eXtensible Markup Language (XML) file as a special case of the translation file. In the other embodiments of the present invention, the translation file can also be a translation file using JSON (a data exchange format for marking up data objects or arrays) or custom formats etc.
  • As a preferred embodiment of the present invention, as shown in FIG. 2, the language type L2 corresponds to a tree-shaped eXtensible Markup Language (XML) file:
  • {XMLX,L2|Xε{A,B,CDE,p(A,B),p(A,B,CDE)}}∘
  • The translation file is an eXtensible Markup Language (XML) file, and it further comprises the following steps before the step of scanning all translation files in the translation file set:
  • Querying a language type supported by a web page when the web page is switched from a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
  • Choosing a corresponding tree-shaped eXtensible Markup Language (XML) file set according to the language type supported by the web page.
  • A translation file is an eXtensible Markup Language (XML) file, and it further comprises the following steps before the step of scanning all translation files in the translation file set:
  • Setting the tags corresponding to the HTML files containing the same strings in the XML files to have a same name property;
  • Writing the same name property into a key name of the same language strings.
  • Further, in short, it is understood that the operation of processing a Web page supporting multiple languages (or referred to as “combining and lifting”) is the operation that deletes the same language strings among multiple XML files, and simultaneously just keeps one copy of the same language strings into a common node set of a common minimum ancestor XML file or a common ancestor of multiple XML files. Or it is the operation that deletes the same language strings among different node sets of a same XML file, and simultaneously just keeps one copy of the same language strings into a common node set or a common ancestor.
  • Comparing with the method that takes the ID property of the language tag in the Hyper Text Makeup Language (HTML) file as the index key between the HTML file and the eXtensible Markup Language (XML) file and does not perform combining and lifting operations in the existing technical solution 1 and technical solution 2, the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e. there is nearly no same repeated language strings which need to be revised, where the reduced amount of the language strings requiring revision is related to the number of web pages or Web pages and the number of repeated strings between the internal Web page and the Web page, taking a web page product containing 30 HTML files as an example, r % being typically up to 20%-40%.
  • It further comprises the following steps after the step of deleting the same language string from the original translation files or node sets:
  • Pre-creating corresponding closures for respective code segments relating to dynamic language strings in the HTML files;
  • Compressing the closures into a pre-created callback queue to execute a code segment corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed first, when a web page switches languages.
  • A callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (Sd A), then a code segment CodeSegA related to Sd A is compressed into CbQueue in the form of the closure
  • FuncA, and a contextual information of CodeSegA is added as the property of FuncA to ease the internal code calling of FuncA. All callback functions in CbQueue are sequentially executed in a queue order when a user switches languages, where the dynamic language string is the language string that is dynamically inserted to the web page by way of Web scripting codes.
  • As a preferred embodiment of the present invention, as shown in FIG. 3, the workflow of adding the first language supported by the Web page comprises the following steps:
  • In step 301, determining the first language L1 supported by the Web page, writing a language file XMLL file, and taking L1 as a default language LD.
  • Then proceeds to step 302, adding a name property for the tags of the same language strings in every HTML file.
  • Then proceeds to step 303, writing a corresponding XML file group for each HTML file (each XML file group has only one XML file as only one language is supported by the current Web page).
  • Then proceeds to step 304, combining and lifting same language strings.
  • Then proceeds to step 305, revising or translating the language strings, only revising the strings for the first language in this process, and mainly translating the strings for a second language and nth language in this process.
  • Then proceeds to step 306, storing the XML file set of L1 in a folder identified as L1, then ends this flow.
  • As another preferred embodiment of the present invention, as shown in FIG. 4, the workflow of adding the second language and nth language supported by the Web page comprises the following steps:
  • In step 401, expanding a language file XMLL file based on the nth language Ln supported by the Web page, and determining a default language.
  • Then proceeds to step 402, adding a XML file of the new language Ln (XMLX,Ln) into every XML file group.
  • Then proceeds to step 403, revising or translating language strings. The combining and lifting operations do not need to be repeated when adding the second language and nth language Ln as they have been performed when adding the first language supported by the Web page, and it only needs to translate the language strings of L2 according to the existing XML file set of L1. Therefore, the number of the language strings which need to be translated will reduce r % (with respect to the existing technical solution 1 and technical solution 2).
  • Then proceeds to step 404, storing the XML file set of Ln in a folder identified as Ln, then ends this flow.
  • Similarly, if it is discovered that a string S of some language (Ln) is wrong and needs to be modified in the process of maintaining a Web page, only one place in the XML where S exists needs to be modified, avoiding the problem of resulting in missing parts without modifications as S turns up in the multiple places of the Web page.
  • The third embodiment of the present invention relates to a method for loading a web page supporting multiple languages. FIG. 5 is a flow chart of the method for loading a web page supporting multiple languages. The method for loading a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • Specifically, as shown in FIG. 5, the method for loading a web page supporting multiple languages comprises the following steps:
  • In step 501, downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server.
  • Then proceeds to step 502, combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file.
  • Then proceeds to step 503, inserting the combined language string to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • Then ends this flow.
  • By downloading from the server and combining the language string in a translation file corresponding to the current HTML file with common language string in all ancestor translation files of the translation file and translation rendering the combined language string, the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a translation file set is reduced.
  • Further, it is understood that the relationship between the Hyper Text Makeup Language (referred to as “HTML”) file and the eXtensible Markup Language (referred to as “XML”) file may be a one-to-one relationship, or may also be a multiple-to-one relationship. The “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file. The “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one XML file.
  • In the present invention, the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • Here, a server may also be referred to as a web page server, and a client is a browser for browsing web pages when the server is referred to as a web page server.
  • The fourth embodiment of the present invention relates to a method for loading a web page supporting multiple languages.
  • The fourth embodiment is improved based on the third embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products. When switching web page languages or loading a web page, the property value of the tags having a same name property is taken as an index key, so as to scan and search the same language strings in the XML file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set. By adopting a callback queue technology when loading a web page, only a few closures in the queue need to be executed, which improves the response speed of the webpage or the Web page when the user chooses to switch languages, and simultaneously solves the problem that dynamic language strings cannot be replaced when the user chooses to switch languages or the web page can only be refreshed at the same time of switching languages. Specifically:
  • A translation file is an eXtensible Markup Language (XML) file;
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • It further comprises the following steps before the step of downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server:
  • Loading a language file, where the language file is used for storing a set of language types supported by a web page and a default language.
  • Querying a language type supported by a loaded web page in the language file.
  • Choosing a corresponding tree-shaped eXtensible Markup Language (XML) file set according to the language type supported by the web page.
  • A translation file is an eXtensible Markup Language (XML) file, and the step of combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file comprises the following sub-steps:
  • Combining the XML file and all the ancestor XML files of the XML file into one document structure;
  • Scanning a key name of a language string in the combined document structure;
  • Inserting the scanned key name which is taken as index to the language tag content of the HTML file or replacing the language tag content of the HTML file with the scanned key name.
  • Further, it is understood that comparing with the method that takes the ID property of the language tag in the Hyper Text Makeup Language (HTML) file as the index key between the HTML file and the eXtensible Markup Language (XML) file and does not perform combining and lifting operations in the existing technical solution 1 and technical solution 2, the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e. there is nearly no same repeated language strings which need to be revised, where the reduced amount of the language strings requiring revision is related to the number of web pages or Web pages and the number of repeated strings between the internal Web page and the Web page, taking a web page product containing 30 HTML files as an example, r % being typically up to 20%-40%.
  • The step of inserting the combined language string into the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch (or render) multiple languages comprises the following sub-steps:
  • Executing a code segment corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed first, where the closure is created by a corresponding code segment related to a dynamic language string in the HTML file, and the callback queue can be empty.
  • As an another preferred embodiment of the present invention, a technical solution of the present invention is implemented by the following procedures:
  • 1. A XML file (XMLL) is created to store the set of language types (CL) supported by a product and a default language (LD). The current language (LB) of a browser is determined at first when a Web page accesses the product, and if LB εCL, then LB is displayed as the default language of the Web page, otherwise LD is displayed as the default language of the Web page.
  • 2. A corresponding XML file group is established according to the HTML file of the Web page, and each XML file in the group stores a string of one language (L1, L1 εCL), and the name property of the language tag in the HTML file is taken as the index key between the HTML file and the XML file. The XML files of the same language L1 are stored to form one XML file set ({XMLL1}) and are stored in a folder identified as L1.
  • 3. Each XML file (XMLA) at least includes one node set (XMLA<A>) named after the present file name (A) and one common node set (XMLA<com>).
  • There is a hierarchical relationship among the XML files. At first, the present node set (XMLA,L1<A>) of the XML file (XMLA,L1) associated with the HTML file (HTMLA), the common node set (XMLA,L1<com>) of XMLA,L1, the common node set (XMLP(A),L1<com>) of the parent XML file XMLP(A),L1) of XMLA,L1, the common node set (XMLP 2 (A),L1<com>) of the grandparent XML file (XMLP 2 (A),L1) of XMLA,L1, . . . and the common node set (XMLP n (A),L1<com>) of the root parent XML file XMLP n (A),L1) of XMLA,L1 are combined into one XML document structure (XMLDocA,L1) when loading a Web page (A) or switching languages (the language is L1), then strings in HTMLA are searched and replaced from XMLDocA,L1 by the index key.
  • If XMLA and XMLB have a same ancestor (XMLA and XMLB may have the same level, also XMLA and the ancestor of XMLB may have the same level or XMLB and the ancestor of XMLA may have the same level, also XMLA may be the ancestor of XMLB or XMLB may be the ancestor of XMLA) and XMLA and XMLB have the same strings SA and SB, then the string SAB(SAB=SA=SB) is added into the common node set (XMLP(AB)<com>) of the common minimum ancestor XML file (XMLp(AB)) of XMLA and XMLB, and SA in XMLA and SB in XMLB are deleted (the operation is referred to as “combining and lifting” in the following).
  • 4. It does not have to be one-to-one correspondent between the HTML files and the XML files (referred to as “one-to-one” relationship in the following), also multiple HTML files can associate with the same group of XML files (referred to as “multiple-to-one” relationship in the following). For example, three HTML files (HTMLC, HTMLD and HTMLE) associate with a same group of XML files ({XMLCDE,Li|LiεCL}), and the language strings of HTMLC, HTMLD and HTMLE are stored in a node set XMLCDE<C>, a node set XMLCDE<D> and a node set XMLCDE<E> of XMLCDE, respectively. And at the same time, a common node set XMLCDE<com> is created in XMLCDE.
  • If XMLCDE<C> and XMLCDE<D> have same strings SC and SD, then a string SCD (SCD-SC-SD) is added into XMLCDE<com>, and SC in XMLCDE<C> and SD in XMLCDE<D> are deleted (the operation is referred to as “combining and lifting” in the following); if XMLCDE and another XML file (XMLF) have a same ancestor, and XMLCDE and XMLF have same strings SCDE and SF, then SCDE and SF are combined and lifted into a common node set XML9(CDE,F)<com> of the common minimum ancestor XML file (XMLp(CDE,F)) of XMLCDE and XMLF
  • 5. A callback queue CbQueue is created in the Web script codes, and if there is a dynamic language string Sd A existing in the Web page (A), then the code segment CodeSegA related to Sd A is compressed into CbQueue in the form of the closure FuncA, and a contextual information of the CodeSegA is added as the property of FuncA to ease the internal code calling of FuncA. All closures in CbQueue are sequentially executed in a queue order when a user switches languages.
  • As shown in FIG. 2, a language type set includes three language types (CL={L1,L2,L3}), where L1 is a default language; there are five Web pages (five HTML files, HTMLA˜HTMLE), and three XML files ({XMLA,Li|LiεCL}) marked in diagonal stripes background in FIG. 1 form one XML file group described in technical solution 2, where HTMLA and HTMLB have a “one-to-one” relationship with their respectively corresponding XML file groups ({XMLA,Li}, {XMLB,Li}), and HTMLC, HTMLD and HTMLE have a “multiple-to-one” relationship with their common XML file group ({XMLCDE,Li|LiεCL}); five XML files ({XMLX,L2|Xε{A,B,CDE,p(A,B),p(A,B,CDE)}}) surrounded by solid-line frames in FIG. 1 form one XML file set described in technical solution 2, where the file sets {XMLX,L1}, {XMLX,L2} and {XMLX,L3} are stored in folders identified as L1, L2 and L3, respectively.
  • Taking language L1 as an example, a file set {XMLX,L1} includes a total of three levels. Where, XMLp(A,B),L1 is parent XML of XMLA and XMLB,XMLB, XMLp(A,B,CDE),L1 is parent XML of XMLp(A,B),L1 and XMLCDE. The common node sets (XMLA,L1<com> and XMLB,L1<com>) of leaf XMLs (XMLA,L1 and XMLB,L1) having a “one-to-one” relationship are empty sets Ø. Non-common node sets (XMLP(A,B),L1<p(A,B)> and XMLp(A,B,CDE),L1<p(A,B,CDE)>) of non-leaf XMLs (XMLp(A,B),L1 and XMLp(A,B,CDE),L1) may be Ø or not Ø. Taking XMLp(A,B),L1 as an example, XMLp(A,B),L1 corresponds to HTMLAB when there is a main frame and HTMLA and HTMLB are taken as the inter-related frames iframe containing another document in HTMLAB or when HTMLAB is dynamically inserted by using Asynchronous JavaScript and XML (referred to as “Ajax”) between browsers and the Web server, that is, XMLp(A,B),L1<p(A,B)> stores the language strings of XMLp(A,B),L1, in this time XMLp(A,B),L1<p(A,B)>≠Ø. When XMLA and XMLB are taken as separate documents, XMLp(A,B),L1<p(A,B)>=Ø, and XMLp(A,B),L1 is only taken as a virtual level XML file for storing the strings combined and lifted from XMLA and XMLB. The virtual level XML file is not recommended to keep unless it is taken as a root parent XML file.
  • Taking language L1 as an example, the combining and lifting relationship (represented by the symbol “}
    Figure US20150121199A1-20150430-P00001
    ”) among XML is:
  • XML A , L 1 < A > XML B , L 1 < B > } XML p ( A , B ) , L 1 < com > XML A , L 1 < A > XML p ( A , B ) , L 1 < p ( A , B ) > } XML p ( A , B ) , L 1 < com > XML A , L 1 < A > XML CDE , L 1 < C > } XML p ( A , B , CDE ) , L 1 < com > XML p ( A , B ) , L 1 < p ( A , B ) > XML CDE , L 1 < C > } XML p ( A , B , CDE ) , L 1 < com > XML A , L 1 < A > XML p ( A , B , CDE ) , L 1 < p ( A , B , CDE ) > } XML p ( A , B , CDE ) , L 1 < com > XML p ( A , B ) , L 1 < p ( A , B ) > XML p ( A , B , CDE ) , L 1 < p ( A , B , CDE ) > } XML p ( A , B , CDE ) , L 1 < com > XML CDE , L 1 < C > XML p ( A , B , CDE ) , L 1 < p ( A , B , CDE ) > } XML p ( A , B , CDE ) , L 1 < com >
  • etc.
  • Combining and lifting among XML can not only be performed between two XML, but also can be performed among multiple XML, for example (among three XML):
  • XML A , L 1 < A > XML B , L 1 < B > XML p ( A , B ) , L 1 < p ( A , B ) > } XML p ( A , B ) , L 1 < com > XML A , L 1 < A > XML p ( A , B ) , L 1 < p ( A , B ) > XML p ( A , B , CDE ) , L 1 < p ( A , B , CDE ) > } XML p ( A , B , CDE ) , L 1 < com > XML A , L 1 < A > XML B , L 1 < B > XML CDE , L 1 < C > } XML p ( A , B , CDE ) , L 1 < com >
  • etc.
  • The method embodiments of this invention all can be implemented by software, hardware and firmware etc. No matter this invention is implemented by software, or hardware, or firmware, instruction codes all can be stored in the memory (such as permanent or revisable, volatile or non-volatile, solid or non solid, fixed or exchangeable media etc) that any type of computers can access. Likewise, the memory can be such as programmable array logic (PAL), random access memory (RAM), programmable read only memory (PROM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM), floppy disc, optical disc, and digital versatile disc (DVD) etc.
  • The fifth embodiment of the present invention relates to a system for processing a web page supporting multiple languages. FIG. 6 is a structure diagram of the system for processing a web page supporting multiple languages. The system for processing a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, the system comprises following modules:
  • A scanning module configured to scan all translation files in the translation file set;
  • An extracting module configured to extract the same language string in different translation files scanned by the scanning module or in different node sets of a same translation file scanned by the scanning module;
  • An inserting module configured to insert the same language string extracted by the extracting module into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
  • A deleting module configured to delete the same language string extracted by the extracting module from the original translation files or node sets.
  • By combining the same language string in different translation files or in different node sets of a same translation file into a minimum common ancestor translation file or a common node set of the same translation file and deleting the same string from the original translation files or node sets, the time and cost of labor investment is reduced when some language is added or modified, which can save the storage capacity of a web page server, increase the speed of page loading, and translation rendering, and reduce the redundancy of a translation file set.
  • Further, it is understood that the relationship between the Hyper Text Makeup Language (referred to as“HTML”) file and the eXtensible Markup Language (referred to as “XML”) file may be a one-to-one relationship, or may also be a multiple-to-one relationship. The “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding XML file. The “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same XML file.
  • In the present invention, the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • The first embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the first embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the first embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the first embodiment.
  • The sixth embodiment of the present invention relates to a system for processing a web page supporting multiple languages. FIG. 7 is a structure diagram of the system for processing a web page supporting multiple languages.
  • The sixth embodiment is improved based on the fifth embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products. According to the language type supported in the web page processing which is queried from the language file, the language type set supported by a product and the default language are stored in a single XML file by way of soft coding, and the XML file set of respective language is stored in a respective folder. When each time it requires providing a product that supports different language type sets or different default languages, only the XML file needs to be modified and meanwhile the corresponding folder is removed or added, instead of modifying the Web page and the source code of the script.
  • Specifically:
  • A translation file is an eXtensible Markup Language (XML) file;
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • The system for processing a web page supporting multiple language further comprises following modules:
  • A querying module configured to query a language type supported by a web page when the web page is switched from a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
  • A choosing module configured to choose a corresponding tree-shaped eXtensible Markup Language (XML) file set according to the language types supported by the web page and queried by the querying module.
  • A translated file is an eXtensible Markup Language (XML) file, the system for processing a web page supporting multiple language further comprises the following modules:
  • A setting module configured to set the tags corresponding to the HTML files containing the same strings in the XML files to have a same name property;
  • A writing module configured to write the same name property set by the setting module into a key name of the same language strings.
  • Further, in short, it is understood that the operation of processing a Web page supporting multiple languages (or referred to as “combining and lifting”) is the operation that deletes the same language strings among multiple XML files, and simultaneously just keeps one copy of the same language strings into a common node set of a common minimum ancestor XML file or a common ancestor of multiple XML files. Or it is the operation that deletes the same language strings among different node sets of a same XML file, and simultaneously just keeps one copy of the same language strings into a common node set or a common ancestor.
  • Comparing with the method that takes the ID property of the language tag in the Hyper Text Makeup Language (HTML) file as the index key between the HTML file and the eXtensible Markup Language (XML) file and does not perform combining and lifting operations in the existing technical solution 1 and technical solution 2, the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e. there is nearly no same repeated language strings which need to be revised, where the reduced amount of the language strings requiring revision is related to the number of web pages or Web pages and the number of repeated strings between the internal Web page and the Web page, taking a web page product containing 30 HTML files as an example, r % being typically up to 20%-40%.
  • The system for processing a web page supporting multiple language further comprises following modules:
  • A queue module configured to pre-create corresponding closures for respective code segments relating to dynamic language strings in the HTML files and compress the closures into a pre-created callback queue;
  • A callback module configured to execute code segments corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed at first, when a web page switches languages.
  • Further, it is understood that a callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (Sd A), then a code segment CodeSegA related to Sd A is compressed into CbQueue in the form of the closure FuncA, and a contextual information of CodeSegA is added as the property of FuncA to ease the internal code calling of FuncA. All callback functions in CbQueue are sequentially executed in a queue order when a user switches languages, where the dynamic language string is the language string that is dynamically inserted to the web page by way of Web scripting codes.
  • The second embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the second embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the first embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the second embodiment.
  • The seventh embodiment of the present invention relates to a system for loading a web page supporting multiple languages. FIG. 8 is a structure diagram of the system for loading a web page supporting multiple languages. The system for loading a web page supporting multiple languages is based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file.
  • The system including following modules:
  • A downloading module configured to download a XML file corresponding to a current HTML file and all ancestor XML files corresponding to the XML file from a server.
  • A combining module configured to combine the language string in the XML file downloaded by the downloading module with the common language string in all the ancestor XML files of the XML file.
  • A translation rendering module configured to insert the combined language string combined by the combining module to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
  • By downloading from the server and combining the language string in a XML file corresponding to the current HTML file with common language string in all ancestor XML files of the translation file and translation rendering the combined language string, the storage capacity of a web page server can be saved, the speed of page loading and translation rendering is increased and the redundancy of a XML file set is reduced.
  • Further, it is understood that the relationship between the Hyper Text Makeup Language (referred to as “HTML”) file and the eXtensible Markup Language (referred to as “XML”) file may be a one-to-one relationship, or may also be a multiple-to-one relationship. The “one-to-one” relationship between the HTML file and the XML file is: for some language, the language strings in one HTML file are stored in one corresponding translation file. The “multiple-to-one” relationship between the HTML file and the translation file is: for some language, the language strings in multiple HTML files are respectively stored in different node sets of the same one XML file.
  • In the present invention, the language string is the string that has difference with respective language in the Hyper Text Makeup Language file and needs to be replaced when switching languages of a web page, and also includes the string which is dynamically inserted into the page using web page script codes.
  • Here, a server may also be referred to as a web page server, and a client is a browser for browsing web pages when the server is referred to as a web page server.
  • The third embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the third embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the third embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the third embodiment.
  • The eighth embodiment of the present invention relates to a system for loading a web page supporting multiple languages. FIG. 9 is a structure diagram of the system for loading a web page supporting multiple languages.
  • The eighth embodiment is improved based on the seventh embodiment, the main improvement is: by corresponding one language type with one tree-shaped XML file set, the workload when adding a new language and maintaining the existing language can be reduced during the process of developing products. When switching web page languages or loading a web page, the property value of the tags having a same name property is taken as an index key, so as to scan and search the same language strings in the XML file set in association and meanwhile further reduce the redundancy of the language strings in the XML file set. By adopting a callback queue technology when loading a web page, only a few closures in the queue need to be executed, which improves the response speed of the webpage or the Web page when the user chooses to switch languages, and simultaneously solves the problem that dynamic language strings cannot be replaced when the user chooses to switch languages or the web page can only be refreshed at the same time of switching languages. Specifically:
  • One tree-shaped eXtensible Markup Language (XML) file set corresponds to one language type.
  • A callback queue CbQueue is created in the web page script codes, and if the web page (A) has a dynamic language string (Sd A), then a code segment CodeSegA related to Sd A is compressed into CbQueue in the form of the closure FuncA, and a contextual information of CodeSegA is added as the property of FuncA to ease the internal code calling of FuncA. All callback functions in CbQueue are sequentially executed in a queue order when a user switches languages, where the dynamic language string is the language string that is dynamically inserted to the web page by way of Web scripting codes.
  • As shown in FIG. 9, the system for loading a web page supporting multiple language further comprises following modules:
  • A loading module configured to load a language file, where the language file is used for storing a set of language types supported by a web page and a default language.
  • A language querying module configured to query a language type supported by a loaded web page in the language file loaded by the loading module.
  • A selecting module configured to choose a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page chosen by the language querying module.
  • A dynamically translation rendering module configured to execute a code segments corresponding to respective index functions in the callback queue according to a principle that the one entering the callback queue first is executed first, where the index function is created by a corresponding code segment related to a dynamic language string in the HTML file, and the callback queue can be empty.
  • Further, it is understood that comparing with the method that takes the ID property of the language tag in the Hyper Text Makeup Language (HTML) file as the index key between the HTML file and the eXtensible Markup Language (XML) file and does not perform combining and lifting operations in the existing technical solution 1 and technical solution 2, the method of the present invention takes the name property of the language tag in the HTML file as the index key between the HTML file and the XML file and performs the operation of processing a web page supporting multiple languages (or referred to as “combining and lifting”), so that the number of language strings requiring revision is significantly reduced when a web page of high capacity switches languages or web pages are loaded, and the redundancy r % among language strings is almost zero, i.e. there is nearly no same repeated language strings which need to be revised, where the reduced amount of the language strings requiring revision is related to the number of web pages or Web pages and the number of repeated strings between the internal Web page and the Web page, taking a web page product containing 30 HTML files as an example, r % being typically up to 20%-40%.
  • The fourth embodiment is the method embodiment corresponding to this embodiment, and this embodiment and the fourth embodiment can be implemented in cooperation with each other. Correlated technical details disclosed in the fourth embodiment are still effective in this embodiment and will not be repeated here in order to reduce duplication. Correspondingly, correlated technical details disclosed in this embodiment can also be applied in the fourth embodiment.
  • It should be illustrated that relationship terms, e.g. first and second etc, only are used to distinguish one substance or operation from another substance or operation in claims and description of the present invention, rather than require or suggest that any practical relationships or orders exist between these substances or operations. Moreover, terms “including”, “containing” or any other variants mean to include non-exclusive containing, so that processes, methods, objects or apparatus containing a series of elements not only include these elements but also other elements that are not clearly shown or inherent elements of these processes, methods, objects or apparatus. If there is no more limitation, elements limited by the phrase “include a” do not exclude other same elements in processes, methods, objects or apparatus containing these elements.
  • Although the present invention has been illustrated and described by referring to some preferred embodiments of the present invention, it should be understood by those skilled in the art that various other changes in forms and details may be made without departing from the principles and scope of the present invention.

Claims (18)

1. A method for processing a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, wherein, the method includes the following steps:
scanning all translation files in the translation file set;
extracting the same language string in different translation files or in different node sets of a same translation file, and inserting the same language string into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
deleting the same language string from the original translation files or node sets.
2. The method for processing a web page supporting multiple languages according to claim 1, wherein,
the translation file is an eXtensible Markup Language file;
one tree-shaped eXtensible Markup Language file set corresponds to one language type.
3. The method for processing a web page supporting multiple languages according to claim 1, wherein,
the translation file is an eXtensible Markup Language file;
the method further comprises the following steps before the step of scanning all translation files in the translation file set:
querying a language type supported by a web page when the web page is switched from a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
choosing a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page.
4. The method for processing a web page supporting multiple languages according to claim 1, wherein,
the translation file is an eXtensible Markup Language file;
the method further comprises the following steps before the step of scanning all translation files in the translation file set:
setting the tags corresponding to the HTML files containing the same strings in the XML files to have a same name property;
writing the same name property into a key name of the same language strings.
5. The method for processing a web page supporting multiple languages according to claim 1, wherein the method comprises the following steps after the step of deleting the same language string from the original translation files or node sets:
pre-creating corresponding closures for respective code segments relating to dynamic language strings in the HTML files;
compressing the closures into a pre-created callback queue to execute code segments corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed first, when a web page switches languages.
6. A method for loading a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, wherein the method includes the following steps:
downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server;
combining a language string in the translation file with common the language string in all the ancestor translation files of this translation file;
inserting the combined language string to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
7. The method for loading a web page supporting multiple languages according to claim 6, wherein,
the translation file is an eXtensible Markup Language file;
one tree-shaped eXtensible Markup Language file set corresponds to one language type.
8. The method for loading a web page supporting multiple languages according to claim 6, wherein the method comprises the following steps before the step of downloading a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server:
loading a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
querying a language type supported by a loaded web page in the language file;
choosing a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page.
9. The method for loading a web page supporting multiple languages according to claim 6, wherein,
the translation file is an eXtensible Markup Language file;
the step of combining a language string in the translation file with the common language string in all the ancestor translation files of this translation file further comprises the following sub-steps:
combining the XML file and all the ancestor XML files of the XML file into one document structure;
scanning a key name of a language string in the combined document structure;
inserting the scanned key name which is taken as index to the language tag content of the HTML file or replacing the language tag content of the HTML file with the scanned key name.
10. The method for loading a web page supporting multiple languages according to claim 6, wherein, the translation file is an eXtensible Markup Language file;
the step of inserting the combined language string into the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages further comprises the following sub-steps:
executing code segments corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed first, where the closure is created by a corresponding code segment related to a dynamic language string in the HTML file, and the callback queue can be empty.
11. A system for processing a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, wherein, the system includes the following modules:
a scanning module configured to scan all translation files in the translation file set;
an extracting module configured to extract the same language string in different translation files scanned by the scanning module or in different node sets of a same translation file scanned by the scanning module;
an inserting module configured to insert the same language string extracted by the extracting module into a minimum common ancestor translation file of the different translation files or a common node set of the same translation file;
a deleting module configured to delete the same language string extracted by the extracting module from the original translation files or node sets.
12. The system for processing a web page supporting multiple languages according to claim 11, wherein, the translation file is an eXtensible Markup Language file;
one tree-shaped eXtensible Markup Language file set corresponds to one language type.
13. The system for processing a web page supporting multiple languages according to claim 11, wherein, the translation file is an eXtensible Markup Language file;
the system further comprises the following modules:
a query module configured to query a language type supported by a web page when the web page is switched from a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
a choosing module configured to choose a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page.
14. The system for processing a web page supporting multiple languages according to claim 11, wherein, the translation file is an eXtensible Markup Language file;
the system further comprises the following modules:
a setting module configured to set the tags corresponding to the HTML files containing the same strings in the XML files to have a same name property;
a writing module configured to write the same name property set by the setting module into a key name of the same language strings.
15. The system for processing a web page supporting multiple languages according to claim 11, wherein, the system further comprises the following modules:
a queue module configured to pre-create corresponding closures for respective code segments relating to dynamic language strings in the HTML files and compress the closures into a pre-created callback queue;
a callback module configured to execute code segments corresponding to respective closures in the callback queue according to a principle that the one entering the callback queue first is executed first, when a web page switches languages.
16. A system for loading a web page supporting multiple languages, based on a tree-shaped translation file set, where each hypertext markup language HTML file has a corresponding translation file, wherein, the system includes the following modules:
a downloading module configured to download a translation file corresponding to a current HTML file and all ancestor translation files corresponding to the translation file from a server;
a combining module configured to combine a language string in the translation file downloaded by the downloading module with common language string in all the ancestor translation files of this translation file;
a translation rendering module configured to insert the combined language string combined by the combining module to the language tag content of the HTML file or replacing the language tag content of the HTML file with the combined language string to display or switch multiple languages.
17. The system for loading a web page supporting multiple languages according to claim 16, wherein, the translation file is an eXtensible Markup Language file;
one tree-shaped eXtensible Markup Language file set corresponds to one language type.
18. The system for loading a web page supporting multiple languages according to claim 16, wherein, the system further comprises the following modules:
a loading module configured to load a language file, where the language file is used for storing a set of language types supported by a web page and a default language;
a language querying module configured to query a language type supported by a loaded web page in the language file loaded by the loading module;
a selecting module configured to choose a corresponding tree-shaped eXtensible Markup Language file set according to the language type supported by the web page chosen by the language querying module.
a dynamically translation rendering module configured to execute code segments corresponding to respective index functions in the callback queue according to a principle that the one entering the callback queue first is executed first, where the index function is created by a corresponding code segment related to a dynamic language string in the HTML file, and the callback queue can be empty.
US14/404,791 2012-06-01 2012-11-16 Method for processing and loading web pages supporting multiple languages and system thereof Abandoned US20150121199A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210182827.XA CN102693322B (en) 2012-06-01 2012-06-01 Multi-language supporting webpage processing method, webpage loading method and systems
CN201210182827.X 2012-06-01
PCT/CN2012/084784 WO2013177905A1 (en) 2012-06-01 2012-11-16 Method for processing web page supporting multiple languages, web paging loading method, and system thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/084784 A-371-Of-International WO2013177905A1 (en) 2012-06-01 2012-11-16 Method for processing web page supporting multiple languages, web paging loading method, and system thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/184,652 Division US10417348B2 (en) 2012-06-01 2016-06-16 Method for processing and loading web pages supporting multiple languages and system thereof

Publications (1)

Publication Number Publication Date
US20150121199A1 true US20150121199A1 (en) 2015-04-30

Family

ID=46858755

Family Applications (2)

Application Number Title Priority Date Filing Date
US14/404,791 Abandoned US20150121199A1 (en) 2012-06-01 2012-11-16 Method for processing and loading web pages supporting multiple languages and system thereof
US15/184,652 Active 2033-11-17 US10417348B2 (en) 2012-06-01 2016-06-16 Method for processing and loading web pages supporting multiple languages and system thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/184,652 Active 2033-11-17 US10417348B2 (en) 2012-06-01 2016-06-16 Method for processing and loading web pages supporting multiple languages and system thereof

Country Status (4)

Country Link
US (2) US20150121199A1 (en)
EP (1) EP2857984B1 (en)
CN (1) CN102693322B (en)
WO (1) WO2013177905A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150324336A1 (en) * 2014-05-07 2015-11-12 Transifex Limited Content localization
US20180253426A1 (en) * 2017-03-03 2018-09-06 Perkinelmer Informatics, Inc. Systems and methods for searching and indexing documents comprising chemical information
US10467275B2 (en) * 2016-12-09 2019-11-05 International Business Machines Corporation Storage efficiency
US10558732B2 (en) * 2016-06-22 2020-02-11 Fuji Xerox Co., Ltd. Information processing apparatus, non-transitory computer readable medium, and information processing method for executing a function common to two archive files
US10684826B2 (en) * 2017-02-10 2020-06-16 Guangzhou Uc Network Technology Co., Ltd. Method and device for page rendering and validation
US10733237B2 (en) 2015-09-22 2020-08-04 International Business Machines Corporation Creating data objects to separately store common data included in documents
US11030391B2 (en) * 2018-08-24 2021-06-08 Grace Technology, Inc. Document creation support system
CN113568692A (en) * 2021-07-12 2021-10-29 交控科技股份有限公司 Multi-language display method and device, electronic equipment and storage medium
WO2021236215A1 (en) * 2020-05-21 2021-11-25 Microsoft Technology Licensing, Llc De-duplication of localized resources in a deployment package of a software product
US20220100971A1 (en) * 2020-09-25 2022-03-31 Alipay Labs (singapore) Pte. Ltd. Data processing methods, mobile terminals, and open platforms
US11516300B2 (en) * 2016-11-30 2022-11-29 Hughes Network Systems, Llc System, method and program for localizing web page interfaces via asynchronous data and automatic binding

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567384B (en) * 2010-12-29 2017-02-01 上海掌门科技有限公司 Webpage multi-language dynamic switching method and system based on webpage browser engine
CN102693322B (en) 2012-06-01 2014-10-22 杭州海康威视数字技术股份有限公司 Multi-language supporting webpage processing method, webpage loading method and systems
CN103793368B (en) * 2012-10-31 2016-12-21 上海佑译信息科技有限公司 A kind of method of labelling in protection markup language automatically in automatization translation processes
CN103067265B (en) * 2012-12-19 2016-04-06 上海市共进通信技术有限公司 Be applied to the Multilingual WEB user interface display control of home gateway
CN103902261B (en) * 2012-12-25 2017-03-01 北京慧点科技有限公司 A kind of method and device processing software resource
CN103544306A (en) * 2013-11-01 2014-01-29 广东威创视讯科技股份有限公司 Multi-language display supporting method and device of website
CN104915204A (en) * 2015-06-08 2015-09-16 小米科技有限责任公司 Web processing method and device
CN105573993A (en) * 2015-12-31 2016-05-11 深圳市科陆电子科技股份有限公司 Software multi-language translation method and system
CN105760542B (en) * 2016-03-15 2022-07-29 腾讯科技(深圳)有限公司 Display control method, terminal and server
CN105868320A (en) * 2016-03-25 2016-08-17 乐视控股(北京)有限公司 Display method, device and system
CN106202066B (en) * 2016-07-05 2019-07-05 腾讯科技(深圳)有限公司 The interpretation method and device of website
CN109976840B (en) * 2017-12-27 2022-03-04 航天信息股份有限公司 Method and system for realizing multi-language automatic adaptation based on foreground and background separation platform
CN110795915A (en) * 2018-07-31 2020-02-14 中兴通讯股份有限公司 Method, system, equipment and computer-readable storage medium for modifying xml file in batch
CN111078338A (en) * 2019-11-28 2020-04-28 北京三快在线科技有限公司 Method and device for internationalized processing of software, storage medium and electronic device
CN113032842B (en) * 2019-12-25 2024-01-26 南通理工学院 Webpage tamper-proof system and method based on cloud platform
CN111221617A (en) * 2020-01-20 2020-06-02 厦门靠谱云股份有限公司 Method and system for multi-language switching in single project based on webpage
CN111767104B (en) * 2020-05-07 2023-09-01 北京奇艺世纪科技有限公司 Language type switching method and device, computer equipment and storage medium
CN111857906B (en) * 2020-06-03 2022-02-01 北京旷视科技有限公司 Text display method, device and system of terminal and storage medium
CN112052648B (en) * 2020-09-02 2021-11-16 文思海辉智科科技有限公司 String translation method and device, electronic equipment and storage medium
CN112257462A (en) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 Hypertext markup language translation method based on neural machine translation technology
CN112988297A (en) * 2021-03-10 2021-06-18 深圳市创想三维科技有限公司 Language switching method and device based on touch screen, electronic equipment and storage medium
CN113296754B (en) * 2021-07-28 2021-11-12 北京蔚领时代科技有限公司 Script language conversion method, editor, equipment and storage medium based on xml

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020123878A1 (en) * 2001-02-05 2002-09-05 International Business Machines Corporation Mechanism for internationalization of web content through XSLT transformations
US20020152063A1 (en) * 2000-07-05 2002-10-17 Hidemasa Tokieda Method for performing multilingual translation through a communication network and a communication system and information recording medium for the same method
US20030005159A1 (en) * 2001-06-07 2003-01-02 International Business Machines Corporation Method and system for generating and serving multilingual web pages
US20030074481A1 (en) * 2001-10-17 2003-04-17 International Business Machines Corporation Uniform handling of external resources within structured documents
US20030084401A1 (en) * 2001-10-16 2003-05-01 Abel Todd J. Efficient web page localization
US20040044518A1 (en) * 2002-08-27 2004-03-04 Reed John E. Method and system for multilingual display generation
US20040049374A1 (en) * 2002-09-05 2004-03-11 International Business Machines Corporation Translation aid for multilingual Web sites
US20040254781A1 (en) * 2001-10-29 2004-12-16 Appleby Stephen C Machine translation
US20050043938A1 (en) * 2001-10-08 2005-02-24 Emil Viken Mutilingual support in web servers for embedded systems
US20060136193A1 (en) * 2004-12-21 2006-06-22 Xerox Corporation. Retrieval method for translation memories containing highly structured documents
US20090327866A1 (en) * 2008-06-27 2009-12-31 International Business Machines System and method for creating an internationalized web application
US7784026B1 (en) * 2002-06-05 2010-08-24 Adobe Systems Incorporated Web application internationalization
US20120005571A1 (en) * 2009-03-18 2012-01-05 Jie Tang Web translation with display replacement
US8145993B2 (en) * 2007-01-03 2012-03-27 Oracle International Corporation XML-based translation
US8265924B1 (en) * 2005-10-06 2012-09-11 Teradata Us, Inc. Multiple language data structure translation and management of a plurality of languages
US20130227522A1 (en) * 2012-02-23 2013-08-29 Microsoft Corporation Integrated Application Localization
US8719693B2 (en) * 2008-02-22 2014-05-06 International Business Machines Corporation Method for storing localized XML document values
US8751925B1 (en) * 2010-04-05 2014-06-10 Facebook, Inc. Phased generation and delivery of structured documents
US9128918B2 (en) * 2010-07-13 2015-09-08 Motionpoint Corporation Dynamic language translation of web site content

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040060858A (en) * 2004-01-15 2004-07-06 엔에이치엔(주) A method for providing multi-language translation service and a system of enabling the method
US20080221864A1 (en) * 2007-03-08 2008-09-11 Daniel Blumenthal Process for procedural generation of translations and synonyms from core dictionaries
JP5239307B2 (en) * 2007-11-20 2013-07-17 富士ゼロックス株式会社 Translation apparatus and translation program
US8595710B2 (en) * 2008-03-03 2013-11-26 Microsoft Corporation Repositories and related services for managing localization of resources
CN102103495A (en) * 2009-12-16 2011-06-22 新奥特(北京)视频技术有限公司 Internationalizing system of picture and text packaging programming control software
CN102103494A (en) * 2009-12-16 2011-06-22 新奥特(北京)视频技术有限公司 Method and device for changing software resource
CN102402516A (en) * 2010-09-08 2012-04-04 英业达股份有限公司 System and method for generating second language webpage by first language webpage
US8670973B2 (en) * 2010-09-16 2014-03-11 International Business Machines Corporation Language translation reuse in different systems
US20120072831A1 (en) * 2010-09-16 2012-03-22 Gemtek Technology Co., Ltd Method for creating a multi-lingual web page
US9442744B2 (en) * 2012-02-23 2016-09-13 Microsoft Technology Licensing, Llc Multilingual build integration for compiled applications
CN102693322B (en) * 2012-06-01 2014-10-22 杭州海康威视数字技术股份有限公司 Multi-language supporting webpage processing method, webpage loading method and systems

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020152063A1 (en) * 2000-07-05 2002-10-17 Hidemasa Tokieda Method for performing multilingual translation through a communication network and a communication system and information recording medium for the same method
US20020123878A1 (en) * 2001-02-05 2002-09-05 International Business Machines Corporation Mechanism for internationalization of web content through XSLT transformations
US20030005159A1 (en) * 2001-06-07 2003-01-02 International Business Machines Corporation Method and system for generating and serving multilingual web pages
US20050043938A1 (en) * 2001-10-08 2005-02-24 Emil Viken Mutilingual support in web servers for embedded systems
US20030084401A1 (en) * 2001-10-16 2003-05-01 Abel Todd J. Efficient web page localization
US20030074481A1 (en) * 2001-10-17 2003-04-17 International Business Machines Corporation Uniform handling of external resources within structured documents
US20040254781A1 (en) * 2001-10-29 2004-12-16 Appleby Stephen C Machine translation
US7784026B1 (en) * 2002-06-05 2010-08-24 Adobe Systems Incorporated Web application internationalization
US20040044518A1 (en) * 2002-08-27 2004-03-04 Reed John E. Method and system for multilingual display generation
US20040049374A1 (en) * 2002-09-05 2004-03-11 International Business Machines Corporation Translation aid for multilingual Web sites
US20060136193A1 (en) * 2004-12-21 2006-06-22 Xerox Corporation. Retrieval method for translation memories containing highly structured documents
US8265924B1 (en) * 2005-10-06 2012-09-11 Teradata Us, Inc. Multiple language data structure translation and management of a plurality of languages
US8145993B2 (en) * 2007-01-03 2012-03-27 Oracle International Corporation XML-based translation
US8719693B2 (en) * 2008-02-22 2014-05-06 International Business Machines Corporation Method for storing localized XML document values
US20090327866A1 (en) * 2008-06-27 2009-12-31 International Business Machines System and method for creating an internationalized web application
US20120005571A1 (en) * 2009-03-18 2012-01-05 Jie Tang Web translation with display replacement
US8751925B1 (en) * 2010-04-05 2014-06-10 Facebook, Inc. Phased generation and delivery of structured documents
US9128918B2 (en) * 2010-07-13 2015-09-08 Motionpoint Corporation Dynamic language translation of web site content
US20130227522A1 (en) * 2012-02-23 2013-08-29 Microsoft Corporation Integrated Application Localization

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150324336A1 (en) * 2014-05-07 2015-11-12 Transifex Limited Content localization
US10733239B2 (en) 2015-09-22 2020-08-04 International Business Machines Corporation Creating data objects to separately store common data included in documents
US10733237B2 (en) 2015-09-22 2020-08-04 International Business Machines Corporation Creating data objects to separately store common data included in documents
US10558732B2 (en) * 2016-06-22 2020-02-11 Fuji Xerox Co., Ltd. Information processing apparatus, non-transitory computer readable medium, and information processing method for executing a function common to two archive files
US11516300B2 (en) * 2016-11-30 2022-11-29 Hughes Network Systems, Llc System, method and program for localizing web page interfaces via asynchronous data and automatic binding
US10467275B2 (en) * 2016-12-09 2019-11-05 International Business Machines Corporation Storage efficiency
US10684826B2 (en) * 2017-02-10 2020-06-16 Guangzhou Uc Network Technology Co., Ltd. Method and device for page rendering and validation
US10572545B2 (en) * 2017-03-03 2020-02-25 Perkinelmer Informatics, Inc Systems and methods for searching and indexing documents comprising chemical information
US20180253426A1 (en) * 2017-03-03 2018-09-06 Perkinelmer Informatics, Inc. Systems and methods for searching and indexing documents comprising chemical information
US11301518B2 (en) 2017-03-03 2022-04-12 Perkinelmer Informatics, Inc. Systems and methods for searching and indexing documents comprising chemical information
US11030391B2 (en) * 2018-08-24 2021-06-08 Grace Technology, Inc. Document creation support system
WO2021236215A1 (en) * 2020-05-21 2021-11-25 Microsoft Technology Licensing, Llc De-duplication of localized resources in a deployment package of a software product
US11307838B2 (en) 2020-05-21 2022-04-19 Microsoft Technology Licensing, Llc De-duplication of localized resources
US20220100971A1 (en) * 2020-09-25 2022-03-31 Alipay Labs (singapore) Pte. Ltd. Data processing methods, mobile terminals, and open platforms
CN113568692A (en) * 2021-07-12 2021-10-29 交控科技股份有限公司 Multi-language display method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
WO2013177905A1 (en) 2013-12-05
US20160299888A1 (en) 2016-10-13
CN102693322B (en) 2014-10-22
EP2857984A4 (en) 2015-06-24
CN102693322A (en) 2012-09-26
EP2857984B1 (en) 2019-02-13
US10417348B2 (en) 2019-09-17
EP2857984A1 (en) 2015-04-08

Similar Documents

Publication Publication Date Title
US10417348B2 (en) Method for processing and loading web pages supporting multiple languages and system thereof
US9501581B2 (en) Method and apparatus for webpage reading based on mobile terminal
US9298730B2 (en) System and method for viewing medical images
US20090019386A1 (en) Extraction and reapplication of design information to existing websites
US7784026B1 (en) Web application internationalization
MXPA05012555A (en) File formats, methods, and computer program products for representing workbooks.
US20130339840A1 (en) System and method for logical chunking and restructuring websites
US8359302B2 (en) Systems and methods for providing hi-fidelity contextual search results
WO2016138510A1 (en) Contextual zoom
AU2010200518A1 (en) Information processing apparatus, information processing method and information processing program
WO2019118151A1 (en) Split mapping for dynamic rendering and maintaining consistency of data processed by applications
JP2014013534A (en) Document processor, image processor, image processing method and document processing program
KR100912288B1 (en) Search system using contents information in document file
CN112418875B (en) Cross-platform tax intelligent customer service corpus migration method and device
US8402366B1 (en) Format tag stacks for stream-parsing format information
CN112433995B (en) File format conversion method, system, computer device and storage medium
US9672438B2 (en) Text parsing in complex graphical images
CN113139145B (en) Page generation method and device, electronic equipment and readable storage medium
Ilsemann A brief supplement to ‘The Marlowe Corpus Revisited’and Phantom Marlowe
CN114625996A (en) Webpage content paging method and device, electronic equipment and readable storage medium
JP5707937B2 (en) Electronic document conversion apparatus and electronic document conversion method
NL2031543B1 (en) Method and device for processing image data
Gribomont OCR with Google Vision API and Tesseract
CN112528601A (en) Question bank construction method, device, equipment and storage medium based on Word document
CN117520678A (en) Webpage processing method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
AS Assignment

Owner name: HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD., C

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:WU, YANG;SHI, YANMING;WAN, PENG;AND OTHERS;REEL/FRAME:034427/0450

Effective date: 20141203

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION