欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

更改資源文件中的資源的方法和系統(tǒng)的制作方法

文檔序號(hào):6513572閱讀:216來源:國知局
更改資源文件中的資源的方法和系統(tǒng)的制作方法
【專利摘要】一種在用戶界面中呈現(xiàn)要更改的資源的上下文的方法和系統(tǒng),該方法包括:獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。通過本發(fā)明的各個(gè)實(shí)施例,能夠通過呈現(xiàn)用戶界面中的對(duì)應(yīng)對(duì)象來改善更改資源的準(zhǔn)確性。
【專利說明】更改資源文件中的資源的方法和系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本公開涉及更改資源文件中的諸如文本、圖片、音頻和視頻等的資源的技術(shù),且更具體地,涉及通過在用戶界面中呈現(xiàn)對(duì)應(yīng)對(duì)象來改善更改資源(例如翻譯文本)的準(zhǔn)確性的技術(shù)。

【背景技術(shù)】
[0002]目前,越來越多的應(yīng)用程序(或代碼段)提供用戶界面(User Interface,UI)來支持用戶與應(yīng)用程序的交互操作。應(yīng)用程序中通常包括資源文件(或稱程序集成信息(Program Integrated Informat1n, PII)文件),其包括字符、圖片、音頻、視頻、等等。這些字符、圖片、音頻、視頻、等等可以在程序運(yùn)行時(shí)在GUI界面中呈現(xiàn)。資源文件可以包括在Java環(huán)境下的特性(Property)文件或json文件以及在Microsoft.NET環(huán)境下的資源文件(例如,.resx)等等。本領(lǐng)域技術(shù)人員很清楚資源文件的含義,在此不贅述。
[0003]為了滿足例如應(yīng)用程序在不同國家(地區(qū))之間的本地化需求、不同版本之間的升級(jí)需求等等,有時(shí)需要更改資源文件內(nèi)的資源。例如在本地化的情況下可能需要將資源文件內(nèi)的要顯示的文本內(nèi)容更改(例如翻譯)為當(dāng)?shù)氐恼Z言文字、或?qū)⒕哂形淖只蛘Z言的圖片、音頻或視頻更改(例如翻譯)為具有當(dāng)?shù)氐奈淖只蛘Z言,來使得當(dāng)?shù)氐娜艘材芸炊?、聽懂該軟件并很好地使用該軟件。而在版本升?jí)的情況下,可能需要更改資源文件內(nèi)的要顯示的文本內(nèi)容,還可能需要更改圖片內(nèi)容、要播放的音頻內(nèi)容和視頻內(nèi)容等。也就是說,資源文件中包括的資源可能經(jīng)常被更改。
[0004]在這些情況下,目前工作人員通常僅針對(duì)資源文件本身進(jìn)行這種更改而并不能了解其所更改的資源在GUI界面中的上下文環(huán)境,因此很可能造成錯(cuò)誤或不適當(dāng)?shù)母?。例如,在本地化的情況下,通常,開發(fā)團(tuán)隊(duì)向不同的翻譯中心發(fā)送打包的資源文件,翻譯人員通常需要翻譯該資源文件來適應(yīng)當(dāng)?shù)氐恼Z言。但是,在翻譯的過程中,翻譯人員一般通過使用翻譯編輯器來進(jìn)行翻譯,而在翻譯編輯器中僅顯示了其所翻譯的資源文件中的可翻譯文本本身,因此翻譯人員只能基于該可翻譯文本本身的詞和句子來進(jìn)行翻譯,而無法了解其所翻譯的詞和句子在GUI界面中的上下文環(huán)境,因此很可能造成錯(cuò)誤或不準(zhǔn)確的翻譯。例如,英文單詞“run”可能翻譯成“跑步”,也可能翻譯成“運(yùn)行”,如果不了解該英文單詞呈現(xiàn)在GUI的什么地方以及其周圍的上下文環(huán)境情況,就很可能翻譯錯(cuò)誤。


【發(fā)明內(nèi)容】

[0005]本公開提供了一種能夠在要更改資源期間在用戶界面中呈現(xiàn)要更改的資源的上下文來改善更改資源的準(zhǔn)確性的技術(shù)。
[0006]根據(jù)本公開的一個(gè)方面,提供一種在用戶界面中呈現(xiàn)要更改的資源的上下文的方法,包括:獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
[0007]根據(jù)本公開的另一方面,提供一種在用戶界面中呈現(xiàn)要更改的資源的上下文的系統(tǒng),包括:獲得裝置,被配置為獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及顯示裝置,被配置為響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
[0008]通過本發(fā)明的各個(gè)實(shí)施例,能夠通過呈現(xiàn)用戶界面中的對(duì)應(yīng)對(duì)象來改善更改資源的準(zhǔn)確性。

【專利附圖】

【附圖說明】
[0009]通過結(jié)合附圖對(duì)本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其它目的、特征和優(yōu)勢(shì)將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號(hào)通常代表相同部件。
[0010]圖1示意性地示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框圖。
[0011]圖2示意性地示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法200的示例流程圖。
[0012]圖3A示意性地示出圖2所示的方法中的獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系的步驟S201的一個(gè)示例的具體流程圖。
[0013]圖3B示出在圖3A所示的步驟S201中的步驟S2013的分析所呈現(xiàn)的用戶界面的層次的分析結(jié)果的一個(gè)示例。
[0014]圖4是示意性地示出圖2所示的方法中的步驟S202的一個(gè)例子的示意圖。
[0015]圖5A示意性地示出以要資源是可翻譯文本為例、圖3A所示的用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)資源之前和之后的一個(gè)例子的示意圖。
[0016]圖5B示意性地示出以資源是可翻譯文本為例、向可翻譯文本對(duì)象分配第二標(biāo)識(shí)符之前和之后的一個(gè)例子的示意圖。
[0017]圖5C是示意性地示出以資源是圖片為例、向圖片對(duì)象分配第二標(biāo)識(shí)符之前和之后的一個(gè)例子的示意圖。
[0018]圖6A-6E是示意性地示出以資源是可翻譯文本為例、根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法的一個(gè)例子的具體步驟以及在用戶界面上的顯示的示意圖:其中,圖6A示意性地示出了向各個(gè)文本資源直接添加第一標(biāo)識(shí)符之前和之后的代碼的例子;圖6B是示意性地示出向各個(gè)文本資源直接添加第一標(biāo)識(shí)符和向各個(gè)對(duì)象分配第二標(biāo)識(shí)符的過程中在用戶界面上的顯示的一個(gè)示意例子;圖6C示意性地示出了記錄階段以及更改資源的更改階段之間的關(guān)系的示意框圖;圖60示意性地示出了資源標(biāo)識(shí)符-對(duì)象庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫的示意圖;圖6E示意性地示出在該情況下在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域的一個(gè)例子。
[0019]圖7A-7C是示意性地示出以資源是可翻譯文本為例、根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法的另一例子的在用戶界面上的顯示的示意圖。
[0020]圖8是示意性地示出根據(jù)本發(fā)明的另一實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的系統(tǒng)的方框圖。

【具體實(shí)施方式】
[0021]在附圖中顯示了本公開的一些優(yōu)選實(shí)施方式,下面將參照附圖更詳細(xì)地描述這些優(yōu)選實(shí)施方式。然而,可以以各種形式實(shí)現(xiàn)本公開,其不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0022]所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本發(fā)明的各個(gè)方面可以實(shí)現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明的各個(gè)方面可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件實(shí)施方式、完全的軟件實(shí)施方式(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結(jié)合的實(shí)施方式,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實(shí)施例中,本發(fā)明的各個(gè)方面還可以實(shí)現(xiàn)為在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì)算機(jī)可讀介質(zhì)中包含計(jì)算機(jī)可讀的程序代碼。
[0023]可以采用一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是一但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ)器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)器件、磁存儲(chǔ)器件、或者上述的任意合適的組合。在本文件中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何包含或存儲(chǔ)程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
[0024]計(jì)算機(jī)可讀的信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào),其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括——但不限于——電磁信號(hào)、光信號(hào)或上述的任意合適的組合。計(jì)算機(jī)可讀的信號(hào)介質(zhì)還可以是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
[0025]計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0026]可以以一種或多種程序設(shè)計(jì)語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序代碼,所述程序設(shè)計(jì)語言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語言一諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設(shè)計(jì)語言一諸如“C”語言或類似的程序設(shè)計(jì)語言。程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。
[0027]下面將參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些計(jì)算機(jī)程序指令在通過計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的裝置。
[0028]也可以把這些計(jì)算機(jī)程序指令存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,這些指令使得計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其他設(shè)備以特定方式工作,從而,存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的指令就產(chǎn)生出包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的指令的制造品(article of manufacture)0
[0029]也可以把計(jì)算機(jī)程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過程,從而使得在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令提供實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的過程。
[0030]圖1示意性地示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框圖。圖1顯示的計(jì)算機(jī)系統(tǒng)/服務(wù)器12僅僅是一個(gè)示例,不應(yīng)對(duì)本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制。
[0031]如圖1所示,計(jì)算機(jī)系統(tǒng)/服務(wù)器12以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個(gè)或者多個(gè)處理器或者處理單元16,系統(tǒng)存儲(chǔ)器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲(chǔ)器28和處理單元16)的總線18。
[0032]總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC)總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局域總線以及外圍組件互連(PCI)總線。
[0033]計(jì)算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是任何能夠被計(jì)算機(jī)系統(tǒng)/服務(wù)器12訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動(dòng)的和不可移動(dòng)的介質(zhì)。
[0034]系統(tǒng)存儲(chǔ)器28可以包括易失性存儲(chǔ)器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲(chǔ)器(RAM)30和/或高速緩存存儲(chǔ)器32。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其它可移動(dòng)/不可移動(dòng)的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)。僅作為舉例,存儲(chǔ)系統(tǒng)34可以用于讀寫不可移動(dòng)的、非易失性磁介質(zhì)(圖1未顯示,通常稱為“硬盤驅(qū)動(dòng)器”)。盡管圖1中未示意性地示出,可以提供用于對(duì)可移動(dòng)非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動(dòng)器,以及對(duì)可移動(dòng)非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動(dòng)器。在這些情況下,每個(gè)驅(qū)動(dòng)器可以通過一個(gè)或者多個(gè)數(shù)據(jù)介質(zhì)接口與總線18相連。存儲(chǔ)器28可以包括至少一個(gè)程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個(gè))程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實(shí)施例的功能。
[0035]具有一組(至少一個(gè))程序模塊42的程序/實(shí)用工具40,可以存儲(chǔ)在例如存儲(chǔ)器28中,這樣的程序模塊42包括——但不限于——操作系統(tǒng)、一個(gè)或者多個(gè)應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個(gè)或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實(shí)施例中的功能和/或方法。
[0036]計(jì)算機(jī)系統(tǒng)/服務(wù)器12也可以與一個(gè)或多個(gè)外部設(shè)備14 (例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個(gè)或者多個(gè)使得用戶能與該計(jì)算機(jī)系統(tǒng)/服務(wù)器12交互的設(shè)備通信,和/或與使得該計(jì)算機(jī)系統(tǒng)/服務(wù)器12能與一個(gè)或多個(gè)其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22進(jìn)行。并且,計(jì)算機(jī)系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個(gè)或者多個(gè)網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計(jì)算機(jī)系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示意性地示出,可以結(jié)合計(jì)算機(jī)系統(tǒng)/服務(wù)器12使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動(dòng)器、冗余處理單元、外部磁盤驅(qū)動(dòng)陣列、RAID系統(tǒng)、磁帶驅(qū)動(dòng)器以及數(shù)據(jù)備份存儲(chǔ)系統(tǒng)等。
[0037]圖2示意性地示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法200的示例流程圖。
[0038]圖2所示的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法200包括:步驟S201,獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及步驟S202,響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
[0039]在步驟S201中,可以獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系。
[0040]首先,如上所述,在開發(fā)人員開發(fā)應(yīng)用程序期間,通常會(huì)在所謂的“資源文件”(或稱程序集成信息(Program Integrated Informat1n, PII)文件)中記錄諸如文本(或字符)、圖片、音頻和視頻等數(shù)據(jù),以便日后在本地化或升級(jí)等等時(shí)可以直接更改要展示給用戶的例如文本(或字符)、圖片、音頻和視頻等。即,首先,資源文件中的資源可以包括文本、圖片、音頻和視頻中的一種或多種。
[0041]資源文件在不同的編程環(huán)境下可能具有不同的名稱或不同的格式。例如,Java環(huán)境下,資源文件體現(xiàn)為特性(Property)文件,其格式例如為“key=text characters”,其中Key表示特性文件中的一個(gè)“鍵”,而text characters則為該鍵的鍵值,在文本資源的情況下,則為文本資源的文本內(nèi)容。在Windows環(huán)境下,資源文件通常體現(xiàn)為.resx文件。但是,無論在何種編程環(huán)境下,資源文件中的每個(gè)資源都可以被理解為對(duì)應(yīng)于在應(yīng)用程序運(yùn)行時(shí)呈現(xiàn)在用戶界面中的一個(gè)對(duì)象,例如在用戶界面的某處展示的文本、圖片、音頻、視頻等。實(shí)踐中,這些文本、圖片、音頻、視頻都可能在某種情況下(例如本地化或升級(jí)等)需要更改。
[0042]如上所述,資源文件中的每個(gè)資源可以被理解為對(duì)應(yīng)于在應(yīng)用程序運(yùn)行時(shí)呈現(xiàn)在用戶界面中的一個(gè)對(duì)象,因此可以通過各種方式獲得資源文件中的各個(gè)資源與所述各個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系。在一個(gè)例子中,可以獲得已經(jīng)記錄的通過預(yù)定方式生成的所述對(duì)應(yīng)關(guān)系。例如,在要更改所述至少一個(gè)資源之一時(shí),可能事先已知這樣的對(duì)應(yīng)關(guān)系,例如在更改資源之前的開發(fā)階段中可能已經(jīng)保存了這樣的對(duì)應(yīng)關(guān)系,或者在僅一個(gè)資源和僅一個(gè)對(duì)象的情況下也很容易得知其兩者是相互對(duì)應(yīng)的,等等。在另一實(shí)施例中,如果沒有先前已經(jīng)記錄的對(duì)應(yīng)關(guān)系,則可以通過預(yù)定方式生成所述對(duì)應(yīng)關(guān)系。
[0043]以下還將參考圖3到圖7討論在本發(fā)明的一個(gè)實(shí)施例中的通過預(yù)定方式生成這種對(duì)應(yīng)關(guān)系的幾種示例方法。本領(lǐng)域技術(shù)人員可以理解,上述獲得已經(jīng)記錄的通過預(yù)定方式生成的所述對(duì)應(yīng)關(guān)系中的預(yù)定方式也可以采用下述具體的實(shí)現(xiàn)方式。
[0044]在步驟S202中,可以響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
[0045]在此,假設(shè)開發(fā)人員要更改一個(gè)資源,則可以在用戶界面上看到包含與其要更改的資源對(duì)應(yīng)的對(duì)象的區(qū)域,因此能夠了解該對(duì)象周圍的上下文環(huán)境。在一個(gè)例子中,該步驟S202還可以包括在該區(qū)域中突出地顯示(例如,高亮、畫框等等)與其要更改的資源對(duì)應(yīng)的對(duì)象。在此注意,這種突出地顯示與要更改的資源對(duì)應(yīng)的對(duì)象可以在開發(fā)人員將鼠標(biāo)放在要更改的資源上時(shí)、或者在開發(fā)人員用鼠標(biāo)選中要更改的資源時(shí)、等等的表明開發(fā)人員想要更改該資源的情況。另外,注意,這種突出的顯示也不是在時(shí)間上一定要與例如鼠標(biāo)放在要更改的資源上的時(shí)刻完全同步,而是可以是異步的,本發(fā)明對(duì)此不予限制。
[0046]注意,本公開中的更改可以包括在本地化時(shí)用對(duì)文本、具有文字的圖片、具有語言的音頻和具有語言和文字的視頻進(jìn)行的翻譯之后的資源來替換原始未翻譯的資源,因此,本公開中的“更改”可以包括“翻譯”的概念。因此,在本地化的情況下,該資源也可以包括如下中的一種或多種:可翻譯文本;在畫面上包含可翻譯文本的圖片;在語音中包含可翻譯語言的音頻;以及在語音中包含可翻譯語言和/或在畫面上包含可翻譯文本的視頻。由于通過翻譯來進(jìn)行本地化的情況比較普遍,因此本公開中大多以用于本地化的“翻譯”來作為“更改”的一個(gè)例子,但是本發(fā)明不限于此,而是“更改”這些資源可以包括翻譯這些資源,(除此之外的)用其他資源來替換原始資源,或在某種情況下刪除這些資源,或添加一部分資源、等等。
[0047]如此,根據(jù)本發(fā)明的實(shí)施例,能夠在要更改資源期間在GUI中呈現(xiàn)與要更改的資源相對(duì)應(yīng)的對(duì)象,使得進(jìn)行本地化或升級(jí)等的開發(fā)人員能夠可視地看到與其要更改的資源相對(duì)應(yīng)的在GUI中要實(shí)際顯示的對(duì)象,進(jìn)一步使得其能夠了解該要更改的資源的上下文環(huán)境,從而改善更改資源的準(zhǔn)確性。
[0048]如上所述,可以通過各種方式來獲得資源和對(duì)象之間的對(duì)應(yīng)關(guān)系。下面參考圖3A和3B介紹一種簡(jiǎn)便且容易實(shí)施的方式來生成資源和對(duì)象之間的對(duì)應(yīng)關(guān)系。但是,本發(fā)明不限于此,例如,對(duì)應(yīng)關(guān)系可以事先已知,或者在不事先已知的情況下,本領(lǐng)域技術(shù)人員可以根據(jù)資源和對(duì)象之間的對(duì)應(yīng)原理來構(gòu)思其他方式來生成該對(duì)應(yīng)關(guān)系。
[0049]圖3A示意性地示出圖2所示的方法中的獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系的步驟S201的一個(gè)示例的具體流程圖。圖3B示出在圖3A所示的步驟S201中的步驟S2013的分析所呈現(xiàn)的用戶界面的層次的分析結(jié)果的一個(gè)示例。
[0050]如圖3A所示,在該實(shí)施例中,獲得資源與對(duì)象之間的對(duì)應(yīng)關(guān)系的步驟S201可以包括:步驟S2011,用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源;步驟S2012,利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象;步驟S2013,分析所呈現(xiàn)的用戶界面的層次來找到與該第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與對(duì)象的對(duì)應(yīng)關(guān)系。
[0051]在步驟S2011中,可以用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源。在此,例如,在本地化的情況下,可以通過用例如翻譯編輯器的包括資源查找能力的工具來遍歷整個(gè)資源文件,來找到各個(gè)資源,然后由例如翻譯編輯器來用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)這些資源。在此,翻譯編輯器是現(xiàn)有技術(shù)中已知的用來進(jìn)行本地化的工具,該工具可以方便地標(biāo)出可翻譯文本部分和不可翻譯部分,并且能夠?qū)煞g文本部分進(jìn)行編輯,例如加入第一標(biāo)識(shí)符、用翻譯后的文本替換原有文本等。第一標(biāo)識(shí)符可以由這種翻譯編輯器產(chǎn)生和管理并在所述翻譯編輯器中唯一地標(biāo)識(shí)各個(gè)資源。當(dāng)然,使用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源的工具也不限于翻譯編輯器,實(shí)際上,可以采用其他例如txt文件、利用關(guān)鍵詞搜索等機(jī)制來找到可翻譯文本部分,并向其添加第一標(biāo)識(shí)符等。
[0052]該第一標(biāo)識(shí)符可以包括人為設(shè)定的標(biāo)識(shí)符、資源的文件名(如果全局唯一的話)、資源的路徑位置信息(例如URL或Xpath (XML路徑語言),如果全局唯一的話)等等。該人為設(shè)定的第一標(biāo)識(shí)符可以是各種形式。在一個(gè)實(shí)施例中,第一標(biāo)識(shí)符可以包括特殊字符部分和標(biāo)識(shí)部分。該特殊字符部分可以是例如“)}}}”等的區(qū)別于資源文件的正常文本內(nèi)容和/或其他代碼中可能出現(xiàn)的正常字符,這樣可以在后續(xù)的查找過程中容易地找到屬于第一標(biāo)識(shí)符的字符。當(dāng)然,該特殊字符部分也不限于“)}}} ”,本領(lǐng)域技術(shù)人員可以構(gòu)思其他特殊字符。而標(biāo)識(shí)部分可以是唯一地區(qū)別各個(gè)資源的字符串,例如用各自不同的數(shù)字、各自不同的字母、各自不同的字母數(shù)字組合、或者指示該資源的全局唯一的文件名或路徑位置信息等等,只要能夠用不同的標(biāo)識(shí)部分來區(qū)分每個(gè)資源即可。在另一實(shí)施例中,第一標(biāo)識(shí)符也可以包括僅標(biāo)識(shí)部分。
[0053]當(dāng)然,第一標(biāo)識(shí)符也可以包括除了上述以外的形式,只要該第一標(biāo)識(shí)符可以唯一地區(qū)分這些資源即可。例如,該第一標(biāo)識(shí)符可以包括如下中的已知或多種:能夠唯一地標(biāo)識(shí)所述資源的其本身的文本內(nèi)容;能夠唯一地標(biāo)識(shí)所述資源的其本身的文件名;以及能夠唯一地標(biāo)識(shí)所述資源的其本身的路徑位置信息。而且,可以對(duì)于某些類型不同的資源,采用不同類型的第一標(biāo)識(shí)符。例如,在所述至少一個(gè)資源包括文本的情況下,可以將所述第一標(biāo)識(shí)符添加到所述資源的文本的內(nèi)容中;在所述至少一個(gè)資源包括文本的情況下,可以設(shè)置所述資源本身的全局唯一的文本內(nèi)容作為所述第一標(biāo)識(shí)符;在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,可以設(shè)置所述資源本身的全局唯一的文件名作為所述第一標(biāo)識(shí)符;以及在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,可以設(shè)置所述資源的本身的路徑位置信息作為所述第一標(biāo)識(shí)符,等等。注意,本發(fā)明不限制對(duì)同種資源必須采用相同類型的第一標(biāo)識(shí)符,即可以對(duì)于某些資源采用特殊字符部分和標(biāo)識(shí)部分的第一標(biāo)識(shí)符,對(duì)于另外的資源采用全局唯一的文件名作為第一標(biāo)識(shí)符、或?qū)τ谠倭硗獾馁Y源采用全局唯一的路徑位置信息作為第一標(biāo)識(shí)符等等,只要這些所有第一標(biāo)識(shí)符能夠唯一地區(qū)分其所對(duì)應(yīng)的資源即可。
[0054]在另一實(shí)施例中,所述第一標(biāo)識(shí)符可以被設(shè)置為使得在利用資源文件來在用戶界面中呈現(xiàn)這些對(duì)象的情況下,能夠通過分析用戶界面的層次來找到所述第一標(biāo)識(shí)符。如此,在設(shè)置了第一標(biāo)識(shí)符之后,可以通過在Π中呈現(xiàn)這些對(duì)象并找到第一標(biāo)識(shí)符來得知哪個(gè)對(duì)象與該第一標(biāo)識(shí)符有關(guān),即哪個(gè)對(duì)象對(duì)應(yīng)于該第一標(biāo)識(shí)符所對(duì)應(yīng)的資源。
[0055]另外,“標(biāo)識(shí)所述至少一個(gè)資源”的方式也可以有很多種。在一個(gè)實(shí)施例中,在資源包括文本的情況下,可以將第一標(biāo)識(shí)符添加到該文本資源的文本內(nèi)容中。例如,對(duì)于資源是文本(例如,welcome)的情況,可以用例如“)}}} I”作為第一標(biāo)識(shí)符,可以將第一標(biāo)識(shí)符插入到文本的內(nèi)容中,例如得到welcome)}}} I,來標(biāo)識(shí)該文本(以下還將參考圖5A進(jìn)行詳細(xì)描述),或者,如果文本的內(nèi)容本身就是全局來說唯一的,例如文本內(nèi)容本身就是互相不同的,也可以不用對(duì)該文本添加例如“)}}} I”的標(biāo)識(shí)符,而將該文本內(nèi)容本身作為該第一標(biāo)識(shí)符;對(duì)于資源是圖片的情況,圖片通常具有文件名(例如baidu_jgylogo3.gif)或圖片的路徑位置信息(例如URL信息(統(tǒng)一資源定位符)、或Xpath (XML路徑語言(XML Path Language))信息,同樣,可以將如果全局唯一的文件名或路徑位置信息直接作為第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)圖片資源,這樣可以節(jié)省生成和加入第一標(biāo)識(shí)符的時(shí)間和成本;當(dāng)然也可以用另外生成的全局唯一的標(biāo)識(shí)符來標(biāo)識(shí);同理,對(duì)于資源是音頻或視頻的情況,由于音頻或視頻通常具有文件名(例如I will always love you.mp3)或路徑位置信息(例如URL信息(統(tǒng)一資源定位符)、或Xpath (XML路徑語言(XML Path Language))信息),同樣,可以將如果全局唯一的文件名或路徑位置信息作為第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)音頻或視頻資源,這樣可以節(jié)省生成和加入第一標(biāo)識(shí)符的時(shí)間和成本;當(dāng)然也可以用另外生成的全局唯一的標(biāo)識(shí)符來標(biāo)識(shí)。另外,也可以通過在用戶界面⑶I中不可見的字符、例如Unicode編碼中的U+200B、U+200C或U+200D等字符來作為該第一標(biāo)識(shí)符,使得用戶在觀看程序界面時(shí)不會(huì)看到這種添加的第一標(biāo)識(shí)符。當(dāng)然以上提到的包括特殊字符部分和標(biāo)識(shí)部分的第一標(biāo)識(shí)符、不可見標(biāo)識(shí)符、利用文本內(nèi)容、文件名或路徑位置信息本身作為第一標(biāo)識(shí)符的方式僅是示例,本領(lǐng)域技術(shù)人員也可以采用其他全局唯一的標(biāo)識(shí)符來唯一地標(biāo)識(shí)這些資源,在此不一一舉例,只要使得在利用資源文件來在用戶界面中呈現(xiàn)這些對(duì)象的情況下,能夠通過分析用戶界面的層次來找到這些第一標(biāo)識(shí)符即可。
[0056]另外,在一個(gè)實(shí)施例中,在用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源之后,可以記錄加入了這些第一標(biāo)識(shí)符的資源文件,和/或另外記錄這些第一標(biāo)識(shí)符和對(duì)應(yīng)的資源的對(duì)應(yīng)關(guān)系,以便日后使用。這種記錄不是本發(fā)明所必須的,不作為對(duì)本發(fā)明的限制。
[0057]在步驟S2012中,可以利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象。現(xiàn)有技術(shù)中存在很多Π呈現(xiàn)引擎,來用資源文件在例如圖形用戶界面(Graphic User Interface,⑶I)中呈現(xiàn)這些對(duì)象,例如,在超文本標(biāo)記語言(HypertextMarkup Language,HTML)程序的情況下,可以用一般的網(wǎng)頁瀏覽器來呈現(xiàn)這些對(duì)象,在此不--贅述。
[0058]在步驟S2013中,可以分析所呈現(xiàn)的用戶界面的層次來找到與該第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與對(duì)象的對(duì)應(yīng)關(guān)系?,F(xiàn)有技術(shù)中存在很多GUI分析引擎來分析所呈現(xiàn)的用戶界面的層次,例如但不限于,在HTML環(huán)境下,可以用文檔對(duì)象化模型(Document Object Model,D0M)或文檔對(duì)象化模型樹(即,DOM Tree)(如圖3B所不)來分析所呈現(xiàn)的HTML網(wǎng)頁界面的源代碼,可以得到體現(xiàn)了 HTML源代碼的節(jié)點(diǎn)對(duì)象的樹形結(jié)構(gòu)。具體地,可以將網(wǎng)頁的HTML結(jié)構(gòu)通過瀏覽器進(jìn)行解析,在內(nèi)存中創(chuàng)建整個(gè)文檔節(jié)點(diǎn)對(duì)象,然后從出現(xiàn)的第一個(gè)標(biāo)記出發(fā),按照HTML的層次結(jié)構(gòu)一個(gè)一個(gè)攔截,在網(wǎng)頁被裝載到內(nèi)存后,在內(nèi)存中可以存在一個(gè)按照HTML結(jié)構(gòu)形成的節(jié)點(diǎn)對(duì)象樹狀結(jié)構(gòu)。當(dāng)然,如何獲得網(wǎng)頁的HTML源代碼以及DOM如何分析HTML網(wǎng)頁和得到DOM Tree是本領(lǐng)域的公知技術(shù),本領(lǐng)域技術(shù)人員也可以采用除了上述舉例的方式以外的方式來得到反映這些對(duì)象及其層次的DOMTree (或未來可能出現(xiàn)的其他反映這些對(duì)象及其層次的數(shù)據(jù)結(jié)構(gòu))。在Java的環(huán)境下,也可以用已知的CTI分析引擎來獲得對(duì)象的結(jié)構(gòu),在此不贅述。另外,全文中僅給出以Java和HTML為例的例子,但是本領(lǐng)域技術(shù)人員可以想象其他程序編程方式(或未來出現(xiàn)的編程方式),只要能夠用用戶界面來呈現(xiàn)這種程序(或代碼段)即可,在此不一一舉例。如圖3B所示,可以看到通過⑶I分析引擎的分析結(jié)果是例如圖3B所示的DOM Tree,其中包括根元素(Root element)、各個(gè)元素(Element)、元素的屬性(Attribute)、和元素的文本(Text)。當(dāng)然,該圖3B所示的DOM Tree僅是示例,例如,DOM Tree也可以不通過樹形結(jié)構(gòu),而是其他結(jié)構(gòu)、例如平層結(jié)構(gòu)、代碼結(jié)構(gòu)等等來示出用戶界面上呈現(xiàn)的各個(gè)對(duì)象的結(jié)構(gòu)關(guān)系,在此不一一舉例。于是,很容易地可以通過⑶I分析引擎來找到在用戶界面上呈現(xiàn)的各個(gè)對(duì)象,例如兀素〈Title〉、兀素〈a>等等。
[0059]然后,在得知了用戶界面的層次以及這些對(duì)象之后,可以知道這些對(duì)象對(duì)應(yīng)了哪個(gè)資源。
[0060]例如在資源是文本的情況下,如果向文本的內(nèi)容本身加入了第一標(biāo)識(shí)符,則在用戶界面呈現(xiàn)了對(duì)象并進(jìn)行了用戶界面的層次分析之后,可以在用戶界面上找到與該第一標(biāo)識(shí)符相關(guān)的對(duì)象,即可以得知通過具有該第一標(biāo)識(shí)符的該文本對(duì)應(yīng)于哪個(gè)對(duì)象。例如由于對(duì)文本的內(nèi)容添加了諸如上述的全局唯一的第一標(biāo)識(shí)符“)}}} I”得到“welcome)}}} 1”,而在用戶界面呈現(xiàn)了對(duì)象并進(jìn)行了用戶界面的層次分析之后,可以找到與該第一標(biāo)識(shí)符“)}}} I”相關(guān)的對(duì)象的代碼(例如HTML環(huán)境下的“<button>welcome)}}} I〈/button〉”或Java環(huán)境下的“ JButton:welcome)}}} I”),從而得到該Button對(duì)象是對(duì)應(yīng)于被加入標(biāo)識(shí)符“)}}} I”的該文本welcome的對(duì)象。另外,由于第一標(biāo)識(shí)符中采用特殊字符“)}}}”作為前綴,還使得能夠與其他代碼進(jìn)行區(qū)分,從而更準(zhǔn)確地在用戶界面的層次結(jié)構(gòu)中找到該標(biāo)識(shí)符。
[0061]再例如,在資源是圖片的情況下,可以通過圖片本身的全局唯一的文件名或路徑位置信息或者對(duì)圖片分配的全局唯一的標(biāo)識(shí)符來在用戶界面的層次結(jié)構(gòu)中找到具有文件名或路徑位置信息或者或該標(biāo)識(shí)符的對(duì)象,從而可以得知該對(duì)象是對(duì)應(yīng)于該圖片的對(duì)象。具體地,在將圖片的文件名作為第一標(biāo)識(shí)符的情況下,在例如UI中呈現(xiàn)該圖片時(shí),用例如UI分析引擎分析該UI的層次可以得到包含該圖片的文件名的代碼,從而通過查找文件名的方式來找到對(duì)應(yīng)于該圖片的對(duì)象,這與向文本內(nèi)容插入第一標(biāo)識(shí)符的原理類似。而在將圖片的路徑位置信息作為第一標(biāo)識(shí)符的情況下,在Π中呈現(xiàn)該圖片時(shí),用Π分析引擎分析該Π的層次可以通過該路徑位置信息(因?yàn)槁窂轿恢眯畔⒃谫Y源文件中和在GUI中相似)來定位一個(gè)對(duì)象作為與該圖片資源對(duì)應(yīng)的對(duì)象。這對(duì)于音頻和視頻的情況可以類似于圖片的情況,在此不贅述。
[0062]如此,由于向至少一個(gè)資源添加了全局唯一的標(biāo)識(shí)符,從而通過在呈現(xiàn)的⑶I的層次分析中找到該全局唯一的標(biāo)識(shí)符,則可以容易地找到所述至少一個(gè)資源與對(duì)象的對(duì)應(yīng)關(guān)系。
[0063]如此,根據(jù)圖3A所示的各個(gè)步驟,可以容易地獲得資源和對(duì)象之間的對(duì)應(yīng)關(guān)系。
[0064]在此,在得知了資源與對(duì)象的對(duì)應(yīng)關(guān)系之后,可以給對(duì)象分配第二標(biāo)識(shí)符,該第二標(biāo)識(shí)符可以與第一標(biāo)識(shí)符相關(guān)聯(lián)。例如,在一個(gè)實(shí)施例中,如上所述,該第一標(biāo)識(shí)符可以包括特殊字符部分和標(biāo)識(shí)部分,例如“)}}} 1”,則該第二標(biāo)識(shí)符可以僅包括該標(biāo)識(shí)部分,例如“ 1”,因?yàn)閮H包括該標(biāo)識(shí)部分已經(jīng)可以起到唯一地區(qū)分的作用了,但是在其他實(shí)施例中該第二標(biāo)識(shí)符也可以包括所有部分例如“)}}} I”。
[0065]而向?qū)ο蠓峙涞诙?biāo)識(shí)符的方式也有多種,例如在一個(gè)實(shí)施例中使得對(duì)象的屬性中嵌入該第二標(biāo)識(shí)符(例如,在Java環(huán)境下JButton:welcomel (embedded_identity)和在HTML 環(huán)境下,〈button embedded_identity-< I ”〉welcome〈/button>),使得對(duì)象的屬性包含該第二標(biāo)識(shí)符,如下還將參考圖4B的例子詳細(xì)描述。當(dāng)然,除了嵌入的方式,還可以采用例如已知的Xpath (XML路徑語言(XML Path Language))對(duì)應(yīng)于該第二標(biāo)識(shí)符的方式來制定該界面對(duì)象,例如將位于路徑、例如Xpath (Root/Panel-l/label-2)的該Button對(duì)象對(duì)應(yīng)于第二標(biāo)識(shí)符“I”。同理,對(duì)于文本、圖片、音頻或視頻的對(duì)象都可以采用上述嵌入或Xpath的方式來被分配第二標(biāo)識(shí)符。甚至,可以用該路徑、例如Xpath (Root/Panel-l/label-2)直接作為第二標(biāo)識(shí)符,因?yàn)槠湟彩侨治ㄒ坏?。除此之外,本領(lǐng)域技術(shù)人員也可以構(gòu)思其他第二標(biāo)識(shí)符,只要該第二標(biāo)識(shí)符能夠全局唯一地標(biāo)識(shí)這些對(duì)象,且與第一標(biāo)識(shí)符相關(guān)聯(lián)。在此,該第二標(biāo)識(shí)符與第一標(biāo)識(shí)符相關(guān)聯(lián)也可以存在多種方式,例如該第二標(biāo)識(shí)符可以是第一標(biāo)識(shí)符的標(biāo)識(shí)部分,例如是第一標(biāo)識(shí)符“)}}} I”中的“ 1”,或者該第二標(biāo)識(shí)符可以與第一標(biāo)識(shí)符完全相同,例如“)}}} 1”,或者,該第二標(biāo)識(shí)符可以與第一標(biāo)識(shí)符不同,但是第二標(biāo)識(shí)符與第一標(biāo)識(shí)符的對(duì)應(yīng)關(guān)系被記錄了,等等。本領(lǐng)域技術(shù)人員也可以構(gòu)思其他方式使得第一標(biāo)識(shí)符和第二標(biāo)識(shí)符相關(guān)聯(lián)。
[0066]圖4是示意性地示出圖2所示的方法中的步驟S202的一個(gè)例子的示意圖。
[0067]參考圖4,圖2所示的方法中的步驟S202可以包括:步驟S2021,獲得與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域;以及步驟S2022,在用戶界面中呈現(xiàn)所述區(qū)域。
[0068]由于在先前的步驟S201中向各個(gè)資源分配了唯一地標(biāo)識(shí)其的第一標(biāo)識(shí)符,因此可以響應(yīng)于要更改所述至少一個(gè)資源之一,容易地獲得所述要更改的資源的第一標(biāo)識(shí)符。在此,“響應(yīng)于要更改所述至少一個(gè)資源之一”可以包括響應(yīng)于用戶將鼠標(biāo)放在要更改的資源上時(shí)、或者在用戶用鼠標(biāo)選中要更改的資源時(shí)、等等的表明用戶想要更改該資源的情況。
[0069]在步驟S2021中,可以獲得與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域。在此,該區(qū)域可以包括但不限于頁面、界面、頁面或界面中的一部分等等。由此,可以在用戶界面中呈現(xiàn)包含了與要更改的資源所對(duì)應(yīng)的對(duì)象的區(qū)域,可以使得操作人員看到要更改的資源所對(duì)應(yīng)的對(duì)象的上下文,從而進(jìn)行更準(zhǔn)確的更改。
[0070]在一個(gè)實(shí)施例中,在步驟S202之前,在步驟S201中在用戶界面中呈現(xiàn)了對(duì)象從而獲得資源和對(duì)象的對(duì)應(yīng)關(guān)系之后,可以將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源以及與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄。如此,可以在上述步驟S202的該例子中、在獲得所述要更改的資源的第一標(biāo)識(shí)符和獲得與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域期間使用該相關(guān)聯(lián)的記錄,從而能夠更容易地獲得要更改的資源的第一標(biāo)識(shí)符、以及能夠更容易地獲得與要更改的資源對(duì)應(yīng)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域,以便僅需要在用戶界面中呈現(xiàn)該區(qū)域,而不一定要呈現(xiàn)整個(gè)頁面或界面或甚至所有頁面或界面,從而可以節(jié)省呈現(xiàn)整個(gè)頁面或所有頁面的時(shí)間和成本。
[0071]然后,在步驟S2022中,可以在所述用戶界面上呈現(xiàn)所述區(qū)域。如前所述,同樣,在所述用戶界面上呈現(xiàn)所述區(qū)域也可以包括在該區(qū)域中突出地顯示與其要更改的資源對(duì)應(yīng)的對(duì)象。在此,“突出地顯示”可以包括高亮顯示、劃線顯示、畫框顯示、顏色、字體、大小改變等等使得用戶能夠明顯地看到的方式,如此可以使得用戶更清楚地看到其要更改的資源對(duì)應(yīng)的對(duì)象的位置。注意,這種突出的顯示也不是在時(shí)間上一定要與例如鼠標(biāo)放在要更改的資源上的時(shí)刻完全同步,而是可以是異步的,本發(fā)明對(duì)此不予限制。
[0072]如此,根據(jù)本發(fā)明的實(shí)施例,能夠在要更改資源期間在Π中呈現(xiàn)與要更改的資源相對(duì)應(yīng)的對(duì)象的上下文,使得進(jìn)行本地化或升級(jí)等的開發(fā)人員能夠可視地看到與其要更改的資源相對(duì)應(yīng)的在Π中要實(shí)際顯示的對(duì)象,進(jìn)一步使得其能夠了解該要更改的資源的上下文環(huán)境,從而改善更改資源的準(zhǔn)確性。
[0073]以上描述了對(duì)各個(gè)資源分配第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)這些資源的情況,有時(shí),為了某種需要,還可以向各個(gè)對(duì)象分配第二標(biāo)識(shí)符。具體地,在另一個(gè)實(shí)施例中,在步驟S201中得到對(duì)應(yīng)關(guān)系之后,還可以移除所述第一標(biāo)識(shí)符,并根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。在其他實(shí)施例中,在步驟S201中,也可以不移除所述第一標(biāo)識(shí)符,而僅根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。本領(lǐng)域技術(shù)人員可以理解,移除第一標(biāo)識(shí)符與分配第二標(biāo)識(shí)符的操作之間沒有特定的執(zhí)行順序,可以先后執(zhí)行,也可以同時(shí)執(zhí)行,先后執(zhí)行時(shí)并不限制哪個(gè)操作在先執(zhí)行。
[0074]所述第一標(biāo)識(shí)符和第二標(biāo)識(shí)符可以滿足下述關(guān)系之一:所述第一標(biāo)識(shí)符包括特殊字符部分和標(biāo)識(shí)部分,而所述第二標(biāo)識(shí)符包括所述第一標(biāo)識(shí)符中的標(biāo)識(shí)部分;所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符相同;以及所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符不同且相關(guān)聯(lián)。當(dāng)然,該第一標(biāo)識(shí)符和第二標(biāo)識(shí)符的關(guān)系不限于此。
[0075]在一個(gè)實(shí)施例中,所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符之一可以包括如下中的一種或多種:包含標(biāo)識(shí)部分的字符串;包含特殊字符部分和標(biāo)識(shí)部分的字符串;能夠唯一地標(biāo)識(shí)所述資源的其本身的文本內(nèi)容;能夠唯一地標(biāo)識(shí)所述資源的其本身的文件名。
[0076]在一個(gè)實(shí)施例中,所述根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符的步驟可以包括如下中的至少一種:使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的屬性包含所述第二標(biāo)識(shí)符;以及使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的路徑位置信息對(duì)應(yīng)于所述第二標(biāo)識(shí)符。
[0077]如此,向?qū)ο蠓峙涞诙?biāo)識(shí)符可以帶來一些好處,例如能夠更精準(zhǔn)地找到與資源所對(duì)應(yīng)的對(duì)象的位置從而呈現(xiàn)包含該對(duì)象的區(qū)域或突出地顯示該對(duì)象本身、能夠替代第一標(biāo)識(shí)符來消除有時(shí)由于在用戶界面上呈現(xiàn)出第一標(biāo)識(shí)符而帶來的視覺干擾、能夠更好地記錄資源和對(duì)象的對(duì)應(yīng)關(guān)系等等(稍后還將結(jié)合附圖來詳細(xì)描述該第二標(biāo)識(shí)符的相關(guān)內(nèi)容)。
[0078]例如,在給對(duì)象分配了第二標(biāo)識(shí)符的情況下,在一個(gè)實(shí)施例中,上述在該區(qū)域中突出地顯示與其要更改的資源對(duì)應(yīng)的對(duì)象的步驟可以包括:分析所述區(qū)域的層次以找到與所述要更改所述至少一個(gè)資源之一的第一標(biāo)識(shí)符相關(guān)的對(duì)象;以及在所述區(qū)域中突出地顯示與所述要更改所述至少一個(gè)資源之一的第一標(biāo)識(shí)符相關(guān)的對(duì)象。例如,在用戶界面中呈現(xiàn)了包括與所述要更改的資源對(duì)應(yīng)的對(duì)象的區(qū)域之后,還可以利用例如UI分析引擎(例如Dom Tree等)來找到該與要更改的資源對(duì)應(yīng)的對(duì)象的具體位置,從而突出地顯示(例如、高亮、畫框等等)該對(duì)象,這樣可以使得操作人員能夠更清楚地看到其正在更改的那個(gè)資源所對(duì)應(yīng)的對(duì)象是哪個(gè)、位于哪里,從而更清楚地看到該對(duì)象周圍的上下文,以便進(jìn)行更準(zhǔn)確的更改。
[0079]下面參考圖5A-5C來用具體例子來描述圖3A中的用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源的步驟S2011的可視的示意圖。
[0080]圖5A示意性地示出以資源是可翻譯文本為例、圖3A所示的步驟S2011中用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)資源之前和之后的一個(gè)例子的示意圖。
[0081]如前所述,在要更改的資源是可翻譯文本的情況下,例如要進(jìn)行本地化時(shí)需要對(duì)可翻譯文本進(jìn)行翻譯時(shí),可以在圖3A所示的步驟S2011中,將第一標(biāo)識(shí)符插入到該文本的內(nèi)容中。注意,在此情況下,可以使用翻譯編輯器來進(jìn)行例如步驟S2011。
[0082]如圖5A所示,在向可翻譯文本插入第一標(biāo)識(shí)符之前,在翻譯編輯器中看到的包括該資源的值 value 的那一行代碼是“〈Text locale=〃Not translated〃value=〃Translated"/>”。而在向可翻譯文本插入第一標(biāo)識(shí)符之后,包括該資源的值value的那一行代碼變成“〈Text locale="Not translated"value="Translated)}}} 2"/>”,即插入了 “)}}} 2” 這個(gè)包括特殊字符部分“)}}} ”和標(biāo)識(shí)部分“2”的第一標(biāo)識(shí)符。本領(lǐng)域技術(shù)人員可以想象,在這樣的插入第一標(biāo)識(shí)符之后,在用包含該可翻譯文本的該資源文件在GUI中呈現(xiàn)該文本時(shí),將不再顯示原來的“Translated”,而是顯示“Translated)}}} 2”。因此,可以在⑶I中呈現(xiàn)該文本之后,可以通過分析⑶I的層次來找到該顯示的文本內(nèi)容“Translated)}}} 2”,從而得知該文本對(duì)象是與資源文件中的該文本資源“Translated”相對(duì)應(yīng)的。
[0083]當(dāng)然,上述僅是結(jié)合圖5A示意性地示出了在資源是文本的情況下的用第一標(biāo)識(shí)符來標(biāo)識(shí)資源的一種方式。如上所述,還可以使用其他方式來標(biāo)識(shí)資源,例如用全局唯一的文本內(nèi)容本身來標(biāo)識(shí)文本資源,利用圖片資源的全局唯一的文件名或路徑位置信息或另外設(shè)置的全局唯一的標(biāo)識(shí)符來標(biāo)識(shí)圖片、音頻或視頻資源等等,在此不贅述。
[0084]圖5B示意性地示出以資源是可翻譯文本為例、向可翻譯文本對(duì)象分配第二標(biāo)識(shí)符之前和之后的一個(gè)例子的示意圖。
[0085]如上所述,在用分配了第一標(biāo)識(shí)符的資源文件來在⑶I中呈現(xiàn)這些對(duì)象以找到對(duì)象與資源的對(duì)應(yīng)關(guān)系之后,可以根據(jù)所述對(duì)應(yīng)關(guān)系,向所述這些對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。通常,在一個(gè)實(shí)施例中,可以使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的屬性包含所述第二標(biāo)識(shí)符。參考圖5B來示出使得對(duì)象的屬性包含第二標(biāo)識(shí)符的例子。
[0086]如圖5B所示,在例如是Java環(huán)境且資源是文本的情況下,在分配第二標(biāo)識(shí)符之前,Gn分析引擎(例如DOM Tree)分析得到的該CTI呈現(xiàn)的對(duì)象所在的那行代碼是JButton:hello)}}} 2,這表示在⑶I中該對(duì)象將呈現(xiàn)“hello)}}} 2”,而在通過向該對(duì)象的屬性插入第二標(biāo)識(shí)符來分配第二標(biāo)識(shí)符之后,該GUI呈現(xiàn)的對(duì)象所在的那行代碼是:
[0087]JButton:hello
[0088]2(embedded_identity)
[0089]S卩,在該例子中,可以移除文本資源中添加的第一標(biāo)識(shí)符(即該文本資源的將顯示的內(nèi)容仍然是“hello”),而僅將第一標(biāo)識(shí)符中的標(biāo)識(shí)部分“2”保留為第二標(biāo)識(shí)符,且將第二標(biāo)識(shí)符“2”嵌入到該button對(duì)象的屬性中,即如上所述地第二標(biāo)識(shí)符僅包括第一標(biāo)識(shí)符的標(biāo)識(shí)部分。這樣做可以使得在GUI中顯示該對(duì)象時(shí)不會(huì)顯示帶有任何標(biāo)識(shí)符的對(duì)象導(dǎo)致視覺的干擾,而是正常地顯示該對(duì)象,但是實(shí)際上該第二標(biāo)識(shí)符已經(jīng)嵌入到對(duì)象的屬性中了,在后續(xù)的對(duì)諸如文本的資源進(jìn)行更改(例如翻譯)的情況下可以利用該嵌入了第二標(biāo)識(shí)符的對(duì)象的屬性進(jìn)行在GUI中的該對(duì)象的呈現(xiàn)。
[0090]如圖5B所示,在例如HTML環(huán)境且資源是文本的情況下,在分配第二標(biāo)識(shí)符之前,⑶I分析引擎分析得到的該對(duì)象所在的那行代碼是<button>hello)}}} 2</button>,這表示在⑶I中該對(duì)象將呈現(xiàn)“hello)}}}2”,而在通過向該對(duì)象的屬性插入第二標(biāo)識(shí)符來分配第二標(biāo)識(shí)符之后,該⑶I呈現(xiàn)的對(duì)象所在的那行代碼是:〈button embedded.1dentity=“2”>hello〈/button>。S卩,在該例子中,可以移除文本資源中添加的第一標(biāo)識(shí)符(即該文本資源的內(nèi)容仍然是“hello”),而僅將第一標(biāo)識(shí)符中的標(biāo)識(shí)部分“2”保留為第二標(biāo)識(shí)符,即如上所述地第二標(biāo)識(shí)符僅包括第一標(biāo)識(shí)符的標(biāo)識(shí)部分,且將第二標(biāo)識(shí)符“2”嵌入到該button對(duì)象的屬性中。
[0091]這樣做可以使得在⑶I中顯示該對(duì)象時(shí)不會(huì)顯示帶有任何標(biāo)識(shí)符的對(duì)象,而是正常地顯示該對(duì)象(例如,該button對(duì)象將被顯示為“hello”),但是實(shí)際上該第二標(biāo)識(shí)符已經(jīng)嵌入到對(duì)象的屬性中了,在后續(xù)的對(duì)諸如文本的資源進(jìn)行更改(例如翻譯)的情況下可以利用該嵌入了第二標(biāo)識(shí)符的對(duì)象的屬性進(jìn)行在GUI中的該對(duì)象的呈現(xiàn)。
[0092]圖5C是示意性地示出以資源是圖片為例、向圖片對(duì)象分配第二標(biāo)識(shí)符之前和之后的一個(gè)例子的示意圖。
[0093]在該例子中,在例如HTML環(huán)境且資源是圖片的情況下,在分配第二標(biāo)識(shí)符之前,⑶I分析引擎分析得到的該⑶I呈現(xiàn)的對(duì)象所在的那行代碼是例如〈src Img=-1og0.gif〃/>,這表示在⑶I中該對(duì)象將呈現(xiàn)文件名是logo, gif這個(gè)圖片,而在分配第二標(biāo)識(shí)符之后,該GUI呈現(xiàn)的對(duì)象所在的那行代碼是:<src identity=’ 10,img=〃log0.gif"/〉。即,將第二標(biāo)識(shí)符“10”嵌入到該圖片對(duì)象的屬性中。這樣做可以使得在GUI中顯示該對(duì)象時(shí)不會(huì)顯示帶有任何標(biāo)識(shí)符的對(duì)象,而是正常地顯示該對(duì)象,但是實(shí)際上該第二標(biāo)識(shí)符已經(jīng)嵌入到對(duì)象的屬性中了,在后續(xù)的對(duì)諸如文本的資源進(jìn)行更改(例如翻譯)的情況下可以利用該嵌入了第二標(biāo)識(shí)符的對(duì)象的屬性進(jìn)行在GUI中的該對(duì)象的呈現(xiàn)。
[0094]除了圖5B和5C所示的向?qū)ο蟮膶傩郧度氲诙?biāo)識(shí)符的例子以外,對(duì)于圖片、音頻或視頻對(duì)象,也可以通過利用對(duì)象的路徑位置信息、例如Xpath (div-central/p-lg/src)來與第二標(biāo)識(shí)符“ 10”進(jìn)行對(duì)應(yīng)以達(dá)到對(duì)該對(duì)象分配第二標(biāo)識(shí)符的目的(在此可以將該路徑位置信息與第二標(biāo)識(shí)符的對(duì)應(yīng)關(guān)系記錄起來,以便日后查找,但這不是本發(fā)明必須的,不構(gòu)成對(duì)本發(fā)明的限制),或者直接利用該路徑位置信息作為第二標(biāo)識(shí)符等等,只要通過該第二標(biāo)識(shí)符能夠唯一地找到該對(duì)象即可。當(dāng)然,除了利用對(duì)象的屬性和路徑位置信息(例如,Xpath)以外,本領(lǐng)域技術(shù)人員還可以構(gòu)思其他方式來達(dá)到向?qū)ο蠓峙涞诙?biāo)識(shí)符的目的,只要能夠通過該第二標(biāo)識(shí)符來唯一地定位該對(duì)象即可。
[0095]這樣,通過示例的方式以Java和HTML以及資源是文本和圖片為例,進(jìn)行了用第一標(biāo)識(shí)符標(biāo)識(shí)資源以及向與資源對(duì)應(yīng)的對(duì)象分配第二標(biāo)識(shí)符的示意描述。但是,本發(fā)明不限于此,如上所述,本領(lǐng)域技術(shù)人員可以構(gòu)思針對(duì)其他程序編程方式、和/或針對(duì)其他資源類型來進(jìn)行用第一標(biāo)識(shí)符標(biāo)識(shí)資源以及向與資源對(duì)應(yīng)的對(duì)象分配第二標(biāo)識(shí)符的步驟,在此不贅述。
[0096]這樣,可以容易地獲得各個(gè)資源與要在⑶I上呈現(xiàn)的這些對(duì)象之間的對(duì)應(yīng)關(guān)系,以便于日后要更改資源時(shí)進(jìn)行對(duì)應(yīng)對(duì)象在⑶I上的突出顯示。
[0097]下面結(jié)合圖6A-6E來描述以資源是可翻譯文本為例、根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法的一個(gè)例子的具體步驟以及在用戶界面上的顯示的示意圖。
[0098]圖6A示意性地示出了向各個(gè)文本資源直接添加第一標(biāo)識(shí)符之前和之后的代碼的例子。
[0099]在該例子中,資源是可翻譯文本,例如“Chinese”、“Danish”、“French”、“Title”等等。順帶提及,翻譯編輯器能夠自動(dòng)標(biāo)出可翻譯文本和不可翻譯文本(例如圖6A中的“LoCale”、“/Label”等等),因此在此可以不需要另外的區(qū)分可翻譯文本和不可翻譯文本的步驟,而如果使用另外的編輯器例如txt等,則可以使用一定的策略來區(qū)分可翻譯文本和不可翻譯文本,例如,通過排除編程語法規(guī)則的文本來區(qū)分出可翻譯文本。但這不是限制,本領(lǐng)域技術(shù)人員可以構(gòu)思其他方式來區(qū)分出可翻譯文本。這些可翻譯文本可能要在本地化時(shí)被翻譯。
[0100]在步驟S2011中,例如由于資源是文本,因此在一個(gè)實(shí)施例中,可以采用向文本資源的內(nèi)容直接添加第一標(biāo)識(shí)符(例如,“ {{{{51”)的方式唯一地標(biāo)識(shí)了這些文本資源??蓞⒖紙D6A,可見,文本資源“Chinese”的文本內(nèi)容在插入第一標(biāo)識(shí)符之前為“Chinese”,而在插入第一標(biāo)識(shí)符之后變?yōu)椤癈hinese {{{{51",文本資源“Danish”的文本內(nèi)容在插入第一標(biāo)識(shí)符之前為“Danish”,而在插入第一標(biāo)識(shí)符之后變?yōu)椤癉anish {{{{52”,等等。
[0101]圖6B是示意性地示出向各個(gè)文本資源直接添加第一標(biāo)識(shí)符和向各個(gè)對(duì)象分配第二標(biāo)識(shí)符的過程中在用戶界面上的顯示的一個(gè)示意例子。
[0102]接下來,在步驟S2012中,可以利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象,從而獲得圖6B左側(cè)所示的用戶界面,可見,這些對(duì)象、例如“ChineSe”、“DaniSh”、“French”、“Title”等所顯示的內(nèi)容是添加了第一標(biāo)識(shí)符的文本內(nèi)容,例如 “Chinese {{{{51 ”、“Danish {{{{52,,、“French {{{{53,,、“Title {{{{15,,等。
[0103]因此,在步驟S2013中,可以分析所呈現(xiàn)的用戶界面的層次來找到與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與對(duì)象的對(duì)應(yīng)關(guān)系。具體地,在一個(gè)實(shí)施例中,可以通過CTI分析引擎分析所呈現(xiàn)的圖6B左側(cè)的用戶界面的層次,可以得到例如“ JLabel {text: Chinese {{{{51}"的元素,從而很容易找到該帶有特殊字符部分“ {{{{”的第一標(biāo)識(shí)符“{{{{51”,從而得知該帶有第一標(biāo)識(shí)符“{{{{51”的Text對(duì)象是與文本資源“Chinese”所對(duì)應(yīng)的對(duì)象。
[0104]如前所述,在另一實(shí)施例中,還可以根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。在該例子中,可以移除所述第一標(biāo)識(shí)符,并根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。具體地,如上所述,可以通過移除文本資源“Chinese”中添加的第一標(biāo)識(shí)符“ {{{{51”,而僅將第一標(biāo)識(shí)符“ {{{{51”中的標(biāo)識(shí)部分“51”保留為第二標(biāo)識(shí)符,且將第二標(biāo)識(shí)符“51”嵌入到該text對(duì)象的屬性中,例如如圖 6B右側(cè)所不JLabel {text:Chinese; segment_identity:51} ”(即該文本資源的內(nèi)容仍然是“Chinese”,如圖6B右側(cè)所示)。
[0105]這樣做可以使得在⑶I中顯示該文本對(duì)象時(shí)不會(huì)顯示帶有任何標(biāo)識(shí)符的對(duì)象而導(dǎo)致視覺干擾,而是正常地顯示該文本對(duì)象(例如,該Chinese對(duì)象被顯示為“Chinese”),其中,該第二標(biāo)識(shí)符已經(jīng)嵌入到文本對(duì)象的屬性中了,在后續(xù)的該文本資源進(jìn)行更改(例如翻譯)的情況下可以利用該嵌入了第二標(biāo)識(shí)符的對(duì)象的屬性進(jìn)行在GUI中的該對(duì)象的呈現(xiàn)。
[0106]另外,如上所述,在一個(gè)實(shí)施例中,在呈現(xiàn)對(duì)象之后還可以進(jìn)行記錄階段。由于在呈現(xiàn)對(duì)象時(shí)也得知了資源所對(duì)應(yīng)的對(duì)象在用戶界面中的呈現(xiàn)情況和位置,因此該記錄階段可以將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源以及與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄。
[0107]另外,在向?qū)ο蠓峙涞牡诙?biāo)識(shí)符的情況下,該記錄階段也可以包括將第二標(biāo)識(shí)符和指示分配了第二標(biāo)識(shí)符的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄,以便日后在更改階段中響應(yīng)于更改資源,可以很容易地得知該資源所對(duì)應(yīng)的對(duì)象將被呈現(xiàn)在用戶界面中的哪一區(qū)域(例如,在HTML下的哪一頁面或哪一頁面的哪個(gè)部分),從而僅呈現(xiàn)該區(qū)域(例如該HTML頁面或該頁面的一部分)來減少呈現(xiàn)的面積,節(jié)省時(shí)間和成本。
[0108]在另一實(shí)施例中,如果在分配第二標(biāo)識(shí)符期間,從資源中移除了第一標(biāo)識(shí)符(例如,先前所述的移除了第一標(biāo)識(shí)符“ {{{{51”,僅在對(duì)象的屬性中添加第二標(biāo)識(shí)符“51”),在記錄階段中,還可以將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源相關(guān)聯(lián)地記錄,以便日后在更改階段中響應(yīng)于更改資源而進(jìn)行GUI中的對(duì)象的呈現(xiàn)時(shí)通過要更改的資源來得到該資源所對(duì)應(yīng)的第一標(biāo)識(shí)符。
[0109]另外,由于第二標(biāo)識(shí)符與第一標(biāo)識(shí)符是相關(guān)聯(lián)的,因此上述這些記錄還可以彼此相關(guān)聯(lián)地被一起記錄。
[0110]圖6C示意性地示出了上述記錄階段以及更改資源的更改階段之間的關(guān)系的示意框圖。
[0111]如圖6C所示,在左側(cè)的記錄階段中,在將目標(biāo)應(yīng)用程序進(jìn)行代碼捕獲和用GUI分析引擎進(jìn)行用戶界面分析之后,可以將第一標(biāo)識(shí)符、分配了第一標(biāo)識(shí)符的資源和對(duì)應(yīng)的對(duì)象相關(guān)聯(lián)地記錄在資源標(biāo)識(shí)符-對(duì)象庫好,還可以(在分配了第二標(biāo)識(shí)符的情況下)將第二標(biāo)識(shí)符和指示分配了第二標(biāo)識(shí)符的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄在對(duì)象標(biāo)識(shí)符-區(qū)域索引庫中,且可以將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源相關(guān)聯(lián)地記錄在資源標(biāo)識(shí)符庫中。這些庫還可以被相互關(guān)聯(lián)地(與其他元數(shù)據(jù)一起)記錄在一個(gè)元數(shù)據(jù)庫中。而在右側(cè)的更改階段中,響應(yīng)于要更改某一資源,例如要翻譯某一可翻譯文本,則可以參考該資源標(biāo)識(shí)符-對(duì)象庫、或資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫(以下還將參考圖6E來描述如何參考這些庫來進(jìn)行更改階段)。
[0112]注意,由于如上所述對(duì)象的第二標(biāo)識(shí)符和資源的第一標(biāo)識(shí)符之間具有相關(guān)聯(lián)的關(guān)系,因此通過任一第一標(biāo)識(shí)符,可以利用例如資源搜索引擎在資源標(biāo)識(shí)符庫中找到相應(yīng)資源,也可以在對(duì)象標(biāo)識(shí)符-區(qū)域索引庫中,找到與第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符所對(duì)應(yīng)的對(duì)象,以及該對(duì)象所處的GUI中的區(qū)域等等相關(guān)信息。另外,該記錄階段中記錄的這些庫可以在分配完第二標(biāo)識(shí)符之后統(tǒng)一建立,也可以在獲得要記錄的信息時(shí)立即建立,在本公開不對(duì)此進(jìn)行限制。
[0113]圖6D示意性地示出了資源標(biāo)識(shí)符-對(duì)象庫、資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫的不意圖。
[0114]作為一個(gè)例子而非限制,在圖6D所示的資源標(biāo)識(shí)符-對(duì)象庫中,左側(cè)一列是資源的第一標(biāo)識(shí)符,而第二列是各個(gè)資源,第三列是各個(gè)對(duì)象,右側(cè)一列是對(duì)應(yīng)的對(duì)象區(qū)域。如此,可以容易地通過要更改的某一資源來直接查找到并呈現(xiàn)包括與該要更改的資源對(duì)應(yīng)的對(duì)象的區(qū)域。在沒有向?qū)ο蠓峙涞诙?biāo)識(shí)符的情況下,單獨(dú)的該資源標(biāo)識(shí)符-對(duì)象庫已經(jīng)可以有助于呈現(xiàn)包括要更改的資源對(duì)應(yīng)的對(duì)象的區(qū)域了。
[0115]作為一個(gè)例子而非限制,在圖6D所示的資源標(biāo)識(shí)符庫中,左側(cè)一列是資源的第一標(biāo)識(shí)符,而右側(cè)一列是各個(gè)資源。如此,可以容易地通過要更改的某一資源來查找到第一標(biāo)識(shí)符,或反之亦然。該資源標(biāo)識(shí)符庫通常與如下對(duì)象標(biāo)識(shí)符-區(qū)域索引庫結(jié)合使用。
[0116]作為一個(gè)例子而非限制,在圖6D所示的對(duì)象標(biāo)識(shí)符-區(qū)域索引庫中,最左側(cè)一列是⑶I區(qū)域號(hào),即將在⑶I中呈現(xiàn)的區(qū)域1、區(qū)域2、區(qū)域3等等,而第二列是⑶I區(qū)域名稱,即區(qū)域I對(duì)應(yīng)于Welcome區(qū)域,區(qū)域2對(duì)應(yīng)于Welcome#l (這是welcome區(qū)域的delta改變,以下還將描述)等等,第三側(cè)是在該區(qū)域上的各個(gè)對(duì)象,最右側(cè)一列是在該區(qū)域上的這些對(duì)象的第二標(biāo)識(shí)符列表(如果分配了第二標(biāo)識(shí)符的情況下),即在區(qū)域I (即,Welcome界面)上,存在四個(gè)對(duì)象,其第二標(biāo)識(shí)符分別為1、2、5、6,在區(qū)域2 (即WelCOme#l界面)上,存在兩個(gè)對(duì)象,其第二標(biāo)識(shí)符分別為3、5。如此,可以容易地通過第二標(biāo)識(shí)符查找到對(duì)象所處的區(qū)域號(hào),或反之亦然。
[0117]通過記錄資源標(biāo)識(shí)符-對(duì)象庫、或資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫,能夠在后續(xù)的更改階段中加快查找資源所對(duì)應(yīng)的對(duì)象并呈現(xiàn)對(duì)象所在界面的速度。
[0118]另外,上述“Delta改變”指的是,對(duì)于存在⑶I的某一區(qū)域動(dòng)態(tài)改變的情況,還可以用⑶I改變監(jiān)聽器(⑶I change event listener)來捕獲該區(qū)域的這些改變,并將其記錄為Delta改變,并在對(duì)象標(biāo)識(shí)符-區(qū)域索引庫中記錄這種Delta改變區(qū)域以及該區(qū)域上的這些對(duì)象的第二標(biāo)識(shí)符。當(dāng)然,該“Delta改變”不是必須的,不對(duì)本發(fā)明構(gòu)成限制。
[0119]另外,在之后的更改階段中,可以對(duì)上述資源標(biāo)識(shí)符-對(duì)象庫、或資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫進(jìn)行更新。例如,響應(yīng)于更改了至少一個(gè)資源之一,可以用另外的第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)更改后的資源,和/或可以根據(jù)所述更改后的資源與對(duì)象的對(duì)應(yīng)關(guān)系,向所述更改后的資源所對(duì)應(yīng)的對(duì)象分配與所述另外的第一標(biāo)識(shí)符相關(guān)聯(lián)的另外的第二標(biāo)識(shí)符。這樣做可以為每次更改的對(duì)象也分配第二標(biāo)識(shí)符來使得日后也可以容易地通過第二標(biāo)識(shí)符找到更改了的對(duì)象。注意,也可以在先前的任何階段生成上述庫以節(jié)省時(shí)間,且生成這些庫還可以使得在開發(fā)者之間方便地共享和管理這些庫。
[0120]圖6E示意性地示出在該情況下在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域的一個(gè)例子。
[0121]如圖6E所示,在圖4所示的步驟S2021中,可以響應(yīng)于要更改所述至少一個(gè)資源之一,獲得所述要更改的資源的第一標(biāo)識(shí)符。在本實(shí)施例的情況下,例如,當(dāng)進(jìn)行本地化的翻譯人員想要對(duì)資源文件中的一個(gè)文本(例如“Chinese”)進(jìn)行翻譯時(shí),他/她可能將鼠標(biāo)插入到該文本上,在該情況下,在步驟S2021中,能夠通過各種方式(例如,在從資源中移除了第一標(biāo)識(shí)符例如“ {{{{51”的情況下,通過查找圖6D所示的資源標(biāo)識(shí)符-對(duì)象庫或資源標(biāo)識(shí)符庫)獲得該文本資源所對(duì)應(yīng)的第一標(biāo)識(shí)符(例如如前所述的“{{{{51”)。在另一實(shí)施例中,如果該文本中仍然添加了該第一標(biāo)識(shí)符“ {{{{51”(即,在向?qū)ο蠓峙涞诙?biāo)識(shí)符時(shí)沒有移除原來添加的該第一標(biāo)識(shí)符),可以通過直接查找該文本中的特殊字符部分“)}}} ”或“{{{{”,來得知該文本中哪些是第一標(biāo)識(shí)符,而不需要查找圖6D所示的資源標(biāo)識(shí)符-對(duì)象庫或資源標(biāo)識(shí)符庫。
[0122]在步驟S2022中,可以獲得與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域。
[0123]該區(qū)域可以是以頁面為單位的,在該情況下,在該步驟的一個(gè)實(shí)施例中,在程序(或代碼段)僅包括一個(gè)頁面的情況下,可以直接在⑶I中呈現(xiàn)包括例如文本資源“Chinese”的該頁面而不需要知道該對(duì)象處于該頁面中的哪個(gè)部分。在另一實(shí)施例中,在程序(或代碼段)包括多個(gè)頁面的情況下,也可以通過如上所述記錄的資源標(biāo)識(shí)符-對(duì)象庫來得知該對(duì)象處于哪個(gè)頁面,從而以頁面為單位呈現(xiàn)該頁面。
[0124]該區(qū)域可以是以比頁面更小的部分為單位的。在該情況下,可以將各個(gè)頁面劃分為若干區(qū)域,并對(duì)其編號(hào)且記錄。如此,在一個(gè)實(shí)施例中,可以通過如上所述的資源標(biāo)識(shí)符-對(duì)象庫來找到與要更改的資源的第一標(biāo)識(shí)符“{{{{51”相關(guān)聯(lián)的對(duì)象的區(qū)域號(hào),或通過資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫,來通過文本資源“Chinese”的第一標(biāo)識(shí)符“ {{{{51”來根據(jù)資源標(biāo)識(shí)符找到相關(guān)聯(lián)的第二標(biāo)識(shí)符“51”,并根據(jù)對(duì)象標(biāo)識(shí)符-區(qū)域索引庫找到該第二標(biāo)識(shí)符所對(duì)應(yīng)的對(duì)象“Chinese”將呈現(xiàn)在哪一個(gè)區(qū)域,在此,假設(shè)將呈現(xiàn)在區(qū)域1,則在⑶I中呈現(xiàn)該區(qū)域1,如圖6E的右側(cè)所示。
[0125]在步驟S2023中,可以在用戶界面中呈現(xiàn)所述區(qū)域。如此,可以使得操作人員看到該包含要更改的資源所對(duì)應(yīng)的對(duì)象“Chinese”的區(qū)域(如圖6E的右側(cè)所示)。另外,如上所述,可以在該區(qū)域中突出地顯示該對(duì)象“Chinese”以便操作人員更清楚地看到。在本實(shí)施例的情況下,如圖6B的右側(cè)所示,在找到第二標(biāo)識(shí)符“51”與第一標(biāo)識(shí)符“ {{{{51”相關(guān)聯(lián)之后,可以在界面上突出顯示(在該例子中,用紅框圈出)分配了該第二標(biāo)識(shí)符“51”的對(duì)象,即對(duì)象Chinese。
[0126]如上所述,在一個(gè)實(shí)施例中,在得知了資源與對(duì)象的對(duì)應(yīng)關(guān)系之后,可以給對(duì)象分配第二標(biāo)識(shí)符,該第二標(biāo)識(shí)符可以與第一標(biāo)識(shí)符相關(guān)聯(lián)。在該情況下,在該驟S2023中在呈現(xiàn)的區(qū)域中突出地顯示對(duì)象期間,可以分析所呈現(xiàn)的區(qū)域的層次以找到與所述第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。在本實(shí)施例的情況下,例如,如圖6E的右側(cè)所示,通過分析所呈現(xiàn)的區(qū)域的層次,可以得到序列化后的Jframe和元數(shù)據(jù),即可以得到這些對(duì)象和其屬性列表(例如圖6 B所示的segment_identity_list)等信息。從對(duì)象的屬性信息列表中可以找到第二標(biāo)識(shí)符“51”與第一標(biāo)識(shí)符“ {{{{51”相關(guān)聯(lián),從而找到分配了該第二標(biāo)識(shí)符“51”的對(duì)象“Chinese”的具體位置,并進(jìn)行突出顯示。
[0127]接下來,進(jìn)行本地化的翻譯人員或者進(jìn)行升級(jí)的開發(fā)人員等等可以在更改資源期間看到其要更改的資源將在GUI中顯示的對(duì)象所處的上下文環(huán)境、甚至可以明顯地看到其所要更改的資源所對(duì)應(yīng)的對(duì)象本身,從而可以更準(zhǔn)確地進(jìn)行翻譯或升級(jí)。例如,在該例子中,翻譯人員可以看到突出顯示的文本“Chinese”是與其他語言類型“DaniSh”、“FrenCh”等以及旁邊的指示文章屬性的“Title”、“Auth0r”等,可以推測(cè)該文本“Chinese”指的是語言類型,即“中文”,而非“中國人”,因此翻譯人員可以更準(zhǔn)確地將該文本資源“Chinese”更改(或翻譯)為文本“中文”。
[0128]如此,進(jìn)行本地化的翻譯人員或者進(jìn)行升級(jí)的開發(fā)人員等等操作員可以在更改資源期間看到其要更改的資源將在GUI中顯示的對(duì)象所處的上下文環(huán)境,從而可以更準(zhǔn)確地進(jìn)行翻譯或升級(jí)。
[0129]圖7A-7C是示意性地示出以資源是可翻譯文本為例、根據(jù)本發(fā)明的一個(gè)實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的方法的另一例子的在用戶界面上的顯示的示意圖。
[0130]如圖7A所示,在用不同第一標(biāo)識(shí)符來表示這些可翻譯文本資源(例如,“Adddeliverables to D0U”等)之前,在翻譯編輯器中看到的包括該資源的值的那一行代碼是“dou.dig.addtodou.title=Add deliverables to D0U”。而在向可翻譯文本插入第一標(biāo)識(shí)符之后,包括該資源的值的那一行代碼變成“dou.dig.addtodou.title=Add deliverablesto DOU {{{001 ”,即插入了“ {{{001”這個(gè)包括特殊字符部分“{{{,,和標(biāo)識(shí)部分“001”的第一標(biāo)識(shí)符。
[0131]如圖7B左側(cè)所示,在這樣的插入第一標(biāo)識(shí)符之后,在用包含該可翻譯文本的該資源文件在⑶I中呈現(xiàn)該文本時(shí),將不再顯示原來的“Add deliverablesto DOU”,而是顯示“Add deliverables to D0U{{{001,,。因此,可以在GUI中呈現(xiàn)該文本之后,可以通過分析⑶I的層次來找到該顯示的文本內(nèi)容“Adddeliverables to DOU {{{001”,從而得知該文本對(duì)象是與資源文件中的該文本資源“Add deliverables to D0U”相對(duì)應(yīng)的。
[0132]然后,從可翻譯文本“Add deliverables to DOU {{{001”中移除添加的第一標(biāo)識(shí)符“ {{1001”,而僅將第一標(biāo)識(shí)符“ {{{001”中的標(biāo)識(shí)部分“001”保留為第二標(biāo)識(shí)符,且將第二標(biāo)識(shí)符“2”嵌入到該可翻譯文本對(duì)象的屬性中,如圖7B右側(cè)所示。
[0133]接下來,可以如上所述將第二標(biāo)識(shí)符和指示分配了第二標(biāo)識(shí)符的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄在對(duì)象標(biāo)識(shí)符-區(qū)域索引庫中,且可以將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源相關(guān)聯(lián)地記錄在資源標(biāo)識(shí)符庫中。
[0134]接下來,如圖7C所示,響應(yīng)于翻譯人員要翻譯可翻譯文本“Adddeliverables toD0U”,可以通過如上所述的資源標(biāo)識(shí)符庫和對(duì)象標(biāo)識(shí)符-區(qū)域索引庫,來根據(jù)文本資源“Add deliverables to D0U”的第一標(biāo)識(shí)符“ {001”找到相關(guān)聯(lián)的第二標(biāo)識(shí)符“001”,并通過對(duì)象標(biāo)識(shí)符-區(qū)域索引庫找到該第二標(biāo)識(shí)符所對(duì)應(yīng)的對(duì)象“Add deliverables to DOU”將呈現(xiàn)在哪一個(gè)區(qū)域,在此,假設(shè)將呈現(xiàn)在區(qū)域I,則在⑶I中呈現(xiàn)該區(qū)域1,如圖7C的右側(cè)所示。
[0135]接下來,可以分析所述界面的層次以找到該第二標(biāo)識(shí)符“001”。
[0136]在找到第二標(biāo)識(shí)符“001”之后,可以在界面上突出顯示(在該例子中,用紅框圈出)分配了該第二標(biāo)識(shí)符“001”的對(duì)象,即對(duì)象“Add deliverables to DOU”。
[0137]如此,進(jìn)行本地化的翻譯人員或者進(jìn)行升級(jí)的開發(fā)人員等等操作員可以在更改資源期間看到其要更改的資源將在GUI中顯示的對(duì)象所處的上下文環(huán)境,從而可以更準(zhǔn)確地進(jìn)行翻譯或升級(jí)。
[0138]注意,在此,翻譯人員用于更改資源文件的工具不限于現(xiàn)有的翻譯編輯器工具、資源文件編輯工具、可擴(kuò)展標(biāo)記語言文檔(Extensible Markup Language, XML)、TXT等等,在此不將其作為對(duì)本發(fā)明的限制。另外,以上僅以Java和HTML程序?yàn)槔龑?duì)本公開中的各個(gè)步驟進(jìn)行了描述,但是本領(lǐng)域技術(shù)人員可以理解,對(duì)于其他能夠呈現(xiàn)用戶界面的程序(或代碼段)或可以形成用戶界面其他任何形式的字符集都可以適用于本發(fā)明。
[0139]注意,上述說明的各個(gè)步驟有時(shí)不一定按時(shí)間順序執(zhí)行,而是它們可以在時(shí)間上改變執(zhí)行的順序,除非后面的步驟必須使用前面的步驟得到的結(jié)果時(shí)才按先后順序執(zhí)行。
[0140]圖8是示意性地示出根據(jù)本發(fā)明的另一實(shí)施例的在用戶界面中呈現(xiàn)要更改的資源的上下文的系統(tǒng)800的方框圖。
[0141]如圖8所示,該系統(tǒng)800包括:獲得裝置801,被配置為獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及顯示裝置802,被配置為響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
[0142]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述獲得裝置801可以包括:如下中的一種:對(duì)應(yīng)關(guān)系獲得模塊8011(圖中未示出),被配置為獲得已經(jīng)記錄的通過預(yù)定方式生成的所述對(duì)應(yīng)關(guān)系;以及對(duì)應(yīng)關(guān)系生成模塊8012 (圖中未示出),被配置通過預(yù)定方式生成所述對(duì)應(yīng)關(guān)系。
[0143]在一個(gè)實(shí)施例中,該預(yù)定方式包括:用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源;利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象;分析所呈現(xiàn)的用戶界面的層次來找到與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與各個(gè)對(duì)象的對(duì)應(yīng)關(guān)系。
[0144]在一個(gè)實(shí)施例中,該系統(tǒng)800還可以包括:記錄裝置803 (圖中未示出),被配置為將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源以及與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄。在該實(shí)施例中,所述呈現(xiàn)裝置802可以被配置為:獲得與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域;在用戶界面中呈現(xiàn)所述區(qū)域。
[0145]在一個(gè)實(shí)施例中,該系統(tǒng)800還可以包括移除裝置(圖中未示出),該移除裝置可以被配置為:移除所述第一標(biāo)識(shí)符,并根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符。
[0146]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源的裝置8011可以設(shè)置所述第一標(biāo)識(shí)符為使得在利用資源文件來在用戶界面中呈現(xiàn)對(duì)象的情況下,能夠通過分析用戶界面的層次來找到所述第一標(biāo)識(shí)符的裝置。
[0147]在一個(gè)實(shí)施例中,所述第一標(biāo)識(shí)符和第二標(biāo)識(shí)符可以滿足下述關(guān)系之一:所述第一標(biāo)識(shí)符包括特殊字符部分和標(biāo)識(shí)部分,而所述第二標(biāo)識(shí)符包括所述第一標(biāo)識(shí)符中的標(biāo)識(shí)部分;所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符相同;以及所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符不同且相關(guān)聯(lián)。
[0148]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述第一標(biāo)識(shí)符可以包括如下中的一種或多種:包含標(biāo)識(shí)部分的字符串;包含特殊字符部分和標(biāo)識(shí)部分的字符串;能夠唯一地標(biāo)識(shí)所述資源的其本身的文本內(nèi)容;能夠唯一地標(biāo)識(shí)所述資源的其本身的文件名;以及能夠唯一地標(biāo)識(shí)所述資源的其本身的路徑位置信息。
[0149]所述移除裝置(未示出)還可以被配置為在根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符期間進(jìn)行如下中的至少一種:使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的屬性包含所述第二標(biāo)識(shí)符;以及使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的路徑位置信息對(duì)應(yīng)于所述第二標(biāo)識(shí)符。
[0150]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,在用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源期間,可以進(jìn)行如下中的一種或多種:在所述至少一個(gè)資源包括文本的情況下,將所述第一標(biāo)識(shí)符添加到所述至少一個(gè)資源的文本的內(nèi)容中;在所述至少一個(gè)資源包括文本的情況下,設(shè)置所述資源本身的全局唯一的文本內(nèi)容作為所述第一標(biāo)識(shí)符;在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,設(shè)置所述資源本身的全局唯一的文件名作為所述第一標(biāo)識(shí)符;以及在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,設(shè)置所述資源的本身的路徑位置信息作為所述第一標(biāo)識(shí)符。
[0151]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述第一標(biāo)識(shí)符可以包括特殊字符部分和標(biāo)識(shí)部分,而所述第二標(biāo)識(shí)符可以包括所述第一標(biāo)識(shí)符中的標(biāo)識(shí)部分。在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符可以相同。
[0152]在個(gè)實(shí)施例中,在該系統(tǒng)800中,所述資源可以包括文本、圖片、首頻和視頻中的一種或多種。
[0153]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述資源可以包括如下中的一種或多種:可翻譯文本;在畫面上包含可翻譯文本的圖片;在語音中包含可翻譯語言的音頻;以及在語音中包含可翻譯語言和/或在畫面上包含可翻譯文本的視頻。
[0154]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源的裝置8011可以包括翻譯編輯器。其中,所述第一標(biāo)識(shí)符由所述翻譯編輯器產(chǎn)生和管理并在所述翻譯編輯器中唯一地標(biāo)識(shí)各個(gè)資源。
[0155]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象的裝置8012、在用戶界面中呈現(xiàn)包括所述要更改的資源的界面的裝置8022以及在所述界面上突出顯示被分配了所述第二標(biāo)識(shí)符的對(duì)象的裝置8025之一可以包括⑶I呈現(xiàn)引擎。
[0156]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,所述分析所呈現(xiàn)的用戶界面的層次來找到與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與對(duì)象的對(duì)應(yīng)關(guān)系的裝置8013和分析所述界面的層次以找到與所述第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符的裝置8023之一可以包括⑶I分析引擎。
[0157]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,響應(yīng)于要更改所述至少一個(gè)資源之一,獲得所述要更改的資源的第一標(biāo)識(shí)符的裝置8021可以包括資源搜索引擎。
[0158]在一個(gè)實(shí)施例中,所述呈現(xiàn)裝置802還可以被配置為:分析所述區(qū)域的層次以找到被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符的對(duì)象;以及在所述區(qū)域中突出地顯示所述被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符的對(duì)象。
[0159]在一個(gè)實(shí)施例中,在該系統(tǒng)800中,還可以包括更新裝置804 (圖中未示出),其響應(yīng)于更改了所述至少一個(gè)資源之一,用另外的第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)更改后的資源,并根據(jù)所述更改后的資源與對(duì)象的對(duì)應(yīng)關(guān)系,向所述更改后的資源所對(duì)應(yīng)的對(duì)象分配與所述另外的第一標(biāo)識(shí)符相關(guān)聯(lián)的另外的第二標(biāo)識(shí)符。
[0160]如此,根據(jù)上述各個(gè)實(shí)施例,能夠在要更改資源期間在GUI中呈現(xiàn)與要更改的資源相對(duì)應(yīng)的對(duì)象,使得進(jìn)行本地化或升級(jí)等的開發(fā)人員能夠可視地看到與其要更改的資源相對(duì)應(yīng)的在GUI中要實(shí)際顯示的對(duì)象,進(jìn)一步使得其能夠了解該要更改的資源的上下文環(huán)境,從而改善更改資源的準(zhǔn)確性。
[0161]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
[0162]以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說明的各實(shí)施例的范圍和精神的情況下,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中的技術(shù)的技術(shù)改進(jìn),或者使本【技術(shù)領(lǐng)域】的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。
【權(quán)利要求】
1.一種在用戶界面中呈現(xiàn)要更改的資源的上下文的方法,包括: 獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及 響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系的步驟包括如下中的一種: 獲得已經(jīng)記錄的通過預(yù)定方式生成的所述對(duì)應(yīng)關(guān)系;以及 通過預(yù)定方式生成所述對(duì)應(yīng)關(guān)系, 其中, 所述預(yù)定方式包括: 用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源; 利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象; 分析所呈現(xiàn)的用戶界面的層次來找到與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與各個(gè)對(duì)象的對(duì)應(yīng)關(guān)系。
3.根據(jù)權(quán)利要求2所述的方法,其中, 所述方法還包括:將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源以及與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄; 所述響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域的步驟包括:獲得與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域;在用戶界面中呈現(xiàn)所述區(qū)域。
4.根據(jù)權(quán)利要求2或3所述的方法,其中,所述用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源的步驟包括如下中的一種或多種: 在所述至少一個(gè)資源包括文本的情況下,將所述第一標(biāo)識(shí)符添加到所述資源的文本的內(nèi)容中; 在所述至少一個(gè)資源包括文本的情況下,設(shè)置所述資源本身的全局唯一的文本內(nèi)容作為所述第一標(biāo)識(shí)符; 在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,設(shè)置所述資源本身的全局唯一的文件名作為所述第一標(biāo)識(shí)符;以及 在所述至少一個(gè)資源包括文本、圖片、音頻和視頻中的一種或多種的情況下,設(shè)置所述資源的本身的路徑位置信息作為所述第一標(biāo)識(shí)符。
5.根據(jù)權(quán)利要求2或3所述的方法,其中, 所述方法還包括:移除所述第一標(biāo)識(shí)符,并根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符; 所述響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域的步驟還包括:分析所述區(qū)域的層次以找到被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的第二標(biāo)識(shí)符的對(duì)象;以及在所述區(qū)域中突出地顯示被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的第二標(biāo)識(shí)符的對(duì)象。
6.根據(jù)權(quán)利要求5所述的方法,其中,所述第一標(biāo)識(shí)符和第二標(biāo)識(shí)符滿足下述關(guān)系之 所述第一標(biāo)識(shí)符包括特殊字符部分和標(biāo)識(shí)部分,而所述第二標(biāo)識(shí)符包括所述第一標(biāo)識(shí)符中的標(biāo)識(shí)部分; 所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符相同;以及 所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符不同且相關(guān)聯(lián)。
7.根據(jù)權(quán)利要求5所述的方法,其中,所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符之一包括如下中的一種或多種: 包含標(biāo)識(shí)部分的字符串; 包含特殊字符部分和標(biāo)識(shí)部分的字符串; 能夠唯一地標(biāo)識(shí)所述資源的其本身的文本內(nèi)容; 能夠唯一地標(biāo)識(shí)所述資源的其本身的文件名;以及 能夠唯一地標(biāo)識(shí)所述資源的其本身的路徑位置信息。
8.根據(jù)權(quán)利要求5所述的方法,其中,所述根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符的步驟包括如下中的至少一種: 使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的屬性包含所述第二標(biāo)識(shí)符;以及 使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的路徑位置信息對(duì)應(yīng)于所述第二標(biāo)識(shí)符。
9.根據(jù)權(quán)利要求5所述的方法,還包括: 響應(yīng)于更改了所述至少一個(gè)資源之一,用另外的第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)更改后的資源,并根據(jù)所述更改后的資源與對(duì)象的對(duì)應(yīng)關(guān)系,向所述更改后的資源所對(duì)應(yīng)的對(duì)象分配與所述另外的第一標(biāo)識(shí)符相關(guān)聯(lián)的另外的第二標(biāo)識(shí)符。
10.一種在用戶界面中呈現(xiàn)要更改的資源的上下文的系統(tǒng),包括: 獲得裝置,被配置為獲得資源文件中的至少一個(gè)資源與所述至少一個(gè)資源在用戶界面中呈現(xiàn)的對(duì)象的對(duì)應(yīng)關(guān)系;以及 顯示裝置,被配置為響應(yīng)于要更改所述至少一個(gè)資源之一,根據(jù)所述對(duì)應(yīng)關(guān)系在用戶界面中呈現(xiàn)包括與要更改的所述資源對(duì)應(yīng)的對(duì)象的區(qū)域。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中,所述獲得裝置包括如下中的一種: 對(duì)應(yīng)關(guān)系獲得模塊,被配置為獲得已經(jīng)記錄的通過預(yù)定方式生成的所述對(duì)應(yīng)關(guān)系;以及 對(duì)應(yīng)關(guān)系生成模塊,被配置通過預(yù)定方式生成所述對(duì)應(yīng)關(guān)系, 其中, 所述預(yù)定方式包括: 用第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)所述至少一個(gè)資源; 利用包含被標(biāo)識(shí)后的至少一個(gè)資源的所述資源文件來在用戶界面中呈現(xiàn)對(duì)象; 分析所呈現(xiàn)的用戶界面的層次來找到與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象,從而獲得所述至少一個(gè)資源與各個(gè)對(duì)象的對(duì)應(yīng)關(guān)系。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中, 所述系統(tǒng)還包括:記錄裝置,被配置為將第一標(biāo)識(shí)符和分配了第一標(biāo)識(shí)符的資源以及與所述第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域相關(guān)聯(lián)地記錄; 所述呈現(xiàn)裝置被配置為:獲得與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的對(duì)象將呈現(xiàn)在用戶界面中的哪一區(qū)域;在用戶界面中呈現(xiàn)所述區(qū)域。
13.根據(jù)權(quán)利要求11或12所述的系統(tǒng),其中, 所述系統(tǒng)還包括:移除裝置,被配置為移除所述第一標(biāo)識(shí)符,并根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符, 所述呈現(xiàn)裝置還被配置為:分析所述區(qū)域的層次以找到被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的第二標(biāo)識(shí)符的對(duì)象;以及在所述區(qū)域中突出地顯示被分配了與所述要更改的資源的第一標(biāo)識(shí)符相關(guān)的第二標(biāo)識(shí)符的對(duì)象。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,所述第一標(biāo)識(shí)符和第二標(biāo)識(shí)符滿足下述關(guān)系之一: 所述第一標(biāo)識(shí)符包括特殊字符部分和標(biāo)識(shí)部分,而所述第二標(biāo)識(shí)符包括所述第一標(biāo)識(shí)符中的標(biāo)識(shí)部分; 所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符相同;以及 所述第一標(biāo)識(shí)符和所述第二標(biāo)識(shí)符不同且相關(guān)聯(lián)。
15.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,所述移除裝置還被配置為在根據(jù)所述對(duì)應(yīng)關(guān)系,向所述對(duì)象分配與對(duì)應(yīng)的資源的第一標(biāo)識(shí)符相關(guān)聯(lián)的第二標(biāo)識(shí)符期間進(jìn)行如下中的至少一種: 使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的屬性包含所述第二標(biāo)識(shí)符;以及 使得所述用戶界面中的與所述至少一個(gè)資源對(duì)應(yīng)的對(duì)象的路徑位置信息對(duì)應(yīng)于所述第二標(biāo)識(shí)符。
16.根據(jù)權(quán)利要求13所述的系統(tǒng),還包括: 更新裝置,被配置為響應(yīng)于更改了所述至少一個(gè)資源之一,用另外的第一標(biāo)識(shí)符來唯一地標(biāo)識(shí)更改后的資源,并根據(jù)所述更改后的資源與對(duì)象的對(duì)應(yīng)關(guān)系,向所述更改后的資源所對(duì)應(yīng)的對(duì)象分配與所述另外的第一標(biāo)識(shí)符相關(guān)聯(lián)的另外的第二標(biāo)識(shí)符。
【文檔編號(hào)】G06F9/44GK104516727SQ201310450122
【公開日】2015年4月15日 申請(qǐng)日期:2013年9月27日 優(yōu)先權(quán)日:2013年9月27日
【發(fā)明者】盛延敏, 古楊, 高春風(fēng), 康濤, 鄭超 申請(qǐng)人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
永德县| 潜江市| 彰武县| 庄河市| 沅陵县| 宁国市| 涞源县| 苍南县| 遂宁市| 谷城县| 南澳县| 石城县| 邵东县| 进贤县| 禄劝| 康马县| 固原市| 遵义县| 庆安县| 丹巴县| 精河县| 郓城县| 普宁市| 宁明县| 错那县| 图木舒克市| 镇远县| 陆川县| 德昌县| 枣强县| 枣阳市| 贵德县| 邵阳市| 张家口市| 合江县| 林西县| 溧阳市| 九江市| 双城市| 克拉玛依市| 阿巴嘎旗|