專利名稱:筆式計算系統中的標記管理的制作方法
技術領域:
這里描述的系統和方法涉及筆式計算系統。尤其是,本系統和方法涉及到筆式計算系統中的標記管理。
背景技術:
通過網絡技術和先進的存儲技術可以得到豐富信息是個人可以收集大量信息的一些原因。這些信息有許多形式,包括個人文檔、網頁、多媒體內容等。
然而,由于用戶所積累的信息數量顯著增長,于是產生了管理所有信息的后勤問題,它對于用戶訪問和利用所有信息非常實用。為了有效地管理這些信息,用戶必須具有搜索信息、在文件間轉移數據、使用具有信息應用程序及與他人共享信息等的功能。
傳統的鍵盤式平臺被越來越多的筆式平臺——例如PDAs(個人數字助理)、袖珍PCs(個人電腦)、高級電話和尋呼機等取代時—由于筆式系統管理信息的傳統方式并不總是工作的很好,因此信息管理也存在其它一些需要克服的問題。
另一方面,筆式系統為管理信息提供了一個新工具在于筆的功能是允許用戶在一個電子文檔中輸入手寫標記。在筆式計算系統中,這些手寫標記的正確管理可以產生更為容易和更有效的信息管理。
概述這里描述的是筆式計算系統中管理標記的系統和方法。這里描述的系統和方法提供了搜集、管理、搜索及共享通過手寫標記方式輸入的個人信息的方式。手寫標記包括多種類型的標記例如下劃線、弧形、方塊、箭頭及插圖的編號。
在這里描述的不止一個的實施例中,標記用于驅動應用程序、用作向導查找用戶感興趣的相關信息,和進一步管理信息。當用戶輸入一個標記時,就可得到上下文信息,該上下文信息可用于幫助確定和定位相關用戶或許感興趣的內容,不論該相關內容位于本地計算機或因特網上或其他網絡中的相同或不同文檔中。
標記可通過許多平臺和應用程序來利用,例如一個文字處理軟件、一個網頁瀏覽器、一個個人信息管理程序等。標記也可以錨定到一個文檔中,以便每次調用該文檔時,該標記就會出現。而且,當錨定一個或更多文檔后,該標記也可像其他部分的任何文檔一樣被搜索到。
附圖的簡要說明通過參考下面結合附圖的詳細描述可獲得對本發明示例的方法和結構的更完全的理解
圖1是示范計算環境;圖2是一個標記系統結構的簡化方框圖;圖3是描述了一個用標記來預定任務的方法執行的流程圖;圖4是描述一個利用從標記及其內容得出的關鍵字進行目錄搜索方法執行的流程圖;圖5是描述了一個利用標記的關鍵字搜索的方法執行的流程圖;圖6是描述了利用標記作為向導的方法執行的流程圖。
詳細描述下面描述了在筆式計算系統中管理標記的系統和方法。通過利用用戶交換,所描述的系統和方法可自動收集、管理、搜索及共享個人信息,即用戶看到的相關內容標記。
示范計算環境圖1闡明了一個示范計算環境100,其中這里描述的計算機、網絡及系統結構可全部或部分執行。示范計算環境100僅是計算系統的一個例子,并不打算使用范圍或網絡結構的功能性提出任何限制。計算環境100不應該解釋為對有關示例環境中所示的任何一個或部件的組合具有依賴性或要求。
計算機和網絡結構可以用許多其他通常或特殊目的的計算系統或結構來實現。通常所知的適于使用的計算系統、環境和/或結構的例子包括但并不僅限于個人計算機、服務器計算機、瘦客戶機、胖客戶機、手提或膝上型設備、多處理器系統、微處理器式系統、機頂盒、可編程消費品電子、網絡PCs、微型計算機、巨型計算機、游戲控制臺及包括上述任意系統或設備的分布式計算環境等。
點擊跟蹤的瀏覽頁記錄可在可執行計算機指令的通用上下文中描述,例如由計算機執行的程序模塊。通常,程序模塊包括執行特殊任務或實現特殊抽象的數據類型的例行程序、程序、對象、元件及數據結構等。點擊跟蹤的瀏覽頁記錄也可以用作分布式計算環境中,其中任務是通過與通訊網絡相連的遠程處理設備來執行。在一個分布式計算環境中,程序模塊可位于本地和遠程計算機的包括內存設備的存儲介質上。
計算環境100包括一個是計算機102形式的通用目的計算系統。計算機102的元件可以包括但并不僅限于至少一個處理器或處理單元104、一個系統內存106及一個將包括處理器104在內的許多系統元件與系統內存106系統相連接的總線108。
系統總線108表示了至少一個多種類型的總線結構,包括一個內存總線或內存控制器、一個外圍總線、一個加速圖形端口及一個處理器或利用多種任意總線結構的本地總線。舉例來說,這種結構包括一個工業標準體系結構(ISA)總線,一個微通道體系結構(MAC)總線,一個增強型ISA(EISA)總線,一個視頻電子標準協會(VESA)本地總線及一個作為已知夾層總線的外圍元件互聯(PCI)。
計算系統102通常包括多種計算機可讀介質。這些介質可為計算機102能夠存取任何可用的介質,包括易失和非易失介質、可移動或不可移動介質。系統內存106包括易失內存形式的計算機可讀介質,如隨機存儲器(RAM)110、和/或非易失存儲器,如只讀存儲器(ROM)112。一個基本輸入/輸出系統(BIOS)114,如存儲在ROM102中,包括幫助在計算機102中如啟動過程元件之間轉換信息的基本程序。RAM110通常包括數據和/或程序模塊,它們可由處理單元104快速存取和/或操作。
計算機102還包括其他可移動/不可移動、易失/非易失計算機存儲介質。舉例來說,圖1表示了一個可讀寫一個不可移動且非易失的磁性介質(未圖示)的硬盤驅動器116,一個可讀寫可移動且非易失的磁盤120(例如一張軟盤)的磁盤驅動器118,及一個可讀寫可移動且非易失的光盤124如CD-ROM、DVD-ROM或其他光介質的光盤驅動器122。硬盤驅動器116、磁盤驅動器118及光盤驅動器122都分別通過至少一個數據介質接口126與系統總線108相連接。另一種可選擇的方案是,硬盤驅動器116、磁盤驅動器118及光盤驅動器122也可以通過一個SCSI接口(未圖示)與系統總線108相連接。
磁盤驅動器及其相關的計算機可讀介質為計算機102提供了計算機可讀指令、數據結構、程序模塊及其他數據的非易失存儲器。盡管該例子說明了一個硬盤驅動器116、一個可移動磁盤120及一個可移動光盤124,但是應該明白可存儲計算機可得到數據的其他類型計算機可讀介質,例如磁帶或其他磁性存儲設備、閃存卡、CD-ROM、數字化視頻光盤(DVD)或其他光存儲器、隨機存儲器(RAM)、只讀存儲器(ROM)及電可擦除只讀存儲器(EEPROM)等同樣可用于執行示范計算系統和環境。
任意數量的程序模塊可以存儲在硬盤驅動器116、可移動磁盤120、可移動光盤124、ROM112,和/或RAM110上,舉例來說可包括一個操作系統126,至少一個應用程序128、其他程序模塊130及程序數據132。每個操作系統126、至少一個應用程序128、其他程序模塊130及程序數據132(或其結合)包括一個點擊跟蹤的瀏覽頁記錄的實施例。
計算機系統102包括多種作為通訊介質識別的計算機可讀介質。通訊介質通常將計算機可讀指令、數據結構、程序模塊或其他數據包含在一個模塊化數據信號,如載波或其他傳送機構中,并包括任何信息傳輸介質。術語“模塊化數據信號”是指一個使其至少一個特性設定或改變的方式能編碼信號中信息的信號。舉例來說但并不僅限于此,通訊介質包括有線介質如有線網絡或單線連接及無線介質如聲學、射頻、紅外線及其他無線介質。上述任意組合同樣包括在計算機可讀介質范圍內。
用戶利用輸入設備如鍵盤134和定點設備(如鼠標)將命令和信息輸入到計算機系統102中。其他輸入設備138(未特別標出)可包括麥克風、操縱桿、游戲操縱桿、圓盤式衛星電視天線、串行端口、掃描儀等。這些及其他輸入設備通過與系統總線108相連接的輸入/輸出接口140與處理單元104相連,但是也可通過其他接口和總線結構相連,如并行端口、游戲端口或通用串行總線(USB)。
監控器142或其他類型的顯示設備同樣通過接口如一個視頻適配器144連接到系統總線108。除監控器142外,其他通過輸入/輸出接口140與計算機120相連的外圍輸出設備包括元件如揚聲器(未標出)和打印機146。
在網絡環境下,計算機102可利用與至少一個遠程計算機的邏輯連接來操作,例如遠程計算設備148。舉例來說,遠程計算設備148可為一個人計算機、手提電腦、一臺服務器、一個路由器、一臺網絡計算機、一個對等設備或其他共用網絡節點等。遠程計算設備148作為一手提電腦來說明,它包括了這里描述的與計算機系統102相關的許多或所有的部件及特征。
計算機102和遠程計算機148之間的邏輯連接作為一個局域網(LAN)150和通用廣域網(WAN)152來描述。這種網絡環境是辦公室、企業計算機網絡、企業內部互聯網及國際互聯網絡中是很常見的。當作一個LAN網絡環境下執行時,計算機102通過一個網絡接口或適配器154連接到本地網絡150上。當在一個WAN網絡環境下執行時,計算機102通常包括一個調制解調器156或在其他廣域網絡152上建立通訊的設備。對于計算機102可為外置或內置的調制解調器156可通過輸入/輸出接口140或其他合適機構與系統總線108相連。圖示的網絡連接為示范性的,在計算機102和148之間建立通訊鏈路的其他設備也可使用。
在一個網絡環境下,如圖示的計算環境100、對應于計算機102的所述程序模塊或其中的一部分可存儲在一個遠程存儲設備上。舉例來說,遠程應用程序158存儲在遠程計算機148的存儲器上。為了說明,應用程序和其他可執行程序成分例如操作系統,這里作為離散模塊來圖示,盡管認識到這種程序和成分多次存儲在計算機系統102的不同存儲元件中,但它們可通過計算機數據處理器來執行。
示范結構圖2是一個根據所述的系統和方法的示范標記系統200的方框圖。該標記系統200包括一個存儲層202、一個抽取層204及一個應用程序層206。在每個特殊層中所示的多種元件可用特殊的工具來改變。
通常,存儲層202用原始筆畫、標記、自由標記及文檔作為輸入或將機密且可識別的標記,和其錨定文本存儲到一個標記和文檔數據庫208中。存儲層202包括一個錨定模塊210和一個標記重組模塊212。該錨定模塊210相對于文檔中目標收集關于每個標記的位置信息。這允許標記將要被錨定,以至于當文檔重新調用時它們在可在相同位置出現。當重新調用一頁時,該標記重組模塊212設定為重新找回錨定數據,并且當該頁收回時,在其適當位置重組每個標記。
抽取層204包括從標記和作用中抽取相關語義特征的成分。兩種類型特征可被抽取標記本身及與標記相關的上下文信息。上下文信息可以包括但并不僅限于時間、位置及周圍文本等。
抽取層204包括一個抽取模塊220、一個特征數據庫222、一個學習模塊224、一個查詢修正模塊226及一個信息過濾模塊228。抽取模塊220設定用于抽取所有類型的信息,包括文檔特征、標記文本、標記特征、上下文等。這些所抽取的特征存儲在特征數據庫222中。
學習模塊224設定用于追蹤用戶行為及使用由此獲得的用戶信息以改進標記系統。查詢修正模塊226設定用于協助于結構搜索查詢,該查詢用于定位用戶獲取感興趣的內容和局部關鍵字。信息過濾模塊228設定用于過濾和改進在為用戶搜索更為合適的顯示時所得到的原始信息。特征數據庫222同樣包括一個歷史記錄229,它存儲了一個系統中每個特殊用戶及一個系統中所有用戶的搜索項。當權衡上下文搜索和關鍵字搜索的搜索項時,將涉及該歷史記錄229(正如下面更詳細的描述)。
應用程序層206包括利用并支持標記的應用程序。在下面的例子中,應用程序層206包括一個個人信息管理程序230和一個網頁瀏覽器232。一個標記總結程序234也存儲在應用程序層206中,并用于收集總結輸入到系統中標記的信息。在為多用戶提供的系統中,標記總結程序234區分每個用戶間的標記,并單獨或整體總結這些標記。
錨定標記盡管不必是所需的,但在一些執行過程中,希望為對象錨定標記以致于當該頁重組,例如當該頁更新或當用戶返回一個以前已標記過的頁中時,該標記可以一在頁中相同的相關位置進行重組。下面的例子說明了一個錨定標記的技術。盡管下面的例子是關于IE瀏覽器進行描述的,但是所描述的技術可用于其他的上下文中。
為了錨定標記,,標記模塊210從一個與網頁相關的文檔對象模型(DOM)樹中為網頁中每個對象獲得一個矩形邊界框。從這個信息中得到每個對象的一個二維位置。同樣,該標記模擬為二維空間中的一個多邊形。于是標記錨定問題本質上成為一個多邊形交叉問題。該對象和標記信息(如位置)存儲在標記和文檔數據庫208中。
當重新調出一頁時,標記重組模塊212從標記和文檔數據庫208中重新得到位置信息。計算每頁對象和已錨定對象之間的類似處來確定它們是否相同。如果是這樣,那么位于頁面上的任何標記都可在與它們原始出現的有關頁面對象的相同位置重組。
在網頁包括一個文本段落的情況下,由于該文本段落只是一個對象,于是就產生一個特殊問題。在這種情況下,文本對象被劃分為更小的對象,如段落中的每個字詞構成一個對象(如一個“詞對象”)。為每個詞對象插入一個假冒的標記并得到每個詞對象的二維位置。于是繼續進行如上述的處理。
啟動標記任務啟動任務是筆式計算系統中的一個重要特征。在其他類型的計算機中,一個任務可以利用在工具條或光標上的鼠標的點擊來啟動。在筆式系統中,一個筆代替了鼠標并且用法也不同。同樣,在許多筆式系統中,顯示空間是很珍貴的,因此工具條及光標并不出現來為啟動一個任務而提供一個簡單的方式。即使當光標用于系統中來啟動一個任務時當另一應用程序正在操作時,光標也不可用。
在這里所描述的系統和方法中,一個任務可以從一個特殊類型的標記自動啟動。例如,一個應用程序設定為識別一個數據標記,并且當檢測到一個數據標記時,自動啟動一個日歷任務。如果需要,這種特征為用戶提供了禁止自動啟動的方式。
示范方法執行——預定任務在一個典型系統中,當用戶想在一個個人信息管理應用程序(例如圖2中230)中預定任務時,用戶必須啟動應用程序并且安裝數據和時間信息(例如啟動時間、結束時間、應到時間等)。另外,用戶也必須輸入一個任務名稱來描述該任務名,和輸入一個主體描述來大致描述該任務。當鍵盤可使用時,輸入這種信息是相當簡單的。然而,在筆式系統中是非常費時的。下面描述的方法的實現有助于簡化這種任務。
圖3是描述了一個從標記中預定任務的方法執行的流程圖300。在方框302中,抽取模塊220監控一個已經打開的文檔來檢測標記項。該已經打開的文檔或許是一個網頁、一個文字處理文檔、一個電子郵件信息等。正如前面所討論的,抽取模塊監控標注或用戶輸入的手寫符號。在這個特殊例子中,抽取模塊220監控包括一個日期的標記,例如以日期形式表示的符號。該標記可對該日期畫圓圈、下標日期及手寫日期等。
例如,假設包括了一行用戶下劃線的文本網頁,該行讀為“臺式PC將在11月7日投產。”抽取模塊設為“11月7日”作為日期識別,它將啟動目前描述的功能。
如果一個標記不是作為日期識別(“否”分支,方框304),那么抽取模塊220只繼續監控方框302中的標記。然而,如果一個標記作為一個日期來識別(“是”分支,方框304),那么抽取模塊確定一個日期啟始特征是否允許。如果該特征不被允許(“否”分支,方框306),那么抽取模塊220繼續監控方框302的標記。如果該特征允許(“是”分支,方框306),那么一個相關的應用程序(個人信息管理應用程序,該例子圖2中的230)在方框308中啟動。如果該應用程序已經運行并最小化,那么在模塊308中只能最大化。
該應用程序只對一個頁面打開,該頁面與在方框310的標記中已識別的日期相關。抽取模塊檢查已標記日期(方框312)位置內容的上下文來得到一個建議的標題和為那個特殊日期而輸入的主要描述。這里,從總上下文中得到的建議的標題或許為“臺式PC”,并且該主要描述或許讀為“臺式PC投產”。
在方框314中,該建議題目及主要描述將通過彈出方式的通知用戶。如果用戶想要接收建議,用戶只需通過取出(或者接收)該建議響應(“是”分支,方框316),并且標題和主要描述在方框320中輸入。如果該建議不被接受(“否”分支,方框316),那么就給用戶提供一個讓用戶輸入標題和主要描述的方框(方框318)。當收到用戶的輸入后,它們在方框320中輸入。
在方框332中,依靠特殊執行,應用程序被關閉或最小化,并且處理回復到方框302中,其中標記監控繼續執行。
利用上面所描述的技術,一個筆式計算系統的用戶可以在時間管理應用程序中更加有效地輸入任務。
方法執行——基于標記的目錄搜索當用戶閱讀一個電子文檔時,他可能更有興趣檢查該文檔中提出的問題。在典型的計算機系統中,用戶只能在本地計算機的搜索框或者網絡搜索引擎中鍵入一個查詢來查找相關信息。然而,在筆式計算機系統中并不是一個如此簡單的任務。另外,一個搜索框中的搜索項的有限輸入不能顯示用戶查詢的內容,同樣,可能得到許多結果——雖然與搜索項自身相關——或許與用戶已在腦中形成的實際查詢不相關。
圖4是一個描述了一個目錄搜索的方法執行的流程圖400,該搜索基于用戶標記和從標記的上下文中收集的關鍵字(通過查詢修正模塊226執行,圖2)。圖4中描述的內容搜索過程通過用戶的標記驅動,并且考慮用于驅動該搜索的標記的上下文內容。需要指出的是,盡管在流程圖400中沒有標出,流程圖400描述的特征也可由用戶方便地終止。在此情況下,下面描述的過程步驟——不同于監控步驟——將不被執行。
為更好的提煉用戶感興趣的搜索結果,在一個查詢上下文中可以應用兩種方法。一種方法是查詢產生,其中上下文用于形成搜索查詢。另一種方法是搜索結果重新分類,其中對從一個標記獲得的至少一個關鍵字執行一個典型的搜索,于是上下文用于該搜索結果和重新分類搜索結果,以便更為相關結果排列在無關的結果之前。
流程圖400和下面的描述集中于一個利用查詢上下文的查詢產生。熟悉本領域中的人將會很明白,在不同命令執行的相同步驟可用于提供搜索結果重新分類技術。
在方框402中,在一個已打開的文檔中監控標記。該文檔可為任意類型的電子文檔,例如一個網頁、一個字處理文檔、一個電子郵件信息等。只要沒有觸發一個目錄搜索的標記輸入(“否”分支,方框404),那么監控在方框402中繼續。如果輸入一個標記以確定一個標記來觸發一個目錄搜索(“是”分支,方框404),那么基本查詢項從標記(方框406)中得到,以開始建立將最終用于搜索中的查詢。
至少在目錄搜索中有兩種不同的方式可以通過系統識別和啟動。在第一執行過程中,用戶標注他感興趣的項,然后執行告訴系統執行一個目錄搜索的操作。該操作可以生成一個系統作為命令識別的標記,以執行一個目錄搜索、選擇一個搜索光標等。在至少一個執行中,一旦識別標記或出現用戶在標記上移動筆或記錄筆的事件,系統就彈出一個包括一個目錄搜索選項的菜單。然后用戶從彈出菜單上挑選一個目錄搜索選項。
在第二個執行過程中,系統通過識別用戶想要執行的目錄搜索自動啟動一個目錄搜索。它將由一個啟動目錄搜索的特殊標記來執行。例如,當用戶對某些項劃圈、當用戶在文本中畫雙下劃線、當用戶使文本加亮等時,一個系統經過編程來啟動一個目錄搜索。
作為獲得基本查詢項的一個例子,假設用戶正在閱讀關于商標為“印地安人”摩托車的摩托車俱樂部愛好者的一篇網頁文章,——偶而對買一輛摩托車感興趣的用戶想看商標為“印地安人”摩托車的更多信息。只要當用戶閱讀這篇文章時,該用戶就會對單詞“印地安人”作了標記。該標記或許是對該單詞劃了一個圓圈或對其加了雙下劃線等。
于是這種搜索查詢的建立通過基本項“印地安人”來啟動。然而,如果對單一項執行搜索,用戶就會從關于美國印地安人直到印度的一本名為“印度人在新英格蘭的夏天”的書評的文章范圍中得到結果。該用戶真正感興趣的文章是——如一篇關于“印地安人”摩托車的消費者報告——很可能遠遠地排在目錄后面,這就使讀者在找到感興趣的位置之前不得不細讀許多題目。
但是在方框408中,<第1層>關鍵字在與該文檔相關的文檔對象模型(DOM)樹中定位,并且它們也加入到查詢中。<第1層>關鍵字作為文檔對象的特征定義,該對象在DOM樹中相對接近該標記。如何精確接近該標記是一個執行的細節,對于每個特殊應用程序將分別定義。在該例子中,附加的搜索項“摩托車”會加到基本查詢項“印地安人”中。這就極大地縮小了搜索結果。
另外,在方框410中,<第2層>關鍵字定位在DOM樹中。<第2層>關鍵字是離DOM樹中標記比<第1層>特征更遠的范圍的特征。在此例子中,這會增加附加的搜索項如“會議”、“信息”及“新聞”(如句子“成員們舉行月會,共享關于印地安人摩托車的信息、新聞和軼事”)。
于是在方框412中賦予這種搜索項一個特殊“權值”。給已標記的或基本項一個最高權值,并給<第2層>項最低權值,同時在兩者之間的某處給<第1層>一個權值。在方框414中,查詢搜索項和它們對應的權值用于生成一個關鍵字向量。
該關鍵字向量包括關鍵字,它們每個都有相應的權值。在此例子中,一個關鍵字向量可為[(印地安人,0.6)(摩托車,0.4)(信息,0.1)(會議,0.1)]。于是隨后的搜索將根據這些權值排列結果。
關鍵字向量可用于本領域已知的任何方式來執行加權搜索。在至少一個執行中,一個關鍵字向量用一個余弦值來計算文檔的相似性Sim(q,D)=Σtj∈∩(qj,Dj)qjDjΣqk2ΣDk2]]>
在方框416中,提供給用戶一個彈出菜單來指定一個應該執行搜索的區域。例如,該彈出菜單可以指定一臺本地計算機、一個本地網絡驅動器、因特網等。另外該彈出菜單頁同樣可以指定一個用戶取消搜索的“不搜索”選項。于是在方框418中搜索該指定的區域,并且該結果在方框420中反饋給用戶。
應該明白一個包括加權項“印地安人”、“摩托車”、“會議”、“信息”及“新聞”查詢很可能將處理用戶真正想查找的而不是一個簡單的“印地安人”查詢的結果返回到更靠近頂部。同樣,通過這種用戶可得到的特征,就可節約時間和精力。
正如前面提到的,上面描述的可選的查詢產生是重組結果。在這種過程中,一個搜索第一只利用標記項“印地安人”執行。關鍵字向量如上面的描述而產生,并在收到許多結果后,根據關鍵字向量重組結果。這種技術提供的結果與利用查詢產生方法得到的結果很相似。
方法執行——基于標記的關鍵字搜索在其他情況下,用戶或許想要在正在閱讀的文檔中找到關鍵字項。在當前文檔中,在一個搜索框中輸入關鍵項查找的典型方法在筆式系統中難于運行。另外,對于每個用戶希望在文檔中找到的關鍵項,該方法必須重復執行。
對于筆式系統,在正在閱讀的文檔中標記至少一個希望定位的關鍵項,且該關鍵項可自動定位,對用戶更為有效。下面描述的標記關鍵字搜索描述了這種過程。
圖5是一個描述了標記關鍵字搜索的方法執行的流程圖500。在方框502中,在已打開的文檔中監控標記。正如前面所述,該文檔可為任意類型的電子文檔,如一個網頁、一個字處理文檔、一個電子郵件信息等。只要沒有觸發關鍵字搜索的標記輸入(“否”分支,方框504),那么該監控在方框502中繼續進行。如果輸入確定觸發一個關鍵字搜索的標記(“是”分支,方框504),那么用戶感興趣的關鍵字很可能在方框506中確定。
確定至少一個觸發關鍵字搜索的標記可以通過許多方式的不止一種來執行。例如,如果用戶在標記上移動一支筆來彈出菜單,一個系統經過編程來啟動一個關鍵字搜索,于是從該菜單中選項關鍵字搜索項目。在至少一種其他的執行中,某些類型的標記可用于觸發一個關鍵字搜索。
為確定用戶感興趣的關鍵字有四種方法可用于該步驟中。在這個特殊執行中,信息過濾模塊228(圖2)設為執行下面描述的任務。
第一種方法確定Pr(w|u)假設當前用戶(u),那么他對什么(w)詞感興趣?為了進行這種確定,學習模塊(224,圖2)設為監控用戶行為并在特征數據庫(222,圖2)中存儲某些與該行為相關的數據。
為了執行一個長期興趣模型,學習模塊224跟蹤用戶閱讀的所有文檔中出現的單詞,并且過濾模塊228通過確定在當前文檔由學習模塊224記錄的單詞的頻率,確定出現在當前文檔中的這些詞的重要性。
跟蹤每個特殊單詞會在系統中帶來過于繁重的任務。因此在這種執行中,通常可以忽略經常出現在文檔中的某些部分語法。例如,單詞如“這”、“或”、“因為”等可不跟蹤。
希望這種過程提供用戶短期感興趣。在這種例子中,只有出現在用戶最近訪問的文檔中的單詞可與當前文檔中的單詞相比。例如,當前文檔中的單詞只能與用戶前一周內訪問的文檔中的單詞相比。
確定用戶感興趣的關鍵字的第二種方法可集中在用戶所作的標記上。在這種執行中,信息過濾模塊228確定頻繁出現在包括該已標記單詞的文檔中的單詞。于是這些單詞確定為用戶感興趣的關鍵字。
確定用戶感興趣的相關單詞關鍵字的第三中方法是根據用戶過去的標記確定相關的關鍵字。在這種執行過程中,保持用戶過去標記的歷史記錄。關鍵字與歷史記錄相,并且根據該關鍵字是否出現在歷史記錄中來調整與關鍵字相關的權值,如果這樣,用戶最后輸入的關鍵字作為標記。
較高的權值將發現用戶相對最近輸入的該關鍵字(參考歷史記錄)相關。同樣,在歷史記錄中發現但在較長時間前使用的關鍵字將收到較小的權值調整。未在歷史記錄中找到的關鍵字沒有增加權值,但是將保持在一個通用權值或者有一個已經指定的減少權值。
第四種方法與第三種方法相似,除了所有用戶的過去標記——不止是當前用戶——都進行考慮外。上面描述的相同技術——利用一個標記歷史記錄——這里同樣使用,除了使用包括所有用戶的所有標記的歷史。
在用戶可能感興趣的關鍵字確定后,這些關鍵字作為建議關鍵字(方框508)傳給用戶。于是用戶在方框510中選擇至少一個建議關鍵字。于是在方框512中,已選出的關鍵字在全文中加亮,每個單獨的關鍵字用不同的顏色加亮(如果系統顯示器是彩色的顯示器)。
方法執行——標記向導利用標記會使筆式計算系統更為容易管理,另一方式就是一種用戶可以指定一個特殊任務給一個特殊向導的情況。向導是一個命令或控制計算機功能的墨水對象,而不是手寫的或繪制的墨水對象。因此,用戶可以作出一個標記并且將基本任務與標記相聯系。然后,當系統檢測相同的標記時,系統將執行與該標記相關的任務。
圖6是一個描述了利用筆式系統中一個標記作為向導的方法執行的流程圖600。在方框602中,在一個已打開的電子文檔中抽取模塊220(圖2)監控標記。只要未檢測到表示一個向導的標記(“否”分支,方框604),那么監控在方框602中繼續進行。如果檢測到向導(“是”分支,方框604),那么確定該向導是新的向導還是以前用過的向導。
這兒有許多方式,用戶可以表示一個系統中的特殊標記作為向導。在一個執行中,用戶作出一個標記并不止一秒鐘的強加該標記。筆的擴展抽頭將正被指向的標記意味一個向導指示給該系統。
當指示一個向導的時候,系統必須搜索特征數據庫222來確定該向導以前是否用過。如果該向導是新的向導(“否”分支,方框606),那么就記錄該標記,如存儲在特征數據庫222中(方框608)。在用戶作出向導指示后,用戶就輸入至少一個與向導標記相關的命令。這些與向導相關的命令在方框612中接收,并在方框614中用相關的標記存儲在特征數據庫222中。然后這些向導命令在方框616中執行。
如果在檢測向導指示后,向導定位在特征數據庫222中,即該向導不是新的向導,但是以前已經用過(“否”分支,方框606),那么從特征數據庫222中得到與向導相關的命令,并在方框616中執行。
作為例子,假設一個想生成向導來打開一個日歷程序的用戶。該用戶決定一個無窮大標記(∞)將用于啟動該日歷程序。該用戶在已打開的電子文檔上作出標記(無窮大標記),然后在該無窮大標記上氫敲和移動筆。用戶這樣做的第一次,系統找不到向導并將提示用戶輸入命令來與標記關聯。于是該用戶執行步驟來啟動該日歷程序。于是這些步驟與無窮大標記相關聯,并且存儲該標記和相關步驟。
下一次當用戶想要啟動該日歷程序時,用戶作出無窮大標記并強加于該標記。系統將識別向導并將執行命令以啟動該日歷程序,于是在啟動該應用程序中節省用戶時間和步驟。
與其他特征一樣,該系統包括一個便捷的方式,如果必要,用戶可以改變該特征。
結論正如所描述的系統和方法,在筆式系統中提供了一種更好的管理標記的方式,以使該系統對用戶來說更為容易地用于執行典型的任務。提供一個對于用戶使用是更為方便的筆式系統,也促進了筆式系統在市場中的使用。
盡管上面已描述了特殊的執行及實施例的細節,這些細節的目的是用于滿足法定的公開義務,而不是用于限定下面權利要求的保護范圍。因此,正如權利要求所限定的本發明并不限于上面描述的具體特征。相反,依照等同原則的適當解釋,本發明要求保護落在后面權利要求的適當范圍中其任何形式或變化。
權利要求
1.一種方法,包括為用戶標記監控一個電子文檔;識別輸入到電子文檔中的一個標記;利用該標記和上下文數據,定位與標記相關的信息;及收集與該標記最接近的上下文數據。
2.如權利要求1所述的方法,其中該搜集上下文數據進一步包括從與標記最相關的文本中,抽取至少一個單詞。
3.如權利要求1所述的方法,其中該搜集上下文數據進一步包括在與標記相關的文檔對象模型(DOM)中,定位接近于一標記對象的對象。
4.如權利要求1所述的方法,其中該搜集上下文數據進一步包括從該標記定義第一距離;從該標記定義第二距離;從該標記的第一距離內,定位至少一個關鍵字;從該標記的第二距離而不是從該標記的第一距離內,定位至少一個關鍵字;根據從它們到該標記的距離,為至少一個關鍵字賦權值,在第一距離內的關鍵字比在第二距離而不在第一距離內的關鍵字有較大的權值;其中與該標記相關的定位信息根據其所賦的權值應用該關鍵字。
5.如權利要求1所述的方法,其中該收集的上下文數據進一步包括獲得至少兩個搜索項;將該搜索項與搜索項的歷史記錄對比;及根據一個特殊搜索項是否包括在該搜索項的歷史記錄中,為每個搜索項賦權值,將賦予一個包括在搜索項歷史記錄中的搜索項一個較大的權值。
6.如權利要求5所述的方法,其中該搜索項的歷史記錄進一步包括一個特殊用戶使用過的搜索項的歷史記錄。
7.如權利要求5所述的方法,其中該搜索項的歷史記錄進一步包括一組特殊用戶的所有用戶使用過的搜索項的歷史記錄。
8.如權利要求1所述的方法,其中與該標記相關的該定位信息進一步包括搜索與該標記相配或相似的項的電子文檔。
9.如權利要求1所述的方法,其中與該標記相關的該定位信息進一步包括搜索包括與該標記相配或相似的項的文檔的遠程站點。
10.如權利要求1所述的方法,其中與該標記相關的該定位信息進一步包括確定基于該標記的用戶可能感興趣的關鍵字,及包括在用戶以前訪問過的文檔中的單詞;及使用該關鍵字來定位信息。
11.如權利要求5所述的方法,其中該以前的文檔限于在一段特殊時期訪問過的文檔。
12.如權利要求1所述的方法,其中與該標記相關的該定位信息進一步包括確定基于該標記的用戶可能感興趣的關鍵字,及與該標記一起出現在用戶訪問的以前文檔中的單詞;及使用該關鍵字來定位信息。
13.如權利要求1所述的方法,其中該標記進一步包括下面標記類型中的一種圓圈、下劃線、方框、箭頭、插圖的編號、公知符號、符號后綴。
14.一種系統,包括一個標記監控模塊,設為來監控輸入一個標記的電子文檔;一個抽取模塊,設為來收集出現在輸入到該電子文檔中一個標記附近的上下文數據,及從該上下文數據中抽取至少一個關鍵字;一個信息處理模塊,設為來使用該標記關鍵字以定位相關內容。
15.如權利要求14所述的系統,進一步包括一個歷史模塊,它包括至少在該系統中用過的一個歷史關鍵字;及其中該抽取模塊進一步設為根據該關鍵字是否包括在該歷史模塊中來權衡關鍵字。
16.如權利要求14所述的系統,其中該上下文數據進一步包括許多從與該標記最接近的原文中得到的關鍵字;該抽取模塊進一步設為根據該關鍵字離該標記的相對距離來為每個關鍵字賦予權值;該信息處理模塊進一步設為來啟動一個基于該標記和已賦權值的關鍵字的搜索。
17.如權利要求16所述的系統,其中該搜索利用標記作為搜索項來執行的,并且該搜索結果根據該已賦權值的關鍵字重組。
18.如權利要求16所述的系統,其中該搜索利用從該標記和已賦權值的關鍵字得到的查詢來執行。
19.如權利要求14所述的系統,其中由該信息處理模塊定位的相關內容進一步包括包含在該電子文檔中的關鍵字。
20.如權利要求14所述的系統,其中由該信息處理模塊定位的相關內容進一步包括包含至少一個關鍵字的網絡上的文檔。
21.如權利要求14所述的系統,其中該信息處理模塊進一步設為根據該標記和出現在用戶訪問過的其它文檔中且其中有相同標記輸入的字確定可能是用戶感興趣的建議關鍵字。
22.如權利要求21所述的系統,進一步包括一個用戶接口,設為用于將該建議關鍵字傳給用戶,并通過用戶提供沒有或至少一個建議關鍵字的選擇。
23.至少一個計算機可讀介質包括計算機可執行指令,當在一臺計算機上運行時,執行以下步驟識別用戶輸入到電子文檔中的標記;收集與該標記位置相關的上下文數據;及通過使用至少一個用該標記表示的單詞和至少一個從該上下文數據中得出的關鍵字執行搜索,定位用戶可能感興趣的附加內容。
24.如權利要求23中所述的至少一個計算機可讀介質,其中該標記是包括在下面集合中的標記一個圓圈、一個方框、一個箭頭、一條下劃線、一條雙下劃線、一個括號、一個加亮區、一個手寫字母、公知符號、符號后綴。
25.如權利要求23中所述的至少一個計算機可讀介質,其中收集與該標記位置相關的上下文數據進一步包括收集出現在從與該標記對象關聯的一個文檔對象模型中的一個標記對象的一定距離內的對象。
26.如權利要求23中所述的至少一個計算機可讀介質,其中定位附加內容進一步包括定位在電子文檔中的至少一個本地關鍵字。
27.如權利要求23中所述的至少一個計算機可讀介質,其中定位附加內容進一步包括在網絡中定位至少一個文檔,該文檔包括至少一個由標記表示的單詞或至少一個從該上下文數據中得出的關鍵字。
28.如權利要求23中所述的至少一個計算機可讀介質,其中該定位附加內容進一步包括,通過識別經常與該標記一起出現在用戶訪問過的其它文檔中的單詞,從該上下文數據得出至少一個關鍵字。
29.如權利要求23中所述的至少一個計算機可讀介質,其中該定位附加內容進一步包括,通過識別經常與該標記一起出現在用戶訪問過的其它文檔中的單詞,從該上下文數據得出至少一個關鍵字。
30.如權利要求23中所述的至少一個計算機可讀介質,進一步包括為該關鍵字賦權值;根據已賦權值的關鍵字排列搜索結果。
31.如權利要求30中所述的至少一個計算機可讀介質,進一步包括查閱一個關鍵字歷史記錄清單的步驟,該清單包括一當前用戶以前使用過的關鍵字,其中該賦予關鍵字權值進一步包括給包含在該關鍵字歷史記錄清單中的關鍵字指定一個更大的權值。
32.如權利要求30中所述的至少一個計算機可讀介質,進一步包括查閱一個關鍵字歷史記錄清單的步驟,該清單包括一組用戶中所有用戶以前使用過的關鍵字,其中該賦予關鍵字權值進一步包括給包含在該關鍵字歷史記錄清單中的關鍵字指定一個更大的權值。
全文摘要
這里描述的是筆式計算系統中管理標記的系統和方法。這里描述的本系統和方法提供收集、管理、搜索及共享通過手寫標記方式輸入的個人信息的方式。標記用于驅動應用程序、作為向導、查找相關信息并進一步管理信息。當用戶輸入信息時,得到上下文信息,該上下文信息用于幫助確定和定位用戶可能感興趣的相關內容,這些內容不論在本地計算機或因特網或其它網絡上的同一或不同文檔中。
文檔編號G06F15/00GK1637741SQ20041008228
公開日2005年7月13日 申請日期2004年9月10日 優先權日2003年9月10日
發明者陳正, 李半頑, 王堅, 馬維英 申請人:微軟公司