專利名稱:準(zhǔn)備數(shù)字文檔以顯示文檔并在文檔內(nèi)導(dǎo)航的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息技術(shù)領(lǐng)域。更具體地,本發(fā)明涉及軟件環(huán)境領(lǐng)域,特別涉及導(dǎo)航器,即,用于顯示數(shù)字文 檔以及用于在這樣的數(shù)字文檔內(nèi)導(dǎo)航的計(jì)算機(jī)程序。
背景技術(shù):
一些已知的便攜式通信設(shè)備,例如但不限于符合DECT (數(shù)字增強(qiáng)無繩通訊)標(biāo) 準(zhǔn)的終端,具有有限的資源以及以下技術(shù)和使用限制 可用計(jì)算能力的水平低, RAM (隨機(jī)存取存儲(chǔ)器)存儲(chǔ)器減小, 標(biāo)準(zhǔn)內(nèi)容語(yǔ)言支持,例如WML(無線標(biāo)記語(yǔ)言),以及 快速導(dǎo)航。與具有高計(jì)算能力并且在終端中加載有本地導(dǎo)航器的終端不同,上述類型的設(shè) 備包括有限的資源,并且經(jīng)常必須使用與該設(shè)備連接到的服務(wù)器或網(wǎng)關(guān)的計(jì)算能力。在現(xiàn)有技術(shù)中,上述類型的具有有限資源的設(shè)備通常并不完全支持?jǐn)?shù)字文檔的 顯示以及這種數(shù)字文檔內(nèi)的導(dǎo)航。應(yīng)注意,符合WML語(yǔ)言的已知類型文檔是一起分組在稱作“Deck”的元素中 的頁(yè)(“卡”)的集合。通過美國(guó)專利申請(qǐng)US 2004/0133848 (Novarra),現(xiàn)有技術(shù)已知一種用于提供和
顯示內(nèi)容的系統(tǒng)和方法。該美國(guó)專利申請(qǐng)描述了一種解決方案,該解決方案在于在服務(wù) 器與平臺(tái)之間分布的導(dǎo)航器。通過PCT專利申請(qǐng)WO 2003/054733 (Nokia),現(xiàn)有技術(shù)已知一種方法,該方法 旨在擴(kuò)展XHTML語(yǔ)言的可能性以將WML語(yǔ)言的特定功能添加到該XHTML語(yǔ)言。
發(fā)明內(nèi)容
數(shù)字頁(yè)中的導(dǎo)航一方面包括頁(yè)內(nèi)的導(dǎo)航,另一方面包括頁(yè)之間的跳轉(zhuǎn)。在滾動(dòng) 操作以及與頁(yè)對(duì)象鏈接的動(dòng)作和任務(wù)之間,數(shù)字頁(yè)內(nèi)的導(dǎo)航自身被中斷。本發(fā)明的一個(gè)目的是使得可以將本地導(dǎo)航器集成在包括有限資源(具體地,在 計(jì)算能力方面)的設(shè)備內(nèi)。本發(fā)明的另一目的是盡可能使導(dǎo)航器的CPU(處理器)負(fù)載最小化并限制存儲(chǔ)器 消耗。根據(jù)操作的頻率來分發(fā)負(fù)載使得可以將導(dǎo)航器的反應(yīng)度(reactivity)最大程度地優(yōu) 化。實(shí)際上,負(fù)載越低,導(dǎo)航器反應(yīng)度越高。為此,在最一般接受的情況下,本發(fā)明涉及一種準(zhǔn)備數(shù)字文檔以顯示所述文檔 并在所述文檔內(nèi)導(dǎo)航的方法,所述顯示和導(dǎo)航操作是由計(jì)算機(jī)程序來實(shí)現(xiàn)的,所述文檔 包括多個(gè)元素和至少一頁(yè),其特征在于,所述方法包括以下步驟-在接收到文檔時(shí)預(yù)解釋數(shù)字文檔,并將所述數(shù)字文檔的元素的至少一部分編碼成可由所述計(jì)算機(jī)程序直接使用的對(duì)象,-在接收到數(shù)字文檔的頁(yè)的顯示命令時(shí)識(shí)別與該頁(yè)相關(guān)聯(lián)的任務(wù)并創(chuàng)建參考 表,所述參考表直接指向?qū)λ鲰?yè)的任務(wù)加以描述的對(duì)象,以及_顯示所述頁(yè),包括可加亮可被激活的對(duì)象和/或可滾動(dòng)所述頁(yè),然后依用戶 的請(qǐng)求執(zhí)行任務(wù)。優(yōu)選地,數(shù)字文檔的預(yù)解釋步驟以及對(duì)所述數(shù)字文檔的元素的至少一部分的編 碼包括兩個(gè)子步驟一個(gè)子步驟是格式化顯示,另一個(gè)子步驟是格式化任務(wù)。有利地,顯示格式化子步驟在于對(duì)文檔集進(jìn)行頁(yè)格式化,使得所述文檔的所 有部分都可以直接顯示,而不需要頁(yè)重新格式化。根據(jù)具體實(shí)施例,通過應(yīng)用規(guī)則來執(zhí)行數(shù)字文檔的預(yù)解釋步驟以及對(duì)所述數(shù)字 文檔的元素的至少一部分的編碼,其中根據(jù)所述規(guī)則,將對(duì)象替換成最多在存儲(chǔ)器中占 據(jù)相同空間的另一對(duì)象。根據(jù)變體,保留可顯示的對(duì)象與不可顯示的對(duì)象的疊加,而不對(duì)顯示和任務(wù)識(shí) 別功能造成任何影響。根據(jù)實(shí)施例,該方法包括對(duì)所述文檔的既無法顯示又無法被識(shí)別為任務(wù)的元 素進(jìn)行抑制的步驟,以及將相應(yīng)的存儲(chǔ)空間重置為零的步驟。這使得可以加速所述文檔 中的導(dǎo)航。根據(jù)具體變體,該方法包括對(duì)元素進(jìn)行拼接(concatenation)構(gòu)成未使用的存儲(chǔ) 區(qū)的步驟。這使得能夠釋放存儲(chǔ)器用于其他應(yīng)用。根據(jù)本發(fā)明的方法具體使得可以在處理器級(jí)平衡負(fù)載,而不增大對(duì)存儲(chǔ)器的影 響,同時(shí)確保在導(dǎo)航方面的非常好的性能。
通過以下參考附圖作為示例而提供的對(duì)本發(fā)明的實(shí)施例的描述,將更好地理解 本發(fā)明,其中·圖1表示便攜式設(shè)備,·圖2示出了根據(jù)本發(fā)明的方法,以及·圖3、4和5是示出了分別與文檔的預(yù)解釋、導(dǎo)航器的初始化以及
文檔內(nèi)的導(dǎo)航有關(guān)的方法步驟的圖。
具體實(shí)施例方式圖1所示的便攜式設(shè)備EP包括以下元件和功能-輸入/輸出外圍設(shè)備的集合顯示器、鍵盤、耳機(jī)和/或揚(yáng)聲器_處理器(未示出),-非易失性存儲(chǔ)器,包含確保設(shè)備操作的代碼和軟件數(shù)據(jù),_易失性存儲(chǔ)器(RAM),包含在時(shí)間上“可變”的數(shù)據(jù),-無線數(shù)據(jù)鏈路(在電話的情況下可以用作語(yǔ)音支持),-確保設(shè)備供電的電池。在示例實(shí)施例中,該便攜式設(shè)備是根據(jù)DECT標(biāo)準(zhǔn)的手提電話或任何種類的移
4動(dòng)設(shè)備。圖2示出了根據(jù)本發(fā)明的方法的不同步驟。該方法包括三個(gè)步驟1)預(yù)解釋(pre-interpretation)(或“預(yù)解析(preparsing) ”),2)導(dǎo)航器初始化(或“瀏覽器初始化”)3)顯示和導(dǎo)航(或“顯示和瀏覽”)從圖2中可以看出,由于執(zhí)行了該方法的步驟,處理器級(jí)的負(fù)載減小并且處理 操作的頻率增大。當(dāng)接收到文檔時(shí),執(zhí)行一次圖3所示的預(yù)解釋或“預(yù)解析”。該步驟占用很多 CPU資源,但是不會(huì)在存儲(chǔ)器級(jí)上造成超過文檔初始存儲(chǔ)的影響。當(dāng)必須顯示頁(yè)時(shí),執(zhí)行如圖4所示與導(dǎo)航器的初始化(“瀏覽器初始化”)有關(guān) 的處理。因此,根據(jù)實(shí)施例每當(dāng)頁(yè)變化時(shí)執(zhí)行該處理,而不是在頁(yè)內(nèi)導(dǎo)航期間執(zhí)行該處 理。目的是隔離與頁(yè)鏈接的任務(wù)(定時(shí)器、與鍵鏈接的任務(wù)、與動(dòng)作鏈接的對(duì)象),以便 加速執(zhí)行(當(dāng)事件發(fā)生時(shí)不需要執(zhí)行對(duì)頁(yè)的完全解析)。如圖5所示的與顯示和導(dǎo)航有關(guān)的處理(或“顯示和瀏覽”)是頁(yè)內(nèi)的導(dǎo)航處 理。由于已經(jīng)執(zhí)行了任務(wù)的分頁(yè)(pagination)和識(shí)別,所以最高頻率地使用該處理對(duì)CPU 負(fù)載影響最小,并且對(duì)用戶的響應(yīng)度非常高。該解決方案與已有解決方案的不同之處是,該解決方案分成三個(gè)步驟,以便重 新分發(fā)CPU負(fù)載,同時(shí)使導(dǎo)航器的存儲(chǔ)器影響整體上近乎為零(quasi-null)。1)預(yù)解釋(或“預(yù)解析”)當(dāng)接收到文檔時(shí),執(zhí)行該預(yù)解釋或“預(yù)解析”步驟一次。這在圖3中示出。該步驟實(shí)現(xiàn)了以下原則對(duì)每個(gè)元素進(jìn)行預(yù)解釋,并將其替換成最多占據(jù)相同存儲(chǔ)空間的對(duì)象。該原則 稱作“非溢出規(guī)則”,該名稱參照如下事實(shí)每個(gè)對(duì)象被替換成最差具有相同存儲(chǔ)器影 響的另一對(duì)象。該操作的優(yōu)點(diǎn)不是減小所需的存儲(chǔ)空間,而是對(duì)文檔進(jìn)行預(yù)解釋并編碼成可以 由便攜式設(shè)備直接使用的對(duì)象,且沒有存儲(chǔ)器消耗。該步驟包括兩個(gè)子步驟a)對(duì)顯示進(jìn)行格式化(或“顯示格式化”)與已有解決方案不同,該處理在于對(duì)整個(gè)文檔進(jìn)行頁(yè)格式化(page formatting), 使得可以直接顯示該文檔的每個(gè)部分,而無需對(duì)頁(yè)進(jìn)行重新格式化。因此,將文檔切割成可以完整顯示并且符合非溢出規(guī)則的行。在頁(yè)格式化中僅考慮可以顯示的元素。例如,在頁(yè)不包括無法顯示的對(duì)象的情況下處理前"Master crow, on a tree perched"處理后“Master crow, on” Return “a tree perched”例如,在頁(yè)包括無法顯示的對(duì)象的情況下處理前"Master crow,〈無法顯示的對(duì)象 >on a treeperched”處理后“Master crow,〈無法顯示的對(duì)象 >on” Return “atree perched”b)對(duì)任務(wù)進(jìn)行格式化(或“任務(wù)格式化”)
5
該處理在于識(shí)別對(duì)事件作出反應(yīng)的對(duì)象(快捷鍵、定時(shí)器、可以選擇的對(duì)象等) 并對(duì)這些對(duì)象進(jìn)行代碼轉(zhuǎn)換,使得可以由計(jì)算機(jī)程序來直接解釋這些對(duì)象,所述計(jì)算機(jī) 程序可以集成在諸如手持機(jī)之類的便攜式設(shè)備中。該處理將使得可以在加載頁(yè)時(shí)快速提 取要監(jiān)控的事件(導(dǎo)航器的初始化,或“瀏覽器初始化”)。示例與鍵A相關(guān)聯(lián)的跳轉(zhuǎn)的定義處理前<do type =" A” lable =” options” ><gohref =” weather_card” /></ do>處理后shortcut_opcode (IB)key_opcode (IB) Alabel_opcode options jump_opcode weather_cardend_shortcut_opcode (IB)可以注意到,這兩個(gè)操作集的特征在于保留了可以顯示的對(duì)象與無法顯示的 對(duì)象(定義任務(wù))的疊加(overlapping),而不會(huì)對(duì)顯示功能和任務(wù)的識(shí)別造成影響。圖3中示出了該預(yù)解釋步驟對(duì)例如WML類型的文檔進(jìn)行預(yù)解釋定位于第 一對(duì)象,然后確定該對(duì)象是否與任務(wù)相對(duì)應(yīng)。如果該對(duì)象確實(shí)與任務(wù)相對(duì)應(yīng),則執(zhí)行代 碼轉(zhuǎn)換子步驟。然后確定該對(duì)象是否可以顯示。如果可以顯示,則執(zhí)行頁(yè)格式化步驟。 如果該對(duì)象無法顯示并且如果該對(duì)象不與任務(wù)相對(duì)應(yīng),則抑制該對(duì)象。然后,轉(zhuǎn)到所討 論的數(shù)字文檔的下一對(duì)象,將對(duì)該下一對(duì)象執(zhí)行相同的處理操作,或者如果所處理的對(duì) 象是頁(yè)的最后一個(gè)對(duì)象,則結(jié)束該預(yù)解釋步驟。2)導(dǎo)航器初始化(或“瀏覽器初始化”)圖4所示的該處理操作在于識(shí)別與特定頁(yè)相關(guān)聯(lián)的任務(wù)。在首次加載頁(yè)時(shí)執(zhí)行 該操作,而在頁(yè)的導(dǎo)航期間不再執(zhí)行該操作。與該處理有關(guān)的存儲(chǔ)器消耗(在幾字節(jié)的量級(jí)上)是可忽略的,該操作的輸出是 參考表,所述參考表直接指向?qū)ο鄳?yīng)頁(yè)的任務(wù)加以描述的對(duì)象。圖4中示出了該導(dǎo)航器初始化步驟。由于之前的步驟,獲得預(yù)解釋的文檔。確 定該文檔是否擁有頁(yè)模型。如果是,則定位于所述模型的第一對(duì)象,而在否定的情況下 定位于要顯示的頁(yè)的第一對(duì)象。在前述兩種情況下,然后應(yīng)確定所述對(duì)象是否與“快捷 鍵”相對(duì)應(yīng)。如果該對(duì)象確實(shí)與“快捷鍵”相對(duì)應(yīng),則將保存該對(duì)象的位置,將該位置 與跟“快捷鍵”相關(guān)聯(lián)的任務(wù)參考表鏈接。如果該對(duì)象不與“快捷鍵”相對(duì)應(yīng),則確 定該對(duì)象是否是變量。如果該對(duì)象是變量,則存儲(chǔ)該對(duì)象。如果該對(duì)象不是變量,則確 定該對(duì)象是否是計(jì)數(shù)器。如果該對(duì)象是計(jì)數(shù)器,則保存該對(duì)象的位置,將該位置與跟計(jì) 數(shù)器相關(guān)聯(lián)的任務(wù)參考表鏈接。然后啟動(dòng)計(jì)數(shù)器。下一子步驟在于確定所討論的對(duì)象是否是模型或頁(yè)中的最后一個(gè)對(duì)象。然后獲 得所討論的數(shù)字文檔的下一對(duì)象,將對(duì)該下一對(duì)象執(zhí)行相同的處理操作,或者如果所處 理的對(duì)象是頁(yè)的最后一個(gè)對(duì)象,則結(jié)束該導(dǎo)航器初始化步驟,而該對(duì)象是模型中的最后 一個(gè)對(duì)象的情況除外,在這種情況下,定位于要顯示的頁(yè)的第一對(duì)象,并如上所述執(zhí)行 適當(dāng)?shù)奶幚聿僮?。通過閱讀對(duì)圖4的流程圖的描述,以上段落中提供的指示將更清楚。3)顯示和導(dǎo)航(“顯示和瀏覽”)圖5所示的該處理操作是被最頻繁調(diào)用的處理操作。由于在先前已經(jīng)執(zhí)行過占 用CPU資源最多的操作,所以該操作對(duì)用戶的響應(yīng)度是最優(yōu)的。
該操作在于-顯示可以在屏幕上顯示的N行(先前已被頁(yè)格式化),-管理導(dǎo)航加亮可以激活的對(duì)象和/或頁(yè)滾動(dòng),-在調(diào)用任務(wù)時(shí)執(zhí)行任務(wù)再次以上面l_b中闡述的示例為例,當(dāng)用戶按A鍵 時(shí),將調(diào)用導(dǎo)航器初始化過程(或“瀏覽器初始化”)以初始化頁(yè)“weather card”,然
后將調(diào)用處理操作“顯示和瀏覽”以在新頁(yè)內(nèi)重新運(yùn)行導(dǎo)航。圖5中示出了顯示和導(dǎo)航處理操作。在顯示頁(yè)之后,該處理操作的第一子步驟 與事件的檢測(cè)相對(duì)應(yīng)。一旦檢測(cè)到了事件,就確定該事件是否與“驗(yàn)證”(validate)鍵 相對(duì)應(yīng)(或是否與“驗(yàn)證”型鍵組相對(duì)應(yīng))。如果是,則檢查對(duì)象是否已被選擇,如果 確實(shí)已經(jīng)選擇了對(duì)象,則按照與所選對(duì)象相關(guān)聯(lián)的任務(wù)參考表,來執(zhí)行與該對(duì)象相關(guān)聯(lián) 的任務(wù)(跳轉(zhuǎn)、文本修改、選項(xiàng)激活、等等)。如果所述事件不與所述“驗(yàn)證”鍵相對(duì) 應(yīng),而是與“方向”型鍵相對(duì)應(yīng),則解除對(duì)當(dāng)前對(duì)象的選擇,并按照跟所選對(duì)象相關(guān)聯(lián) 的任務(wù)參考表,根據(jù)所指示的方向來選擇相鄰的對(duì)象。如果所述事件既不與“驗(yàn)證”鍵 相對(duì)應(yīng),也不與“方向”型鍵相對(duì)應(yīng),而是與任務(wù)快捷鍵所對(duì)應(yīng)的鍵相對(duì)應(yīng),則按照與 快捷鍵相關(guān)聯(lián)的任務(wù)參考表,繼續(xù)執(zhí)行所述任務(wù)(跳轉(zhuǎn)、文本修改、選項(xiàng)激活等)。最 后,所述事件可能不鏈接至上述鍵之一,而是與計(jì)數(shù)器的期滿相對(duì)應(yīng)。在這種情況下, 按照跟計(jì)數(shù)器相關(guān)聯(lián)的任務(wù)參考表,來執(zhí)行與所述計(jì)數(shù)器的期滿相鏈接的任務(wù)(跳轉(zhuǎn)、 文本修改、選項(xiàng)激活等)。在所有情況下,以更新顯示、然后等待檢測(cè)到新事件來結(jié)束該 處理。通過閱讀對(duì)圖5的流程圖的描述,以上段落中提供的指示將更清楚。上文中作為示例描述了本發(fā)明。將理解,在不脫離本發(fā)明的范圍的前提下,本 領(lǐng)域技術(shù)人員可以作出本發(fā)明的變體。
權(quán)利要求
1.一種在移動(dòng)設(shè)備中準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所述文檔內(nèi)導(dǎo)航的方法,所 述顯示和導(dǎo)航操作是由計(jì)算機(jī)程序來實(shí)現(xiàn)的,所述文檔包括多個(gè)元素以及至少一頁(yè),其 特征在于,該方法包括以下步驟-在接收到文檔時(shí)預(yù)解釋數(shù)字文檔,并將所述數(shù)字文檔的至少一部分元素編碼成 可由所述計(jì)算機(jī)程序直接使用的對(duì)象,-在接收到數(shù)字文檔的頁(yè)的顯示命令時(shí)識(shí)別與該頁(yè)相關(guān)聯(lián)的任務(wù)并創(chuàng)建參考表, 所述參考表直接指向?qū)λ鲰?yè)的任務(wù)加以描述的對(duì)象,以及-顯示所述頁(yè),包括可加亮可被激活的對(duì)象和/或可滾動(dòng)所述頁(yè),然后依用戶的請(qǐng) 求執(zhí)行任務(wù)。
2.根據(jù)權(quán)利要求1所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所述文檔內(nèi)導(dǎo)航的方法, 其特征在于,數(shù)字文檔的預(yù)解釋步驟以及對(duì)所述數(shù)字文檔的至少一部分元素的編碼包括 兩個(gè)子步驟一個(gè)子步驟是格式化顯示,另一個(gè)子步驟是格式化任務(wù)。
3.根據(jù)權(quán)利要求2所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所述文檔內(nèi)導(dǎo)航的方法, 其特征在于,格式化顯示子步驟在于對(duì)整個(gè)文檔進(jìn)行頁(yè)格式化,使得所述文檔的每個(gè) 部分都能夠在不需要格式化的情況下直接顯示。
4.根據(jù)權(quán)利要求1、2或3所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所述文檔內(nèi)導(dǎo)航 的方法,其特征在于,通過應(yīng)用規(guī)則來執(zhí)行數(shù)字文檔的預(yù)解釋步驟以及對(duì)所述數(shù)字文檔 的至少一部分元素的編碼,其中根據(jù)所述規(guī)則,將對(duì)象替換成最多在存儲(chǔ)器中占據(jù)相同 空間的另一對(duì)象。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)權(quán)利要求所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所 述文檔內(nèi)導(dǎo)航的方法,其特征在于,保留可顯示的對(duì)象與無法顯示的對(duì)象的疊加,而不 對(duì)顯示和任務(wù)識(shí)別功能造成任何影響。
6.根據(jù)權(quán)利要求1至5中任一項(xiàng)權(quán)利要求所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所 述文檔內(nèi)導(dǎo)航的方法,其特征在于,該方法包括對(duì)來自所述文檔的無法顯示或不能被 識(shí)別為任務(wù)的元素進(jìn)行抑制的步驟,以及將相應(yīng)的存儲(chǔ)空間重置為零的步驟。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)權(quán)利要求所述的準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所 述文檔內(nèi)導(dǎo)航的方法,其特征在于,該方法包括對(duì)元素進(jìn)行拼接構(gòu)成未使用的存儲(chǔ)區(qū)的 步驟。
全文摘要
本發(fā)明涉及一種在移動(dòng)設(shè)備中準(zhǔn)備數(shù)字文檔以顯示所述文檔并在所述文檔內(nèi)導(dǎo)航的方法,所述顯示和導(dǎo)航操作是由計(jì)算機(jī)程序來實(shí)現(xiàn)的,所述文檔包括多個(gè)元素以及至少一頁(yè),其特征在于,該方法包括以下步驟在接收到文檔時(shí)預(yù)解釋數(shù)字文檔,并將所述數(shù)字文檔的至少一部分元素編碼成可由所述計(jì)算機(jī)程序直接使用的對(duì)象;在接收到數(shù)字文檔的頁(yè)的顯示命令時(shí)識(shí)別與該頁(yè)相關(guān)聯(lián)的任務(wù)并創(chuàng)建參考表,所述參考表直接指向?qū)λ鲰?yè)的任務(wù)加以描述的對(duì)象;以及顯示所述頁(yè),包括可加亮可被激活的對(duì)象和/或可滾動(dòng)所述頁(yè),然后依用戶的請(qǐng)求執(zhí)行任務(wù)。
文檔編號(hào)G06F17/30GK102016851SQ200980122678
公開日2011年4月13日 申請(qǐng)日期2009年6月18日 優(yōu)先權(quán)日2008年6月18日
發(fā)明者埃斯特爾·布雷德辛斯基, 約里斯·魯塞爾 申請(qǐng)人:湯姆森許可貿(mào)易公司