亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

在文檔中查找搜索串并在移動通信設(shè)備上查看的方法

文檔序號:6651234閱讀:158來源:國知局
專利名稱:在文檔中查找搜索串并在移動通信設(shè)備上查看的方法
技術(shù)領(lǐng)域
本發(fā)明通常涉及在移動通信設(shè)備上顯示內(nèi)容,更具體地,涉及一種用于在文檔附件中查找搜索串(search string)并且在移動通信設(shè)備上查看相應部分而不需要尋回(retrieve)整個文檔內(nèi)容的方法。
背景技術(shù)
由于近來設(shè)備和移動基礎(chǔ)設(shè)施所支持的服務和特點的數(shù)目增加,移動通信設(shè)備對于商業(yè)和個人應用正變得越來越普及。手持移動通信設(shè)備,有時稱為移動站,本質(zhì)上是具有無線能力的便攜式計算機,并且具有各種形式。它們包括個人數(shù)字助理(PDA)、蜂窩電話和智能電話。當它們的體積減小便于攜帶的同時,這類設(shè)備的帶寬和處理能力的限制對諸如文字處理文檔、表格和圖像之類的文檔的下載和查看帶來了挑戰(zhàn)。
在Milic-Frayling N et al“SmartView andSearchMobilproviding overview and detail in handheldbrowsing”Mobile and Ubiquitous Information Access.Mobile HCI2003 International Workshop.Revised and Invited Papers(Lecture 20 Notes in Computer Science Vol.2954)Springer-VerlagBerlin,Germany,8 August 2003(2003-08-08),pages 158-171,XP002318043 ISBN3-540-21003-2www.springerlink.com/index/H8K7 GF5F6EXK19KR.pdf2005-02-16檢索]中說明了一種安排實際大小的網(wǎng)頁的格式以在小屏幕便攜式設(shè)備上查看的方法。
使用例如文字處理器、電子制表程序、金融軟件和表示軟件的各種計算機程序來制作電子文檔。通常在這種程序中提供“查找”命令用于在文檔中快速定位感興趣的搜索串,而不需要用戶讀取整個文檔。
將整個文檔下載到移動通信設(shè)備要消耗大量的帶寬,尤其是當文檔非常大時。此外,即使在設(shè)備上查看所下載文檔的一部分也要消耗該設(shè)備相當大的CPU/存儲器/電池等資源。
例如,如果用戶只希望查看400頁文檔中間節(jié)中的一段,必須將包含該段的一些默認屬性的節(jié)或者甚至是整個文檔發(fā)送到移動通信設(shè)備。然而,用戶只在移動通信設(shè)備上查看文檔的很小一部分。
因此,本領(lǐng)域所公知的是提供一種附件服務器將點播內(nèi)容發(fā)送到移動通信設(shè)備的用戶,以便使帶寬以及設(shè)備的CPU/存儲器使用最小化。然后使用附件閱讀器在設(shè)備上查看該內(nèi)容。
在WO01/65354說明了這樣一種系統(tǒng)的示例,其中根據(jù)請求移動設(shè)備的特征利用多個頁面來產(chǎn)生文檔的文檔對象模型(DOM),由用戶請求將文檔的這些頁面下載到移動設(shè)備。
當前,如果附件內(nèi)容已經(jīng)存在于設(shè)備上(即已經(jīng)被尋回(retrieve)/下載到設(shè)備中),移動通信設(shè)備上在附件閱讀器中的“查找”命令只能查找用戶輸入的搜索詞語。
如上所述,一些文檔附件可以輕易地在幾百頁的范圍內(nèi)或包含大量文本信息。為了使用戶能夠針對這么大的文檔附件來查找搜索詞語的所有出現(xiàn),必須按照隊列形式從服務器將所有內(nèi)容尋回到設(shè)備。這是非常耗時以及及其消耗帶寬和設(shè)備CPU/存儲器的操作。

發(fā)明內(nèi)容
在此提出一種對于必須將文檔附件的整個內(nèi)容尋回到移動通信設(shè)備以便在文檔中查找搜索串的所有出現(xiàn)的解決方法。具體地,提供一種服務器查找功能,用于在附件服務器上發(fā)起搜索并且只將包含搜索詞語的適當部分返回到設(shè)備??梢詫⑷我饴赃^(即非尋回文檔內(nèi)容)可視地呈現(xiàn)給用戶用于以后的尋回。根據(jù)當前服務器查找功能的非連續(xù)訪問使得帶寬使用最小化并提供更好的點播附件查看體驗。
在此提出的服務器查找特點是設(shè)備和服務器側(cè)功能,允許用戶將針對文檔附件的搜索詞語輸入到他/她的移動通信設(shè)備中。如果在設(shè)備上沒有(或不再有)詞語出現(xiàn),則設(shè)備提示用戶發(fā)起服務器側(cè)搜索。如果用戶接受,則服務器搜索文檔附件并且將包含搜索詞語的第一文本節(jié)返回到設(shè)備,用于由用戶查看。然后可以重復該方法直到服務器查找特點報告在服務器上再沒有“找到(hit)”。
特別地,在一個方案中,提供一種用于在存儲在服務器上的文檔中定位搜索串并且在移動設(shè)備上顯示搜索串的方法,包括在表示所述文檔映射的服務器中構(gòu)造并高速緩存(caching)圖形結(jié)構(gòu),其中所述圖形結(jié)構(gòu)將所述文檔標記頁碼(paginate)為用于顯示在所述移動設(shè)備上的單獨塊;用戶發(fā)起將所述文檔的連續(xù)塊以及所述單獨塊的總數(shù)從所述服務器發(fā)送到所述移動設(shè)備,用于由所述移動設(shè)備顯示;用戶發(fā)起在所述移動設(shè)備中的至少一個所述連續(xù)塊的搜索,然后在沒有定位所述搜索串并且沒有搜索所述單獨塊的總數(shù)的情況下發(fā)起在所述服務器中對剩余塊進行進一步的搜索;在剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的第一塊;以及在所述連續(xù)塊或剩余塊任意之一中定位了所述搜索串的情況下在所述移動設(shè)備上加亮所述塊中的所述搜索串,以及否則,在所述移動設(shè)備上提供表示沒有找到匹配的提示。
在另一個方案中,提供一種可在服務器中實施的、用于在存儲在服務器上的文檔中定位搜索串的方法,包括在表示文檔映射的所述服務器中構(gòu)造并高速緩存圖形結(jié)構(gòu),其中所述圖形結(jié)構(gòu)將所述文檔標記頁碼為單獨塊;發(fā)送所述文檔的連續(xù)塊以及所述單獨塊的總數(shù);在所述服務器中針對搜索串搜索剩余塊;以及在所述剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的每一個所述剩余塊。
在另一個方案中,提供一種可在移動設(shè)備上實施的、用于在存儲在服務器上的文檔中定位搜索串的方法,包括接收并顯示文檔的連續(xù)塊;針對用戶輸入的搜索串至少搜索所述連續(xù)塊的一個并且在定位了所述搜索串的情況下加亮所述搜索串;在沒有定位所述搜索串的情況下提示所述用戶發(fā)起進一步搜索在所述服務器中的剩余的遠程存儲的塊;以及否則,在所述移動設(shè)備提供表示沒有找到匹配的提示。
在另一個方案中,提供一種能夠在存儲在服務器上的文檔中定位搜索串的服務器,包括構(gòu)造和高速緩存裝置,用于在表示文檔映射的所述服務器中構(gòu)造并高速緩存圖形結(jié)構(gòu),其中所述圖形結(jié)構(gòu)將所述文檔標記頁碼為單獨塊;發(fā)送裝置,用于發(fā)送所述文檔的連續(xù)塊以及所述單獨塊的總數(shù);搜索裝置,用于在所述服務器中針對搜索串搜索剩余塊;以及發(fā)送裝置,用于在所述剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的每一個所述剩余塊。
在另一個方案中,提供一種能夠在存儲在服務器中的文檔中定位搜索串的移動設(shè)備,包括接收和顯示裝置,用于接收并顯示文檔的連續(xù)塊;搜索裝置,用于針對用戶輸入的搜索串至少搜索所述連續(xù)塊的一個并且在定位了所述搜索串的情況下加亮所述搜索串;提示裝置,在沒有定位所述搜索串的情況下提示所述用戶發(fā)起進一步搜索在所述服務器中的剩余的遠程存儲的塊;以及提供裝置,用于在沒有找到匹配的情況下在所述移動設(shè)備提供表示沒有匹配的提示。
其它方案和優(yōu)點對于本領(lǐng)域的技術(shù)人員是顯而易見的,參考附圖,通過下面更完整地的說明和權(quán)利要求,在結(jié)構(gòu)和操作的細節(jié)可以看出這些優(yōu)點。


下面參考附圖詳細給出優(yōu)選實施例的詳細說明,圖中圖1是可以實現(xiàn)優(yōu)選實施例的網(wǎng)絡環(huán)境的方框圖;圖2是示出了在優(yōu)選實施例中所使用的文檔對象模型(DOM)的基本結(jié)構(gòu)的樹形圖;圖3示出了圖2中的DOM結(jié)構(gòu)的頂層;圖4示出了文字處理文檔的典型DOM結(jié)構(gòu);圖5示出了表格文檔的典型DOM結(jié)構(gòu);圖6示出了包含圖像子文檔的文字處理文檔的典型DOM結(jié)構(gòu);圖7是示出了文檔DOM結(jié)構(gòu)組成和頁碼標記的流程圖;圖8A和8B示出了在移動通信設(shè)備上用于調(diào)用服務器查找命令的圖形用戶界面;圖9示出了在圖形用戶界面上表示沒有找到搜索串的消息;
圖10是示出了根據(jù)優(yōu)選實施例在執(zhí)行用于發(fā)起服務器查找命令的設(shè)備一側(cè)請求中的步驟的流程圖;以及圖11是示出了根據(jù)優(yōu)選實施例在服務器中執(zhí)行查找命令的步驟的流程圖。
具體實施例方式
參考圖1,示出了其中可以實現(xiàn)優(yōu)選實施例的網(wǎng)絡環(huán)境10。網(wǎng)絡環(huán)境10包括移動設(shè)備12,移動設(shè)備12經(jīng)由無線網(wǎng)絡14與用于將文檔附件下載到移動設(shè)備12的服務器28進行通信。盡管為了演示只示出了一個服務器28,本領(lǐng)域的技術(shù)人員可以理解,網(wǎng)絡環(huán)境10能夠具有許多這樣的服務器,用作主網(wǎng)站或圖形下載站點,提供對例如JPEG、TIFF、BMP、PNG、SGI、MP4、MOV、GIF、SVG等圖形文件的訪問。本領(lǐng)域的技術(shù)人員可以理解到,無線網(wǎng)絡14包括GSM/GPRS、CDPD、TDMA、iDENMobitex、DataTAC網(wǎng)絡或例如EDGE或UMTS的未來網(wǎng)絡以及例如藍牙和802.11變體的寬帶網(wǎng)絡。
與固定服務相連的連接要求特別的考慮,并且要求例如通過網(wǎng)絡接入點(NAP)16的授權(quán)的特別許可。對于例如Web訪問的一般服務,提供代理-網(wǎng)關(guān)或網(wǎng)絡地址解析器(NAT)18,以便網(wǎng)絡運營商可以控制訪問并且對訪問收費。針對大量無線移動設(shè)備,NAT18能夠管理提供有限的公共因特網(wǎng)地址。由代理-網(wǎng)關(guān)或NAT18所提供的解決方法通常包括復雜的基礎(chǔ)設(shè)施,并因此可以由提供例如WAP網(wǎng)關(guān)、WAP代理網(wǎng)關(guān)解決方法、多媒體消息服務(MMS)和因特網(wǎng)多媒體服務(IMS)的增值服務提供商(VASP)來管理。
專用內(nèi)聯(lián)網(wǎng)服務26要求相關(guān)的專用內(nèi)聯(lián)網(wǎng)代理網(wǎng)關(guān)24,用于訪問服務器28上的內(nèi)容。這種專用服務包括對企業(yè)郵件系統(tǒng)的WML訪問、對CRM數(shù)據(jù)庫的HTML訪問、或者利用鏈接和嵌入的URL隨格式化數(shù)據(jù)發(fā)送信息的任意其它服務。如圖所示,與經(jīng)由因特網(wǎng)20進行連接相對,專用服務26可以直接地與無線網(wǎng)絡14相連接。
為了說明優(yōu)選實施例,對于將顯示在移動設(shè)備12上的文件附件,整篇文檔指的是文檔對象模型(DOM)的結(jié)構(gòu)。
在優(yōu)選實施例中,針對特殊的文檔類型,附件服務器28使用文件分析蒸餾器(file-parsing distiller)來構(gòu)造存儲器內(nèi)的文檔對象模型(DOM),表示該文檔類型的附件。文檔DOM結(jié)構(gòu)被存儲在服務器28的高速緩存存儲器中,并且能夠雙向迭代。
如圖2所示,基于圖形的文檔DOM結(jié)構(gòu)包括節(jié)點和葉。在圖中,節(jié)點用作葉和節(jié)點的雙親,而葉是分支的終點。每一個節(jié)點和葉可以具有一組屬性來限定其自身的特性。例如,段落節(jié)點可以包含限定其排列、格式、文檔TOC的入口等的屬性。此外,每一個節(jié)點和葉具有稱為DOM ID的唯一標識符,來在文檔DOM結(jié)構(gòu)中標識其自身。
文檔DOM結(jié)構(gòu)被劃分為三部分頂層、構(gòu)件(component)和引用。頂層作為文檔根結(jié)構(gòu),而在構(gòu)件中構(gòu)造主文檔以及引用表示對于內(nèi)部或外部子文檔部分的文檔引用。下面的幾段詳細說明每一個部分。
稱為“文檔”的文檔DOM結(jié)構(gòu)根節(jié)點包含多個稱為“內(nèi)容”的子節(jié)點,“內(nèi)容”表示文檔內(nèi)容的不同方面。每一個“內(nèi)容”節(jié)點包含用于存儲各種文檔全局屬性的一個或多個“容器”。“容器”節(jié)點的子節(jié)點是存儲了文檔結(jié)構(gòu)和導航信息的構(gòu)件。當附件服務器20第一次針對附件文件構(gòu)造DOM結(jié)構(gòu)時,如圖3所示,頂層結(jié)構(gòu)是一個單一的父-子鏈。
由附件服務器28定義了三種構(gòu)件文本構(gòu)件、表格構(gòu)件和圖像構(gòu)件,在文檔中分別表示文本、表格和圖像。下面詳細說明文本和表格構(gòu)件,并且圖像構(gòu)件結(jié)構(gòu)是相同的。
構(gòu)件包含層結(jié)構(gòu)的命令節(jié)點。每一個命令表示物理實體、特性或文檔中定義的引用。對于文本構(gòu)件,物理實體命令是頁、節(jié)、段落、文本段、注釋、腳注和尾注命令,這些命令按照名稱來定義包含在文檔中的相應實體。文本構(gòu)件的特性命令是字體、文本顏色、文本背景色、超鏈接開始/結(jié)束和書簽命令。文本構(gòu)件只有一個引用命令,稱為文本引用命令,用于引用在文檔的主體中定義的子文檔。通常,文本構(gòu)件的子節(jié)點是依次包含一組段落命令節(jié)點的頁或節(jié)命令節(jié)點。段落命令包含針對剩余命令類型的一個或多個節(jié)點。
使用下面的樣本文本文檔,在圖4中示出了相應的文檔DOM。

如圖4所示,作為文本構(gòu)件的子節(jié)點的節(jié)命令包含兩個段落命令。第一段落命令包含一個文本段命令,并且添加該段落的文本內(nèi)容,作為文本段命令的屬性。由于段落中的文本特性是非常豐富的,第二段落命令具有相對更復雜的結(jié)構(gòu)。當每次文本特性(字體、文本顏色等)改變時,創(chuàng)建對應的文本特性命令,并且將改變值作為一個屬性添加到該命令中。隨后的文本段命令記錄了具有作為屬性的相同文本特性的文本。隨著文檔結(jié)構(gòu)變得更豐富和更復雜,創(chuàng)建更多相應類型的命令,并且將文檔特性作為屬性添加到這些命令中。
表格構(gòu)件具有與文本構(gòu)件相同的三種命令,但是命令的名稱不同。圖5中示出了對于樣本表格文檔的文檔DOM結(jié)構(gòu)

如圖5所示,表格構(gòu)件具有表格、表格行和表格單元的物理實體類型的命令,其中表格單元命令包含對于文本構(gòu)件所有可用的命令。在上述示例中,表格命令的第一個子表格行命令具有由0值定義的屬性“索引”。這表示所指的表格行是表格中定義的第一個。圖5中最左邊的表格單元命令的屬性具有相同的含義。
文檔有時包括子文檔,例如圖像、表格、文本框等。在此提出的DOM結(jié)構(gòu)使用引用命令來指向這種子文檔的圖形。因此,對于下面的樣本文檔,附件服務器28產(chǎn)生如圖6所示的DOM結(jié)構(gòu)

除了二個引用命令的屬性外,圖6所示的結(jié)構(gòu)與圖4和圖5討論的結(jié)構(gòu)是相同的。附件服務器28在“樣本三”中構(gòu)造了一個圖像,作為分離的圖像構(gòu)件,它包含在其自己的DOM分級中的全部的圖像數(shù)據(jù)。在主文檔的DOM結(jié)構(gòu)中,這二個引用命令的“Ref”屬性的值指向圖像構(gòu)件,如虛線所示,從而DOM結(jié)構(gòu)與文檔的所有部分連接在一起。
在描述了用于實現(xiàn)實施例的文檔DOM結(jié)構(gòu)以后,來詳細說明也用于實現(xiàn)實施例的文檔DOM結(jié)構(gòu)構(gòu)造和頁碼標記。
頁碼標記功能是客戶機和服務器側(cè)的操作。圖7示出了處理步驟,從其中可以注意到,針對文檔DOM高速緩存存儲器,服務器28在存儲器中使用映射,并且對于映射的密鑰的文檔ID。最初,當移動通信設(shè)備12的用戶向服務器28發(fā)送請求要查看文檔時,設(shè)備12發(fā)送兩個屬性和來自服務器的響應所需的字節(jié)數(shù)目(RequireSize)(例如3K字節(jié))。這兩個屬性是設(shè)備是否是彩色或單色的設(shè)備,以及設(shè)備在象素上的屏幕尺寸(寬×高×顏色深度)。也可以將另一個關(guān)于設(shè)備12的信息發(fā)送到服務器28(例如存儲器尺寸)。在服務器28接收到文檔查看請求之后,它發(fā)起頁碼標記過程(步驟30),并且初始化變量Pageindex和PageSize。
圖7中提出了下面的詞語和變量。
在服務器28中定義了Pageindex變量并且由服務器用于記錄由服務器標記頁碼的當前頁面索引。最初將頁面索引設(shè)置為0,表示“頁面1”。
PageSize是在服務器28中定義的變量并且由服務器用于記錄正在標價頁碼的頁面的當前尺寸,并且當標記新頁面頁碼時重新設(shè)置為0。
超鏈接映射是在服務器28中定義的變量,是文檔DOM結(jié)構(gòu)中由超鏈接節(jié)點類型元素組成的容器。容器中對于每一個元素的密鑰(ID)是超鏈接目標串。
書簽映射是在服務器28中定義的變量,是文檔DOM結(jié)構(gòu)中由書簽的當前頁面索引(Pageindex值)類型元素組成的容器。容器中對于每一個元素的密鑰(ID)是書簽串。
服務器過程根據(jù)文檔內(nèi)容來構(gòu)造文檔ID(步驟32)并且使用ID來檢查文檔DOM高速緩存(步驟33),以便確定是否構(gòu)造了該文檔的文檔DOM結(jié)構(gòu)。如果在高速緩存中不存在文檔DOM結(jié)構(gòu),服務器28針對該文檔構(gòu)建DOM結(jié)構(gòu)(步驟34)并且將其添加到高速緩存中(步驟35)。
為了構(gòu)造文檔ID,以讀取和二進制模式打開原始文檔文件。服務器28產(chǎn)生MD5Context結(jié)構(gòu)、從文件中利用原始二進制數(shù)據(jù)逐字節(jié)地雜湊(hash)MD5 context結(jié)構(gòu)、并且最終確定MD5 context結(jié)構(gòu)并且針對文件尋回16字節(jié)密鑰。MD5 context結(jié)構(gòu)具有按照C++語言句法的下面結(jié)構(gòu)typedeff struct{unsigned long adwState[4];/* state(ABCD)*/unsigned long adwCount[2];/* number of bits,modulo 26^64(lsbfirs)*/15unsigned char abyBuffer[64];/*input buffer*/}tMD5_CTX;存儲文檔DOM結(jié)構(gòu)要求大量的存儲器,并因此增加了整體硬件使用費用。另一方面,相比于文檔密鑰構(gòu)造操作,針對文檔來構(gòu)建DOM結(jié)構(gòu)是及其耗費時間和CPU強度的,尤其是對于較大的文檔。因為對于文檔操作,處理時間比硬件使用費用更為關(guān)鍵,存儲文檔DOM是優(yōu)選實施例所采用的方法,而不是每一次當服務器接收到查看請求時為文檔構(gòu)建DOM文檔結(jié)構(gòu)并在將響應發(fā)送回客戶機設(shè)備12之后丟棄該結(jié)構(gòu)。
當已經(jīng)構(gòu)建了文檔DOM結(jié)構(gòu)并將其存儲在高度緩存中時,服務器28確定在根節(jié)點是否已經(jīng)設(shè)置了頁面標記(步驟36)。如果沒有,服務器28遍歷DOM結(jié)構(gòu)(步驟38、39、40和41)并且根據(jù)設(shè)備12所提供的字節(jié)數(shù)目(RequireSize)來計算DOM結(jié)構(gòu)中每一個節(jié)點的輸出尺寸(PageSize)。服務器增加Pageindex(步驟42),將其作為屬性添加到每一個節(jié)點,以便標記每一個頁面的開始,并且將每一個節(jié)點作為屬性、并且表示PageIndex的串作為屬性名稱添加到根節(jié)點(步驟43)。接著該標記頁碼功能,附件服務器28根據(jù)產(chǎn)生請求的客戶機將文檔逐頁地發(fā)送到請求移動設(shè)備12(步驟44)。
頁面標記屬性名稱與設(shè)備信息相關(guān)并且要求由設(shè)備12所提供的響應尺寸(RequireSize),以使服務器通過文檔DOM結(jié)構(gòu)來標記頁碼并且根據(jù)設(shè)備能力產(chǎn)生響應。例如,如果該設(shè)備是單色類的,在服務器標記頁碼和響應產(chǎn)生操作期間可以忽略包含在DOM結(jié)構(gòu)中的色彩信息,并因此優(yōu)化了無線帶寬的使用。
因為對于存儲器映射的密鑰是文檔ID,用于計算文檔ID(步驟32)的算法必須確保密鑰的唯一性。根據(jù)最佳模式,如上所述,在服務器28中所使用的算法是由Computer Science and RSA Data Security,Inc.的MIT實驗室的Ronald L.Rivest教授所發(fā)明的MD5消息加密算法。存在可以使用的多種其它的散列選項。然而根據(jù)要由服務器28處理的不同文檔內(nèi)容的廣泛范圍,MD5是最有效并且可靠的一個。
考慮用戶請求查看由200頁文本內(nèi)容組成的文檔附件的示例。服務器28從設(shè)備12接收到最初的轉(zhuǎn)換文檔附件的轉(zhuǎn)換請求并且響應之為該文檔內(nèi)容構(gòu)造文檔對象模型(DOM)。則服務器28將內(nèi)容的第一塊(即頁)返回給該設(shè)備。服務器還將塊總數(shù)的表示返回給客戶機(例如40塊或在文檔DOM結(jié)構(gòu)中可視的頁面)。在本申請中,“塊”可以包括多達3000字節(jié)的數(shù)據(jù),實際文本的一頁根據(jù)字體、格式、顏色或文檔內(nèi)容而更多或更少。然而,為了便于說明,可以互換地使用術(shù)語“頁”和“塊”。
當從服務器28接收到初始文檔內(nèi)容(即數(shù)據(jù)的第一塊)時,設(shè)備12解析并顯示該內(nèi)容(圖10中步驟45)。眾所周知,用戶可以在附件閱讀器上調(diào)用“查找”命令,響應之,提示用戶輸入字母數(shù)字搜索詞(步驟47)。本申請的“服務器查找”命令與傳統(tǒng)的“查找”和在設(shè)備12的附件閱讀器中查找的“查找文本”命令相鏈接。圖8A示出了在移動設(shè)備12上的圖形用戶界面,該界面用于輸入搜索串來搜索要在設(shè)備上查看的文檔附件。在輸入搜索詞(步驟49)之后,附件閱讀器(即客戶機)在設(shè)備上搜索內(nèi)容的第一塊。
如果找到匹配(即在步驟51處為“是”),通過將指針放置于匹配的字母數(shù)字文本段或文字的第一字母的頂部,更新客戶機屏幕(步驟53)來以便反映找到搜索詞的位置,這些將參考圖9更詳細地進行說明。為了繼續(xù)搜索駐留在客戶機設(shè)備12上的初始返回文檔內(nèi)容(在步驟55處為“是”),用戶按照重復方式來調(diào)用“查找”命令(步驟57)。
對于已經(jīng)駐留在設(shè)備12上的初始尋回內(nèi)容中的每一個匹配,如上所述,客戶機可視地更新顯示來反映在文檔內(nèi)容中遇到搜索詞的位置。
如果在客戶機設(shè)備12上的文檔內(nèi)容中再沒有遇到匹配對于“查找”或“查找文本”命令的匹配(即在步驟51處為“否”),顯示一個消息,通知用戶在駐留設(shè)備的文檔的該章節(jié)中沒有找到搜索的文本。如圖8B所示,該消息提示用戶針對請求文本串啟動服務器側(cè)的搜索。
如果用戶選擇“是”,則發(fā)起對沒有被設(shè)備12尋回的附件服務器28上的剩余文檔內(nèi)容的搜索(即在步驟59處為“是”)。特別地,客戶機設(shè)備12將“服務器查找”命令發(fā)送到服務器28,該命令包括要搜索的串和要搜索的塊索引范圍(步驟61)。例如圖8A,客戶機向服務器發(fā)出“服務器查找”命令以及搜索詞“注釋”和例如“2-40”的塊索引范圍。因為開1已經(jīng)駐留在設(shè)備12上,塊索引不包含塊1。
然后針對任意的包括搜索詞“注釋”的文檔內(nèi)容,服務器28從塊2到40搜索DOM。
如果附件服務器28遇到與輸入搜索串的匹配的詞(即在步驟63處為“是”),其將附件章節(jié)以及找到匹配的位置的塊索引返回給客戶機設(shè)備12的附件閱讀器(例如如果下一個匹配在塊20中,則將該塊內(nèi)容以及塊索引20返回給客戶機)(步驟55)。然后客戶機12解析并顯示該內(nèi)容(即塊20的內(nèi)容)并且給用戶加亮匹配搜索的位置。此外,通過在塊1-20的內(nèi)容之間插入可視的“略過的內(nèi)容”的指示欄,可視地告知用戶塊2到19的內(nèi)容駐留在服務器28上(步驟67)。如下面將詳細說明的,通過加亮在尋回內(nèi)容中找到的搜索串的第一個字,在設(shè)備12上按照傳統(tǒng)的方式示出了該匹配(步驟53)。
如果在內(nèi)容仍保留在服務器28上時通過選擇傳統(tǒng)的“查找文本”命令,用戶繼續(xù)搜索(步驟57),則如上所述,顯示在塊20的內(nèi)容中任意的隨后的匹配(步驟53)。當在塊20中再沒有遇到匹配時,則再次提示用戶如果希望,執(zhí)行服務器查找操作。
再次發(fā)出“服務器查找”命令以及搜索詞(步驟61),然而因為客戶機已知已經(jīng)搜索了塊1到20,這一次請求的塊索引是21到40。如果(例如在塊39中)找到了其它的匹配,則塊39的內(nèi)容和塊索引39被返回給客戶機(步驟65)用于解析和顯示。再次將“略過的內(nèi)容”可視的指示欄插入到塊20和塊39的內(nèi)容之間(步驟67),來向用戶表示該內(nèi)容仍駐留在服務器28上,沒有尋回到設(shè)備12。
可以重復地執(zhí)行服務器側(cè)的搜索,直到已經(jīng)將具有與搜索串相匹配的匹配物的所有章節(jié)下載到設(shè)備12。在執(zhí)行最后的“服務器查找”命令時,服務器28搜索塊40的DOM內(nèi)容。在這種情況中在剩余的塊中針對搜索詞再沒有找到匹配。當出現(xiàn)這種情況時,如圖9所示,給用戶呈現(xiàn)“到達章節(jié)結(jié)尾”對話框(步驟69)。如上所述,通過加亮在尋回內(nèi)容中找到的搜索串的第一個字,來在設(shè)備12上顯示匹配。這在圖9中示出了(其中搜索串是“注釋”并且加亮了第一字母“c”)。
總而言之,為了使用上述的示例,向設(shè)備尋回整個40塊的內(nèi)容用于解析和顯示來實現(xiàn)相同結(jié)果相對的,“服務器查找”操作允許客戶機搜索200頁的文檔而只尋回找到匹配的內(nèi)容塊,用于解析和顯示(例如塊1、20和39)。因此對于文檔搜索,通過只將相關(guān)的塊或章節(jié)返回給設(shè)備12用于用戶查看,“服務器查找”命令大大地優(yōu)化了帶寬、設(shè)備存儲使用和整個響應時間。
現(xiàn)在轉(zhuǎn)向圖11所示的服務器側(cè)的處理,當附件服務器28接收到針對附件的服務器查找請求(步驟71)時,首先提取要搜索的文本樣式(步驟73)以及各種搜索選項,即區(qū)分大小寫、向前或向后搜索等。此外,附件服務器從請求中提取要搜索的塊訪問并且根據(jù)搜索選項來重新排序塊范圍(步驟75)。
在從存儲器內(nèi)的文檔DOM高速緩存中尋回了針對附件的預標記頁碼的文檔DOM結(jié)構(gòu)之后(步驟79),附件服務器28遍歷DOM結(jié)構(gòu)(步驟81),直到到達塊范圍中第一塊的開始節(jié)點。繼續(xù)遍歷DOM結(jié)構(gòu)(即在后續(xù)步驟為85的步驟83處為“是”)并且處理命令類型的段落節(jié)點(步驟87)或DOM結(jié)構(gòu)中的文本段節(jié)點(步驟89)。當解析段落命令中附件服務器28重新設(shè)置內(nèi)部變量段落文本內(nèi)容(步驟91);尋回存儲在文本段命令中的文本內(nèi)容并且將該文本添加到段落內(nèi)容中(步驟93)。然后服務器通過DOM結(jié)構(gòu)進行迭代直到找到文本樣式或者已搜索了在塊范圍中的所有塊(在步驟83處為“是”)。如果在由塊范圍限定的DOM結(jié)構(gòu)中沒有找到這種文本樣式,附件服務器將返回錯誤(步驟99)。否則,服務器返回包含文本樣式的第一塊的內(nèi)容(步驟97)。
附件服務器28可以將匹配文本內(nèi)容劃分為多個塊,然而保留對于匹配文本開始的塊的DOM結(jié)構(gòu),并且響應客戶機12,示出包含在保留的DOM結(jié)構(gòu)中的文本樣式的字符數(shù)目。
已經(jīng)閱讀了優(yōu)選實施例的說明的本領(lǐng)域技術(shù)人員可以考慮在所附權(quán)利要求書的范圍內(nèi)的變化和其它實施例。
權(quán)利要求
1.一種用于在存儲在服務器上的文檔中定位搜索串并且在移動設(shè)備上顯示搜索串的方法,包括在表示所述文檔(30)的映射的所述服務器(28)中構(gòu)造(34)并高速緩存(35)圖形結(jié)構(gòu),其中,所述圖形結(jié)構(gòu)將所述文檔標記頁碼為用于顯示在所述移動設(shè)備(12)上的單獨塊;用戶發(fā)起將所述文檔的連續(xù)塊以及所述單獨塊的總數(shù)從所述服務器發(fā)送到所述移動設(shè)備,用于由所述移動設(shè)備顯示;用戶發(fā)起對所述移動設(shè)備中的至少一個所述連續(xù)塊的搜索(47),并在沒有定位所述搜索串并且沒有搜索所述單獨塊的總數(shù)的情況下發(fā)起在所述服務器中對剩余塊進行進一步搜索(61);在剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的第一塊(65);以及在所述連續(xù)塊或剩余塊之一中定位了所述搜索串的情況下在所述移動設(shè)備上加亮所述塊中的所述搜索串(53),以及否則,在所述移動設(shè)備上提供表示沒有找到匹配的提示(69)。
2.根據(jù)權(quán)利要求1所述的方法,其中,發(fā)起所述進一步搜索包括將所述搜索串和所述至少一個所述連續(xù)塊之后的所述剩余塊的索引范圍從所述移動設(shè)備發(fā)送到所述服務器;在所述索引范圍中針對所述搜索串搜索所述剩余塊;以及在定位了所述搜索串的情況下將包含所述搜索串的第一塊和相關(guān)塊索引從服務器發(fā)送到所述設(shè)備。
3.根據(jù)權(quán)利要求1或2所述的方法,其中,所述加亮包括更新所述設(shè)備的顯示來反映文檔中定位了搜索串的位置(53)。
4.根據(jù)權(quán)利要求1到3之一所述的方法,還包括在所述移動通信設(shè)備上產(chǎn)生顯示,用于提示所述用戶發(fā)起對所述服務器中的剩余塊進行所述進一步搜索(59)。
5.根據(jù)權(quán)利要求3或4所述的方法,還包括在所述連續(xù)塊之間的所述顯示上產(chǎn)生略過內(nèi)容指示欄(67),從而向所述用戶提供在服務器中的所述剩余塊還沒有被發(fā)送到設(shè)備的指示。
6.根據(jù)權(quán)利要求2到5之一所述的方法,其中,所述搜索所述剩余塊包括提取要搜索的所述搜索串和所述索引范圍(73,75);迭代圖形結(jié)構(gòu)(81)并且針對在剩余塊的所述范圍中每一個節(jié)點解析任意段落和文本命令(85、87、89),并且針對每一個段落命令從段落內(nèi)容變量中的所述文本命令尋回并存儲任意文本內(nèi)容(93)并且針對所述搜索串在所述段落內(nèi)容變量中搜索所述文本內(nèi)容(95);以及當用于當定位所述搜索串(97)時針對包含所述搜索串的每一個所述剩余塊保留所述圖形結(jié)構(gòu),并且將每一個所述剩余塊和相關(guān)的塊索引發(fā)送到所述移動設(shè)備。
7.根據(jù)權(quán)利要求6所述的方法,還包括提取搜索選項以及所述搜索串和索引范圍,并且根據(jù)所述搜索選項重新排序所述索引范圍。
8.根據(jù)權(quán)利要求1到7之一所述的方法,其中,所述圖形結(jié)構(gòu)是文檔對象模型(DOM)。
9.一種可在服務器上實施的、用于在存儲在服務器上的文檔中定位搜索串的方法,包括在表示文檔(30)的映射的所述服務器(28)中構(gòu)造(34)并高速緩存(35)圖形結(jié)構(gòu),其中,所述圖形結(jié)構(gòu)將所述文檔標記頁碼為單獨塊;發(fā)送所述文檔的連續(xù)塊以及所述單獨塊的總數(shù);在所述服務器中針對搜索串搜索剩余塊(61);以及在所述剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的每一個所述剩余塊(65)。
10.根據(jù)權(quán)利要求9所述的方法,其中,所述搜索還包括接收所述搜索串和所述剩余塊的索引范圍;針對所述搜索串,在所述索引范圍內(nèi)搜索所述剩余塊;以及在定位了所述搜索串的情況下發(fā)送包含所述搜索串的第一塊和相關(guān)塊索引。
11.根據(jù)權(quán)利要求10所述的方法,其中,所述搜索還包括提取要搜索的所述搜索串和所述索引范圍(73,75)迭代圖形結(jié)構(gòu)(81)并且針對在剩余塊的所述范圍中每一個節(jié)點解析任意段落和文本命令(85、87、89),并且針對每一個段落命令從段落內(nèi)容變量中的所述文本命令尋回并存儲任意文本內(nèi)容(93)并且針對所述搜索串在所述段落內(nèi)容變量中搜索所述文本內(nèi)容(95);以及當用于當定位所述搜索串時針對包含所述搜索串的每一個所述剩余塊保留所述圖形結(jié)構(gòu),并且發(fā)送每一個所述剩余塊和相關(guān)的塊索引。
12.根據(jù)權(quán)利要求11所述的方法,還包括提取搜索選項以及所述搜索串和索引范圍,并且根據(jù)所述搜索選項重新排序所述索引范圍。
13.根據(jù)權(quán)利要求9到12之一所述的方法,其中,所述圖形結(jié)構(gòu)是文檔對象模型(DOM)。
14.一種可在移動設(shè)備上實施的、用于在存儲在服務器上的文檔中定位搜索串的方法,包括接收并顯示文檔的連續(xù)塊;針對用戶輸入的搜索串至少搜索所述連續(xù)塊的一個(47)并且在定位了所述搜索串的情況下加亮所述搜索串(53);在沒有定位所述搜索串的情況下提示所述用戶發(fā)起進一步搜索在所述服務器中的剩余的遠程存儲的塊(61);以及否則,在所述移動設(shè)備提供表示沒有找到匹配的提示(65)。
15.根據(jù)權(quán)利要求14所述的方法,還包括更新所述設(shè)備的顯示來反映文檔中定位了搜索串的位置(53)。
16.根據(jù)權(quán)利要求14或15所述的方法,還包括在所述連續(xù)塊之間的所述顯示上產(chǎn)生略過內(nèi)容指示欄(67),從而向所述用戶提供在服務器中的所述剩余塊還沒有被發(fā)送到設(shè)備的指示。
17.一種能夠在存儲在服務器上的文檔中定位搜索串的服務器,包括構(gòu)造和高速緩存裝置,用于在表示文檔(30)的映射的所述服務器(28)中構(gòu)造并高速緩存圖形結(jié)構(gòu),其中,所述圖形結(jié)構(gòu)將所述文檔標記頁碼為單獨塊;發(fā)送裝置,用于發(fā)送所述文檔的連續(xù)塊以及所述單獨塊的總數(shù);搜索裝置,用于在所述服務器中針對搜索串搜索剩余塊;以及發(fā)送裝置,用于在所述剩余塊中定位了所述搜索串的情況下發(fā)送包含所述搜索串的每一個所述剩余塊。
18.根據(jù)權(quán)利要求17所述的服務器,其中,所述搜索裝置還包括接收裝置,用于接收所述搜索串和所述剩余塊的索引范圍;搜索裝置,用于在所述索引范圍內(nèi)針對所述搜索串搜索所述剩余塊;以及發(fā)送裝置,用于在定位了所述搜索串的情況下發(fā)送包含所述搜索串的第一塊和相關(guān)塊索引。
19.根據(jù)權(quán)利要求18所述的服務器,其中,所述搜索裝置還包括提取裝置,用于提取要搜索的所述搜索串和所述索引范圍;裝置,用于迭代圖形結(jié)構(gòu),并且針對在剩余塊的所述范圍中每一個節(jié)點解析任意段落和文本命令,并且針對每一個段落命令從段落內(nèi)容變量中的所述文本命令尋回并存儲任意文本內(nèi)容,并且針對所述搜索串在所述段落內(nèi)容變量中搜索所述文本內(nèi)容;以及裝置,用于當定位所述搜索串時針對包含所述搜索串的每一個所述剩余塊保留所述圖形結(jié)構(gòu),并且發(fā)送每一個所述剩余塊和相關(guān)的塊索引。
20.根據(jù)權(quán)利要求19所述的服務器,還包括提取搜索選項以及所述搜索串和索引范圍,并且根據(jù)所述搜索選項重新排序所述索引范圍。
21.一種能夠在存儲在服務器上的文檔中定位搜索串的移動設(shè)備,包括接收和顯示裝置,用于接收并顯示文檔(30)的連續(xù)塊;搜索裝置,用于針對用戶輸入的搜索串至少搜索所述連續(xù)塊的一個,并且在定位了所述搜索串的情況下加亮所述搜索串;提示裝置,在沒有定位所述搜索串的情況下提示所述用戶發(fā)起進一步搜索在所述服務器中的剩余的遠程存儲的塊;以及提供裝置,用于在沒有找到匹配的情況下在所述移動設(shè)備提供表示沒有匹配的提示。
22.根據(jù)權(quán)利要求21所述的移動設(shè)備,還包括更新所述設(shè)備的顯示來反映文檔中定位了搜索串的位置的裝置。
23.根據(jù)權(quán)利要求21或22所述的移動設(shè)備,還包括裝置,用于在所述連續(xù)塊之間的所述顯示上產(chǎn)生略過內(nèi)容指示欄,從而向所述用戶提供在服務器中的所述剩余塊還沒有被發(fā)送到設(shè)備的指示。
24.一種可以在根據(jù)權(quán)利要求17所述的服務器上執(zhí)行的計算機可讀介質(zhì),用于實施根據(jù)權(quán)利要求9到13之一所述的方法。
25.一種可以在根據(jù)權(quán)利要求18所述的移動設(shè)備的處理器上執(zhí)行的計算機可讀介質(zhì),用于實施根據(jù)權(quán)利要求14到16之一所述的方法。
全文摘要
公開了一種用于在存儲在服務器上的文檔中定位搜索串并且在移動設(shè)備上顯示搜索串的方法,通過它用戶將針對文檔附件的搜索詞輸入到他/她的移動通信設(shè)備。如果在設(shè)備上沒有找到該詞的出現(xiàn),則該設(shè)備提示用戶啟動服務器一側(cè)的搜索。如果用戶接受,則服務器搜索文檔附件并且將包含搜索詞語的第一文本節(jié)返回給設(shè)備,用于由用戶查看。然后可以重復該過程,直到服務器查找特點報告在服務器上再沒有找到搜索串的示例。
文檔編號G06F17/30GK1783091SQ20051012857
公開日2006年6月7日 申請日期2005年11月30日 優(yōu)先權(quán)日2004年12月1日
發(fā)明者奧拉夫·A·敘爾澤, 袁建偉, 丹·杜米特魯 申請人:捷訊研究有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1