Abstract: A method and apparatus for managing a localization of user centric data in a host application is disclosed. The system includes a first user device, a second user device and a server communicatively connected to each other through a network. The server is configured to receive a resource file corresponding to the user centric data, from the first user device. The server is further configured to transmit the received resource file to the second user device based on score and language expertise of second user associated with the second user device. Further, the translated data is transmitted by the server, to the first user device to synchronize the received translated data in the host application. The host application may display with translated user centric data. FIG. 4
Claims:STATEMENT OF CLAIMS
I/We claim:
1. A method (400) for managing a localization of user centric data in a host application comprises:
receiving, by a server (102), via a communication network (104), an externalized resource file corresponding to a host application pulled from an at least one of a first user device (106), wherein the externalized resource file corresponding to the host application pulled from the at least one of first user device (106) comprises extracting the source code from the host application by the at least one of first user device (106);
determining, by the server (102), a user centric data in the received externalized resource file, wherein the user centric data corresponds to a first language, wherein the determining user centric data, in the received externalized resource file comprises at least one of a label, a login data, a user defined data, a user calendar data, and a user contact data;
determining, by the server (102), whether a pre-translated user centric data corresponding to the user centric data is stored in a database (110); wherein the pre translated user centric data corresponds to a second language;
generating, by the server (102), a word count report for the user centric data, if the pre-translated user centric data corresponding to the user centric data is not found in the database (110);
transmitting, by the server (102), the at least one of word count report, and an internationalization report to at least one of a second user device (108) for translating from the first language to the second language; wherein the word count report is transmitted to the second user device (108) based on at least one of a predefined score associated with the second user device (108) and language expertise;
receiving, by the server (102), a translated word count report from the second user device (108);
notifying the at least one first user device (106), by the server (102), if the received word count report is translated from the first language to the second language;
synchronizing, by the server (102), the translated word count report to the externalized resource file corresponding to the host application, wherein the synchronizing translated word count report to the externalized resource file corresponding to the host application comprises replacing the first language associated with the user centric data with the second language associated with the user centric data; and
pushing, by the server (102), the translated word count report to the host application for localization of the user centric data in the host application.
2. The method (400) as claimed in claim 1, further comprises:
detecting, by the server (102), a first user associated with the at least one of a first user device (106) is at least one of a registered developer and a registered non developer, wherein the detecting first user of the at least one first user device (106) is at least one of the registered developer and the registered non developer comprises determining a profile data of the first user;
pushing, by the server (102), the at least one of translated word count report and a partially translated word count report to the host application, based on the request from the registered developer corresponding to the at least one of first user device (106), wherein the pushing comprises synchronizing the word count report with the externalized resource file corresponding to the host application;
generating, by the server (102), a cost report based on the generated word count report and the second language to be translated, wherein the generating cost report based on the word count report and the second language to be translated comprises at least one of a local currency, a cost breakup, an invoice and a currency exchange data; and
transmitting the received word count report to the at least one of previously transmitted second user device (108) and other second user device (108).
3. The method as claimed in claim 1, wherein the determining user centric data, in the received externalized resource file comprises parsing the externalized resource file and extracting at least one of source and translatable content.
4. The method as claimed in claim 1, wherein the word count report comprises sum of a words require translation from first language to second language, wherein the internationalization report comprises an issues corresponding to internationalization of the user centric data in the source code of the host application.
5. The method as claimed in claim 2, wherein the pushing at least one of translated word count report and the partially translated word count report to the host application, based on the request from the registered developer corresponding to the first user device (106) comprises pulling the word count report from the server (102) by the first user device (106) based on requirement by the first user associated with the first user device (106).
6. An apparatus (102) for managing a localization of user centric data in a host application comprising:
a processor (508); and
a memory (510) coupled to the processor (508), wherein the memory (510) comprises a processing module (112) configured to:
receive, via a communication network (104),an externalized resource file corresponding to a host application pulled from an at least one of a first user device (106), wherein the externalized resource file corresponding to the host application pulled from the at least one of first user device (106) comprises extracting the source code from the host application by the at least one of first user device (106);
determine a user centric data in the received externalized resource file, wherein the user centric data corresponds to a first language, wherein the user centric data corresponds to a first language, wherein the determining user centric data, in the received externalized resource file comprises at least one of a label, a login data, a user defined data, a user calendar data, and a user contact data;
determine whether a pre-translated user centric data corresponding to the user centric data is stored in a database (110); wherein the pre translated user centric data corresponds to a second language;
generate a word count report for the user centric data, if the pre-translated user centric data corresponding to the user centric data is not found in the database (110);
transmit the at least one of word count report, and an internationalization report to at least one of a second user device (108) for translating from the first language to the second language; wherein the word count report is transmitted to the second user device (108) based on at least one of a predefined score associated with the second user device (108) and language expertise, wherein the word count report comprises sum of a words require translation from first language to second language, wherein the internationalization report comprises an issues corresponding to internationalization of the user centric data in the source code of the host application;
receive a translated word count report from the second user device (108);
notify the at least one first user device (106), by the server (102), if the received word count report is translated from the first language to the second language;
synchronize the translated word count report to the externalized resource file corresponding to the host application, wherein the synchronizing translated word count report to the externalized resource file corresponding to the host application comprises replacing the first language associated with the user centric data with the second language associated with the user centric data; and push the translated word count report to the host application for localization of the user centric data in the host application.
7. The apparatus (102) as claimed in claim 6, wherein the processing module (112) is further configured to:
detect a first user associated with the at least one of a first user device (106) is at least one of a registered developer and a registered non developer, developer, wherein the detecting first user of the at least one first user device (106) is at least one of the registered developer and the registered non developer comprises determining a profile data of the first user;
push the at least one of translated word count report and a partially translated word count report to the host application, based on the request from the registered developer corresponding to the at least one of first user device (106), wherein the pushing comprises synchronizing the word count report with the externalized resource file corresponding to the host application;
generate a cost report based on the generated word count report and the second language to be translated, wherein the generating cost report based on the word count report and the second language to be translated comprises at least one of a local currency, a cost breakup, an invoice and a currency exchange data; and
transmitting the received word count report to the at least one of previously transmitted second user device (108) and other second user device (108).
8. The apparatus as claimed in claim 6, wherein the determining user centric data, in the received externalized resource file comprises parsing the externalized resource file and extracting at least one of source and translatable content.
9. The apparatus as claimed in claim 7, wherein the pushing at least one of translated word count report and the partially translated word count report to the host application, based on the request from the registered developer corresponding to the first user device (106) comprises pulling the word count report from the server (102) by the first user device (106) based on requirement by the first user associated with the first user device (106).
10. A system (100) for managing a localization of user centric data in a host application comprising:
one or more processors (508) configured for performing the method steps as claimed in claims 1 to5; and
a server (102) communicatively coupled to one or more processors (508) for managing the localization of user centric data in a host application.
, Description:TECHNICAL FIELD
[001] The embodiments herein relate to localization of host application and, more particularly, to methods and apparatuses for managing localization of a user centric data in host application.
BACKGROUND
[002] In general, an application such as conventional web sites, software applications with web pages, and other applications with web based user interfaces may require content and presentation to be localized; i.e., the content and presentation has to be provided in several different languages and locales (i.e., local currencies, time-zones, holidays, and other regional customs). Internationalization and localization considerations may poses unique challenges, as the web sites and applications may require modification of the content in the application and also the actual text displayed on buttons and other control portions of the application. In certain cases, logic within the web site or application may also be modified to accommodate the specific language and locale requirements.
[003] In conventional methods, the application may be created with several complete copies for each of the different languages or locales. However, several complete copies may require a large amount of storage and poses difficulties maintaining updates and changes to the application and interface. Other conventional methods may reduce the storage and maintenance issues by separating the localized text and images from the remainder of the application or web site. This may reduce maintenance and storage requirements; however, it may impact run-time performance of complex web-based applications during accessing and presenting information in the various language and locales. Furthermore, in yet other conventional methods, the internationalization, localization, scanning source code, sending for translating the data, receiving the translated data may be performed individually.
[004] However, the above methods may not provide a single platform for performing the steps required for localization of the application by using a centralized means such as portal.
OBJECTS
[005] The principal object of embodiments herein is to disclose a method and apparatus for managing a localization of user centric data in a host application.
[006] Another object of embodiments herein is to disclose a portal for managing the localization of user centric data in the host application.
[007] Another object of embodiments herein is to disclose a method for translating the user centric data from one language to other language.
[008] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating at least one embodiment and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.
BRIEF DESCRIPTION OF FIGURES
[009] Embodiments herein are illustrated in the accompanying drawings, through out which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
[0010] FIG. 1 illustrates a system for managing a localization of user centric data in a host application, according to embodiments as disclosed herein;
[0011] FIG. 2 illustrates a detailed view of a data processing system as shown in FIG. 1 comprising various processing modules, according to embodiments as disclosed herein;
[0012] FIG. 3A illustrates a overall flow diagram of the system for managing the localization of user centric data in the host application, according to embodiments as disclosed herein;
[0013] FIG. 3B illustrates a flow diagram for PUSH and PULL functionality, according to embodiments as disclosed herein;
[0014] FIG. 3C illustrates a flow diagram for performing word count analysis and steps for processing a file, according to embodiments as disclosed herein;
[0015] FIG. 3D illustrates a flow diagram for scanning the source code of the host application, according to embodiments as disclosed herein;
[0016] FIG. 3E illustrates a flow diagram for generating a cost report based on word count report, according to embodiments as disclosed herein;
[0017] FIG. 4 illustrates a flow diagram of method for managing the localization of user centric data in the host application, according to embodiments as disclosed herein; and
[0018] FIG. 5 illustrates a computing environment implementing the method and system for managing the localization of user centric data in the host application, according to embodiments as disclosed herein.
DETAILED DESCRIPTION
[0019] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
[0020] The embodiments herein disclose methods and apparatuses for managing a localization of user centric data in a host application by using a centralized means such as a portal. Referring now to the drawings, and more particularly to FIGS. 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown embodiments.
[0021] FIG. 1 illustrates a system 100 for managing a localization of user centric data in a host application, according to embodiments as disclosed herein. The system 100 comprises a server 102, a first user device 106 and a second user device 108. The first user device 106 and the second device 108 can be connected to the server 102 using a suitable means 104 such as a wireless communication network, a wired network, and so on. The server 102 may be at least one of a standalone server, a cloud based server or a remote server. The server comprises a database 110 and module(s) 112. The server 102 may further comprise a processor, a memory, a storage unit, a communication interface, a display interface and so on. The server 102 may also be referred to as apparatus 102.
[0022] Examples of the first user device 106 can be at least one of, but not limited to, a mobile device, a smart phone, a desktop computer, a laptop, a tablet, a phablet, an IoT (Internet of Things) device, a wearable computing device, a vehicle infotainment system, and the like. The first user device 106 may comprise a user application interface (not shown in FIG. 1). The first user device 106 may comprise other components not shown in the FIG. 1, such as a processor, a memory, a storage unit, a display interface and a communication interface respectively.
[0023] Examples of the second user device 108 can be at least one of, but not limited to, a mobile device, a smart phone, a desktop computer, a laptop, a tablet, a phablet, an IoT (Internet of Things) device, a wearable computing device, a vehicle infotainment system, and the like. The second user device 108 may comprise a user application interface (not shown in FIG. 1). The second user device 108 may comprise other components not shown in the FIG. 1, such as a processor, a memory, a storage unit, a display interface and a communication interface respectively.
[0024] The first user device 106 can run a client side application establishing a communication session with external devices, such as the second user device 108, and the server 102 via the network 104. The second user device 108 can run a client side application establishing a communication session with external devices, such as the first user device 106, and the server 102 via the network 104. The platform as disclosed herein can be at least one of a web based platform, an application resident on the first user device 106 and the second user device 108, and so on. The host application can be, but not limited to, a web based application, a web based user interface, a web site, a mobile application, a computer application, a corporate application, an enterprise solution, and so on.
[0025] A user (i.e. first user) associated with the first user device 106, may first register with the server 102 and may create a profile. The user profile of the first user corresponding to the first user device 106 can be then assigned a set of privileges specific to the user (also referred to as ‘first user’) of the first user device 106. For example, the first user may be a software developer.
[0026] Similarly, a user associated with the second user device 108 may first register with the server 102 and may create a user profile. The user profile of the user (also referred to as second user) corresponding to the second user device 108 is then assigned a set of privileges specific to the second user. For example, the second user may be a language translator for translating words written in a first language to a second language. The words may comprise a source code of the host application. Based on the user profile, access to specific sections of the platform at the server 102 can be provided to each user. In an example, a software developer herein after referred to as developer, may be allowed to view or PULL partially translated words or completely translated words, and also the developer may also be allowed to correct internationalization issues that occurred during conversion from source code to internationalization. Further, if the first user is not a developer, the first user may be given access only to create a project and upload the source code file to the server 102. Also, the second user of the second user device 108 may be given access to PULL or PUSH reports from the server 102, such as a word count report. The word count report may comprise a count of the words of the first language that needs to be translated to the second language.
[0027] In an embodiment, the first user device 106 may extract/scan the source code from the host application using a suitable means such as a plug-in installed in the first user device 106. The extracted content from the source code may require the translation from first language to second language. Further, the Internationalization report corresponding to the extracted source code may be generated. The internationalization report can include, but not be limited to, translation of text, formatting of dates, times and numbers, and time zones and so on. In an example, the user associated with the first user device 106 may scan such as a solution, a project or a file. Based on the scanning of the solution, project or file, the server 102 may generate a report such as internationalization report. The internationalization report may include potential Internationalization issues such as locale specific functions (date, time, currency etc.), URL, image references and hard coded strings. The Internationalization report may be generated by clicking on the solution, project or file and selecting options from the plug-in, installed in a development environment of the user such as developer/engineer. The hard coded strings/content may require translation from first language to second language. After the extraction of the strings/content from the source code, the resource file(s) maybe created.
[0028] The internationalization report may provide the details to the user corresponding to potential Internationalization issues such as date, time, and numbers. The internationalization issues maybe corrected by the user . Further, the plug-in may provide the information to user regarding the engineering changes required in the Internationalization report. The internationalization report may be an initial step for localization of the host application, wherein the localization is the process of translating the host application from one language to other language.
[0029] In another embodiment, a resource file is created based on the internationalization report. The hard coded strings strings/content which requires translation may be extracted from the source code and resource file(s) may be created. For example, the hardcoded strings and the data/text written using ‘single quote’ or “double quotes” may be extracted using plug-in. The resource may include the text for translation. For example, a file including a software labels and text on forms, strings/content which may require translation, may be referred resource file. Further, the resource file is externalized for performing a localization of the host application. The externalized resource file is PUSHed to the server 102 for translating the words in the externalized resource file from the first language to the second language. Furthermore, the second user corresponding to the second user device 108 may translate the words in the received externalized resource file and word count report from the server 102. The second user device 108 may synchronize/update the translated externalized resource file and word count report within the server 102. The first user corresponding to the first device 106 may PULL the translated externalized resource file and word count report from the server 102. The PULLed externalized resource file and word count report may be synchronized with the host application and the host application may be displayed in the second language as desired by the first user corresponding to first device 106.
[0030] PUSH is a feature wherein a developer or engineer may send the file to server 102 for translation. The PUSH feature may be enabled from the development/engineering environment i.e. without leaving the work area/environment by using plug-in for scanning and at the same time sending the file for translation. Further, PULL is a feature wherein a developer may pull or receive a translated file or file which may be in the process of translation. At anytime the file maybe PULLed and user need not wait till translation is fully completed. The PUSH and PULL feature may help the user to view the actual translated file much earlier and need not wait to receive the translated file. It may provide more control to the user in receiving the file as desired by the user and may not require intermediate user to send or receive files for translation.
[0031] FIG. 2 illustrates a detailed view of a data processing system as shown in FIG. 1 comprising various processing modules 112, according to embodiments as disclosed herein. In an embodiment, the processing modules 112 comprise a communication module 202, a determining module 204, a generating module 206, a detecting module 208, a synchronizing module 210 and a PUSH/PULL module 212.
[0032] In an embodiment, the communication module 202 is configured to receive, by the server 102, via a communication network 104, an externalized resource file corresponding to the host application PULLed from the first user device 106. The externalized resource file corresponding to the host application comprises at least one of the internationalization report, and an externalized string corresponding to source code of the host application. The externalized resource file may be created using the plug-in. The plug-in may create the resource file at first, based on the externalized content, hardcoded content. Further, the report including the Internationalization issues may be created. Further, the internationalization report is generated based on scanning the source code corresponding to the host application and generating the internationalization report. The internationalization report may comprise a highlight of issues corresponding to internationalization of the user centric data in the source code corresponding to the host application. In an embodiment, the determining module 204 is configured to determine user centric data, in the received externalized resource file, wherein the user centric data corresponds to the first language. Determining the user centric data, in the received externalized resource file comprises parsing the externalized resource file and extracting at least one of source and translatable content. In another embodiment, the determining module 204 is configured to determine whether a pre-translated user centric data corresponding to the user centric data is stored in a database 110. Further, the pre-translated user centric data may correspond to the second language. In an embodiment, the generating module 206 is configured to generate a word count report for remaining user centric data, if the pre-translated user centric data corresponding to the user centric data is not found in the database 110. The word count report may comprise a count of words, which requires translation from the first language to the second language.
[0033] In another embodiment, the communication module 202 is configured to transmit the word count report to at least one second user for translating from the first language to the second language. The word count report may be transmitted to the at least one second user based on at least one of predefined score corresponding to second user and language expertise of the second user corresponding to the second language. In yet another embodiment, the communication module 202 is configured to receive a translated word count report from the at least one second user corresponding to the second user device 108. In an embodiment, the detecting module 208 is configured to detect if the received word count report is translated from the first language to the second language and notifying the first user device 106. In an embodiment, the synchronizing module 210 is configured to synchronize the translated word count report to the externalized resource file corresponding to the host application. The synchronizing translated word count report to the externalized resource file corresponding to the host application comprises replacing the first language user centric data with the second language user centric data.
[0034] In yet another embodiment, the Push/Pull module 212 is configured to push the externalized resource file to the host application for localization of the user centric data in the host application. Further, synchronizing the translated file with the host application for localization of the user centric data in the host application may include replacing the source code corresponding to first language with the source code corresponding to second language. Further, synchronizing at least one of translated word count report and partially translated word count report to the host application, based on the request from the registered developer corresponding to first user device 106 comprises pulling the word count report from the server 102 by the first user whenever required by the first user device 106.
[0035] FIG. 3A illustrates an overall flow diagram of the system 100 for managing a localization of user centric data in the host application, according to embodiments as disclosed herein. At the initial step, the source content is created by the first user such as developer, wherein the developer is a registered developer on a portal. The portal may check if the registered user is a developer based on the user profile data. If the first user is a registered developer, then the system may download at least one plug-in and install the at least one plug-in accordingly on the first user device 106. The installed plug-in(s) may scan the source code of the host application and extract the relevant content for internationalization. The portal may generate the internationalization report based on the scanned source code. The internationalization report herein may also be referred to as I18N. The issues in the internationalization report may be manually corrected by the first user. Further, based on the internationalization report, the resource file is generated and externalized to be compatible for translation of the resource file. The resource file may be PUSHed to the server 102 for translation of the resource file from the first language to the second language. The server 102 may upload the resource file under the project folder.
[0036] Further, the portal may check if the registered user is a non-developer. If the registered user is a non-developer then the non-developer (i.e. first user) corresponding to the first user device 106 may only create a project. Further, the first user device 106 may notify to the service provider such as localization service provider, translator and the like. Furthermore, the server 102 uploads the source content file under the project. A cost may be calculated based on word count and the language that need to be translated. The words associated with the first language may be compared with the pre-translated words corresponding to the second language stored in the database 112. The word count report may be generated for the remaining words based on the comparison of the words with the pre-translated words. Further, the project may be assigned to the service provider for translation of the words. Furthermore, the service provider may assign the project to translator corresponding to the second user device 108. The second user corresponding to second user device 108 may be selected based on the score and the language expertise. The server 102 may check if the translated file is received and may further notify the first user device 106. The first user corresponding to the first user device 106 may PULL the translated file using the plug-in. The host application may display the user centric data in the second language based on the PULLed translated file.
[0037] FIG. 3B illustrates a flow diagram for PUSH and PULL functionality, according to embodiments as disclosed herein. The first user may install the plug-in to Integrated Development Environment (IDE) associated with the first user device 106, after downloading from the server 102. Further, the first user may scan or examine the project or files for internationalization issues. The generating module 206 may generate a report of issues for Internationalization of the source code file. The Internationalization issues may also be corrected manually. The resource files may be generated for the hardcoded strings found in the source code based on scanning of the source code in the first user device 106. Also, the first user may directly PUSH the resource files onto the portal for translation from the IDE without switching from the development environment. Once the source file is uploaded, the platform may provide the word count information comprising information regarding the words such as new, duplicate, fuzzy and exact match. The translator associated with the second user device 108 may translate the content received under the project file. The first user may PULL the translated or partially translated file as desired. Further, a notification may be sent to a second user when the file is PULLed by the first user associated with the first user device 106.
[0038] FIG. 3C illustrates a flow diagram for performing word count analysis and steps for processing the file, according to embodiments as disclosed herein. The uploaded source files may be compared with the at least one of the database, a translation memory and a translation word bank. The translation repository may be separate for each user. Once the source file is uploaded, the platform may provide the word count information comprising information regarding the words such as new, duplicate, fuzzy and exact match. The portal may also create individual file for each language (languages selected at the time of creating project). Translator may translate the files individually. Further, the cost may be displayed to the first user based on word count report. The cost may be configured by the second user.
[0039] FIG. 3D illustrates a flow diagram for scanning the source code of the host application, according to embodiments as disclosed herein. The results after scanning the source code may be displayed in the IDE (Integrated Development Environment). The internationalization may be generated in a suitable format such as XML (eXtensible Markup Language) format and the like. The local copy of the file may also be created and uploaded on the portal for further analysis by portal for displaying a trending report. The trending report can be a consolidation of the reports and may display trending information to the users regarding the coding performance based on week, month or yearly basis.
[0040] The externalization of hardcoded strings is performed on the project/file and the externalized resource file can be created based on selections, which can be done by the first user. For example, if the first user selects solution as desired option, then one file for the entire solution is created. Likewise, if the first user selects project as desired option, then one resource file for the project is created. The portal may create a folder for I18N and subfolder to add all language related files into the folder. Furthermore, the resource files may be uploaded on the portal, based on user ID and the project selected.
[0041] FIG. 3E illustrates a flow diagram for generating a cost report based on word count report, according to embodiments as disclosed herein. The cost may be configured to display in various type of currency and may also be configured to display currency exchange rate. The service providers such as organizations, Localization Service Providers (LSP) and translators may configure the cost. The cost may be synchronized with the portal and displayed when the word count report is generated. The cost may be calculated based on number of new words, fuzzy, exact match and duplicate word. The first user may click on the displayed cost to view detailed break-up of the cost based on the word count and the like. Furthermore, the first user under the project may generate an invoice.
[0042] FIG. 4 illustrates a flow diagram of method 400 for managing the localization of user centric data in the host application, according to embodiments as disclosed herein.
[0043] At step 402, an externalized resource file corresponding to a host application pulled from the first user device is received by the server 102 via the communication network 104. In an embodiment, the externalized resource file corresponding to the host application comprises at least one of an internationalization report, an externalized strings corresponding to source code of the host application. In another embodiment, the internationalization report may be generated based on scanning the source code corresponding to the host application and generating the internationalization report. The internationalization report may comprise issues corresponding to internationalization of the user centric data in the source code of the host application. In yet another embodiment, the externalized resource file corresponding to a host application pulled from the first user device comprises extracting the source code from the host application by the at least one user device of the first user.
[0044] At step 404, the server 102 determines the user centric data, in the received externalized resource file. In an embodiment, the user centric data corresponds to the first language. In an embodiment, determining the user centric data, in the received externalized resource file comprises at least one of labels, login data, user defined data, user calendar data, and user contact data. At step 406, pre-translated user centric data corresponding to the user centric data is determined in a database 110. In an embodiment, the pre-translated user centric data corresponds to the second language. At step 408, a word count report is generated for remaining user centric data; if the pre translated user centric data corresponding to the user centric data is not found in the database. In an embodiment, the word count report comprises sum of the words that require translation from the first language to the second language. At step 410, the word count report is transmitted to at least one second user for translating from the first language to the second language. In an embodiment, the word count report is transmitted to the at least one second user based on at least one of predefined score corresponding to second user and language expertise of the second user in the second language. At step 412, a translated word count report is received from the at least one second user. At step 414 the server 102 may notify the at least one first user device 106, if the received word count report is translated from the first language to the second language. At step 416, the translated word count report is synchronized with the externalized resource file corresponding to the host application. In an embodiment, the synchronizing translated word count report to the externalized resource file corresponding to the host application comprises replacing the first language user centric data with the second language user centric data. At step 418, the externalized resource file is PUSHed by the server 102 to the host application for localization of the user centric data in the host application. In an embodiment, pushing the externalized resource file to the host application for localization of the user centric data in the host application comprises replacing the source code of the host application by the source code corresponding to the second language.
[0045] The various actions in method 400 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions listed in FIG. 4 may be omitted.
[0046] FIG. 5 illustrates a computing environment 502 implementing the method and system for managing the localization of user centric data in the host application, according to embodiments as disclosed herein.
[0047] As depicted in the figure, the computing environment 502 comprises at least one processing unit 508 that is equipped with a control unit 504 and an Arithmetic Logic Unit (ALU) 506, a memory 510, a storage unit 512, plurality of networking devices 516 and a plurality Input output (I/O) devices 514. The processing unit 508 is responsible for processing the instructions of the scheme. The processing unit 508 receives commands from the control unit in order to perform its processing. Further, any logical and arithmetic operations involved in the execution of the instructions are computed with the help of the ALU 506.
[0048] The overall computing environment 502 can be composed of multiple homogeneous or heterogeneous cores, multiple CPUs of different kinds, special media and other accelerators. The processing unit 508 is responsible for processing the instructions of the scheme. Further, the plurality of processing units 508 may be located on a single chip or over multiple chips.
[0049] The scheme comprising of instructions and codes required for the implementation are stored in either the memory unit 510 or the storage 512 or both. At the time of execution, the instructions may be fetched from the corresponding memory 510 or storage 512, and executed by the processing unit 508.
[0050] In case of any hardware implementations various networking devices 516 or external I/O devices 514 may be connected to the computing environment to support the implementation through the networking unit and the I/O device unit.
[0051] The computing environment 502 can be at least one of the server 102, the first user device 106 and the second user device 108. The computing environment 502 may comprise the processing modules 112 (not shown in FIG. 5) stored in the memory 510. The processing module 112 may be configured to manage the localization of user centric data in the host application. The processing module 112 may be configured to receive, via a communication network, the externalized resource file corresponding to the host application pulled from the at least one of first user device 106. Determine the user centric data, in the received externalized resource file, wherein the user centric data corresponds to first language. Further, the computing environment 502 comprising a processing module 112 may be configured to determine whether the pre translated user centric data corresponding to the user centric data is stored in the storage 512; wherein the pre translated user centric data corresponds to second language. Further, the computing environment 502 comprising a processing module 112 may be configured to generate a word count report for the user centric data, if the pre translated user centric data corresponding to the user centric data is not found in the storage 512 and transmit at least one of a word count report, and an internationalization report to at least one of a second user device 108 for translating from the first language to the second language; wherein the word count report is transmitted to the second user device 108 based on at least one of a predefined score associated with the second user device 108 and language expertise. Furthermore, the processing module 112 may be configured to receive the translated word count report from the second user device 108 and notify the at least one first user device 106, if the received word count report is translated from the first language to the second language. Further, the computing environment 502 may be configured to synchronize the translated word count report to the externalized resource file corresponding to the host application and PUSH the externalized resource file to the host application for localization of the user centric data in the host application. The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the network elements. The network elements shown in Fig. 1 include blocks, which can be at least one of a hardware device, or a combination of hardware device and software module.
[0052] The embodiment disclosed herein specifies a system for managing a localization of user centric data in the host application. The mechanism allows translating the user centric data in the host application form first language to second language providing a system thereof. Therefore, it is understood that the scope of the protection is extended to such a program and in addition to a computer readable means having a message therein, such computer readable storage means contain program code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The method is implemented in at least one embodiment through or together with a software program written in e.g. Very high speed integrated circuit Hardware Description Language (VHDL) another programming language, or implemented by one or more VHDL or several software modules being executed on at least one hardware device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof, e.g. one processor and two FPGAs. The device may also include means which could be e.g. hardware means like e.g. an ASIC, or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means are at least one hardware means and/or at least one software means. The method embodiments described herein could be implemented in pure hardware or partly in hardware and partly in software. The device may also include only software means. Alternatively, the invention may be implemented on different hardware devices, e.g. using a plurality of CPUs.
[0053] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of embodiments and examples, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the claims as described herein.
| # | Name | Date |
|---|---|---|
| 1 | 201741043092-AbandonedLetter.pdf | 2018-11-16 |
| 1 | 201741043092-STATEMENT OF UNDERTAKING (FORM 3) [30-11-2017(online)].pdf | 2017-11-30 |
| 2 | 201741043092-PROOF OF RIGHT [30-11-2017(online)]_25.pdf | 2017-11-30 |
| 2 | 201741043092-FER.pdf | 2018-03-15 |
| 3 | 201741043092-PROOF OF RIGHT [30-11-2017(online)].pdf | 2017-11-30 |
| 3 | 201741043092-Proof of Right (MANDATORY) [07-12-2017(online)].pdf | 2017-12-07 |
| 4 | Correspondence by Agent_Form 1,Power of Attorney_04-12-2017.pdf | 2017-12-04 |
| 4 | 201741043092-POWER OF AUTHORITY [30-11-2017(online)].pdf | 2017-11-30 |
| 5 | 201741043092-OTHERS [30-11-2017(online)].pdf | 2017-11-30 |
| 5 | 201741043092-FORM 18A [01-12-2017(online)].pdf | 2017-12-01 |
| 6 | 201741043092-FORM-9 [01-12-2017(online)].pdf | 2017-12-01 |
| 6 | 201741043092-FORM FOR STARTUP [30-11-2017(online)].pdf | 2017-11-30 |
| 7 | 201741043092-FORM FOR SMALL ENTITY(FORM-28) [30-11-2017(online)]_27.pdf | 2017-11-30 |
| 7 | 201741043092-COMPLETE SPECIFICATION [30-11-2017(online)].pdf | 2017-11-30 |
| 8 | 201741043092-FORM FOR SMALL ENTITY(FORM-28) [30-11-2017(online)].pdf | 2017-11-30 |
| 8 | 201741043092-COMPLETE SPECIFICATION [30-11-2017(online)]_26.pdf | 2017-11-30 |
| 9 | 201741043092-FORM 1 [30-11-2017(online)]_11.pdf | 2017-11-30 |
| 9 | 201741043092-DECLARATION OF INVENTORSHIP (FORM 5) [30-11-2017(online)].pdf | 2017-11-30 |
| 10 | 201741043092-DECLARATION OF INVENTORSHIP (FORM 5) [30-11-2017(online)]_19.pdf | 2017-11-30 |
| 10 | 201741043092-FORM 1 [30-11-2017(online)].pdf | 2017-11-30 |
| 11 | 201741043092-DRAWINGS [30-11-2017(online)].pdf | 2017-11-30 |
| 11 | 201741043092-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [30-11-2017(online)]_21.pdf | 2017-11-30 |
| 12 | 201741043092-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [30-11-2017(online)].pdf | 2017-11-30 |
| 13 | 201741043092-DRAWINGS [30-11-2017(online)].pdf | 2017-11-30 |
| 13 | 201741043092-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [30-11-2017(online)]_21.pdf | 2017-11-30 |
| 14 | 201741043092-DECLARATION OF INVENTORSHIP (FORM 5) [30-11-2017(online)]_19.pdf | 2017-11-30 |
| 14 | 201741043092-FORM 1 [30-11-2017(online)].pdf | 2017-11-30 |
| 15 | 201741043092-DECLARATION OF INVENTORSHIP (FORM 5) [30-11-2017(online)].pdf | 2017-11-30 |
| 15 | 201741043092-FORM 1 [30-11-2017(online)]_11.pdf | 2017-11-30 |
| 16 | 201741043092-COMPLETE SPECIFICATION [30-11-2017(online)]_26.pdf | 2017-11-30 |
| 16 | 201741043092-FORM FOR SMALL ENTITY(FORM-28) [30-11-2017(online)].pdf | 2017-11-30 |
| 17 | 201741043092-COMPLETE SPECIFICATION [30-11-2017(online)].pdf | 2017-11-30 |
| 17 | 201741043092-FORM FOR SMALL ENTITY(FORM-28) [30-11-2017(online)]_27.pdf | 2017-11-30 |
| 18 | 201741043092-FORM FOR STARTUP [30-11-2017(online)].pdf | 2017-11-30 |
| 18 | 201741043092-FORM-9 [01-12-2017(online)].pdf | 2017-12-01 |
| 19 | 201741043092-FORM 18A [01-12-2017(online)].pdf | 2017-12-01 |
| 19 | 201741043092-OTHERS [30-11-2017(online)].pdf | 2017-11-30 |
| 20 | Correspondence by Agent_Form 1,Power of Attorney_04-12-2017.pdf | 2017-12-04 |
| 20 | 201741043092-POWER OF AUTHORITY [30-11-2017(online)].pdf | 2017-11-30 |
| 21 | 201741043092-PROOF OF RIGHT [30-11-2017(online)].pdf | 2017-11-30 |
| 21 | 201741043092-Proof of Right (MANDATORY) [07-12-2017(online)].pdf | 2017-12-07 |
| 22 | 201741043092-PROOF OF RIGHT [30-11-2017(online)]_25.pdf | 2017-11-30 |
| 22 | 201741043092-FER.pdf | 2018-03-15 |
| 23 | 201741043092-STATEMENT OF UNDERTAKING (FORM 3) [30-11-2017(online)].pdf | 2017-11-30 |
| 23 | 201741043092-AbandonedLetter.pdf | 2018-11-16 |
| 1 | patseernotworking_15-03-2018.pdf |