當創(chuàng)建與外部數(shù)據(jù)源的連接(例如,配置電子表格以實現(xiàn)到數(shù)據(jù)庫的連接)時,用戶可能很難構(gòu)建引入用戶想要取回的信息的查詢。為了獲得用戶想要取回的信息,構(gòu)建連接的用戶可能需要理解在數(shù)據(jù)源中可供使用的數(shù)據(jù)。例如,用戶可能需要理解字段名、表格組織和/或表格之間的關(guān)系從而有效地構(gòu)造查詢。在不理解數(shù)據(jù)源的組織的情況下,用戶經(jīng)常被迫搜尋非常大的數(shù)據(jù)源來定位感興趣的字段??紤]到該任務(wù)的復(fù)雜度和所要求的數(shù)據(jù)源的詳細知識,許多用戶放棄構(gòu)建它們自己的查詢。
正是針對這些以及其它考慮呈現(xiàn)了本文所做的公開。
技術(shù)實現(xiàn)要素:
本文描述了用于提供查詢建議的技術(shù)。為了提供查詢建議,可以檢測在數(shù)據(jù)源處的訪問。隨后,可以至少部分地基于非查詢數(shù)據(jù)(即,查詢中不包含的數(shù)據(jù))來確定對于數(shù)據(jù)源的搜索查詢的建議。然后,該建議可以返回到客戶端以便顯示在適合用戶接口(“UI”)元件中。
應(yīng)當理解上述主題還可以實現(xiàn)為計算機控制的裝置、計算機實現(xiàn)的過程、計算系統(tǒng)或?qū)崿F(xiàn)為如計算機可讀介質(zhì)的制品。雖然本文呈現(xiàn)的技術(shù)主要公開在基于非查詢數(shù)據(jù)至少初始地提供查詢建議的上下文中,但是本文公開的構(gòu)思和技術(shù)同樣還可能用于基于查詢數(shù)據(jù)來提供附加的建議。這些以及其它各特征將通過對以下詳細說明的理解和相關(guān)聯(lián)的附圖的閱覽而顯而易見。
提供該發(fā)明內(nèi)容以便以簡化的形式來引入下面的具體實施方式中進一步描述的概念的選擇。該發(fā)明內(nèi)容不旨在確定所要求保護的主題的關(guān)鍵特征或主要特征,也不旨在該發(fā)明內(nèi)容用于限定所要求保護的主題的范圍。此外,所要求保護的主題不限于解決在本公開的任意部分所提到的任意或全部缺點的實現(xiàn)方式。
附圖說明
圖1是示出本文所公開的示例性的操作環(huán)境和多個軟件組件的方面的網(wǎng)絡(luò)圖;
圖2是示出用于處理用戶查詢的一個示例性的例程的方面的流程圖;
圖3是示出用于提供查詢建議的一個示例性的例程的方面的流程圖;
圖4A-4D是示出根據(jù)本文所呈現(xiàn)的多個配置的用于提供查詢建議的多個示例性的UI的方面的UI圖;
圖5是示出示例性的計算機硬件和軟件架構(gòu)的計算機架構(gòu)圖;
圖6是示出能夠?qū)崿F(xiàn)本文所呈現(xiàn)的技術(shù)的方面的分布式計算環(huán)境的圖;以及
圖7是示出能夠?qū)崿F(xiàn)本文所呈現(xiàn)的技術(shù)的方面的計算設(shè)備架構(gòu)的計算機架構(gòu)圖。
具體實施方式
以下的詳細說明涉及用于提供查詢建議的技術(shù)。查詢建議可以通過圖形UI或其元件來提供。查詢建議可以至少初始地基于非查詢數(shù)據(jù),諸如例如身份數(shù)據(jù)、簡檔數(shù)據(jù)、上下文信息或其它非查詢數(shù)據(jù)。附加查詢建議還可以基于查詢數(shù)據(jù),諸如例如部分查詢陳述、完全查詢陳述或其任意組合,它們與所要創(chuàng)建和/或操縱的查詢有關(guān)。
如上文簡述,數(shù)據(jù)庫和數(shù)據(jù)處理系統(tǒng)的新手用戶可能在匯編數(shù)據(jù)庫查詢方面有難度。然而,使用本文所公開的技術(shù)的實現(xiàn)方式,可以向新手用戶(以及更高級的用戶)提供查詢建議,使得至少初始地基于非查詢數(shù)據(jù)來創(chuàng)建完整的且適當?shù)臄?shù)據(jù)查詢。通過使用非查詢數(shù)據(jù),初始查詢建議可以生成且提供給用戶,以便顯示查詢結(jié)果的部分集合。隨后,還可以基于查詢結(jié)果和非查詢數(shù)據(jù)的部分集合來提供附加的查詢建議,附加的部分結(jié)果基于所選定的建議來顯示。因此,新手用戶能夠通過建議選擇性創(chuàng)建/構(gòu)建查詢來查看結(jié)果的進展,并且進一步地,能夠更容易地確定如何構(gòu)造未來的查詢。
因此,對于希望創(chuàng)建數(shù)據(jù)庫查詢的新手用戶,本文所公開的技術(shù)的實現(xiàn)方式可能不那么費力。另外,使用本文所公開的技術(shù),用戶能夠創(chuàng)建更完整的初始數(shù)據(jù)庫查詢。當創(chuàng)建未來的查詢時,也可能對用戶不那么費力。還可能基于所存儲的或先前的查詢使用來提供逐漸精確的查詢建議。雖然單獨地列出,但是應(yīng)當意識到上文所描述的益處可以根據(jù)本文所公開的技術(shù)的任何期望的實現(xiàn)方式而單獨地、獨立地或者部分/完全組合來實現(xiàn)。而且,通過本文所描述的技術(shù)的實現(xiàn)方式,附加的益處會變得顯而易見。
雖然本文所描述的主題是在與計算機系統(tǒng)上的操作系統(tǒng)和應(yīng)用程序的執(zhí)行相結(jié)合而執(zhí)行的程序模塊的一般上下文中呈現(xiàn)的,但是本領(lǐng)域技術(shù)人員將認識到可以與其它類型的程序模塊相結(jié)合來實施其它的實現(xiàn)方式。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其它類型的結(jié)構(gòu)。而且,本領(lǐng)域技術(shù)人員將意識到,本文所描述的主題可以利用其它計算機系統(tǒng)配置來實現(xiàn),包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程的消費電子設(shè)備、微型計算機、主機型計算機等等。
在下面的詳細說明中,參考了附圖,附圖構(gòu)成其部分,并且其中通過示例說明示出具體的配置或示例?,F(xiàn)在參考附圖,將描述用于提供查詢建議的計算系統(tǒng)和方法的方面,在附圖中相似的標記在多幅圖中表示相似的元件。
現(xiàn)在轉(zhuǎn)到圖1,將提供關(guān)于本文所公開的示例性的操作環(huán)境和多個軟件組件的細節(jié)。特別地,圖1示出了用于提供查詢建議的系統(tǒng)100的方面。系統(tǒng)100包括與數(shù)據(jù)處理系統(tǒng)140可操作通信的一個或多個客戶端計算機101A和101B(其在本文中可以單數(shù)形式稱為“客戶端101”和/或以復(fù)數(shù)形式稱為“多個客戶端101”)。客戶端101可以是任何適合的計算機系統(tǒng),包括但不限于,臺式或膝上型個人計算機、平板計算設(shè)備、智能手機、其它類型的移動設(shè)備,或類似設(shè)備。
客戶端101可以被配置成執(zhí)行軟件產(chǎn)品,諸如提供用于訪問數(shù)據(jù)處理系統(tǒng)140中所存儲的信息的查詢的創(chuàng)建、編輯和提交的用戶接口102的應(yīng)用103。在這方面,客戶端101可以提供一個或多個查詢120A且響應(yīng)于查詢而接收查詢結(jié)果121A。在一些配置中,查詢120A可以被提交以經(jīng)由網(wǎng)絡(luò)(圖1中未示出)傳輸。網(wǎng)絡(luò)可以包括計算機通信網(wǎng)絡(luò),諸如因特網(wǎng)、局域網(wǎng)(“LAN”)、廣域網(wǎng)(“WAN”)或任何其它類型的網(wǎng)絡(luò),并且可用于提交查詢120A到數(shù)據(jù)處理系統(tǒng)140以便進行查詢處理,并且隨后,返回查詢結(jié)果121A。查詢120A的提交以及查詢結(jié)果121A的返回將在下文參考圖2進行更全面地說明。
如圖1所示,查詢120B和非查詢數(shù)據(jù)124可以由一個或多個客戶端101提交以便傳輸?shù)綌?shù)據(jù)處理系統(tǒng)140。查詢120B可以包括部分查詢陳述、完整查詢陳述或其任意組合。查詢120B還可以包括與當前通過本文所公開的機制提供的建議來處理或構(gòu)建的部分的或新的查詢有關(guān)的信息。
非查詢數(shù)據(jù)124可以包括上下文信息、標識信息、用戶簡檔數(shù)據(jù)或查詢120B中沒有包含的任何其它適合的信息。在一些實現(xiàn)方式中,非查詢數(shù)據(jù)124還可以包括與客戶端101處的活動有關(guān)的元數(shù)據(jù)。例如,非查詢數(shù)據(jù)124可以描述與數(shù)據(jù)處理系統(tǒng)140或數(shù)據(jù)源141處的訪問有關(guān)的活動、與其它用戶或客戶端的聯(lián)系或通信有關(guān)的活動或者能夠進而用來更精確地確定查詢建議125的其它類似的活動。
根據(jù)至少一個配置,非查詢數(shù)據(jù)124包括描述客戶端101的用戶的數(shù)據(jù),諸如雇傭數(shù)據(jù)、雇員標識數(shù)據(jù)、雇員群/委員會數(shù)據(jù)以及其它類似的數(shù)據(jù)。在另一配置中,非查詢數(shù)據(jù)124包括描述客戶端101的用戶的當前或預(yù)測的活動的數(shù)據(jù),諸如例如描述用戶或類似用戶的典型的數(shù)據(jù)源利用的數(shù)據(jù)、描述用戶或類似用戶的典型的查詢結(jié)構(gòu)的數(shù)據(jù)以及其它類似的數(shù)據(jù)。另外,在一些實現(xiàn)方式中非查詢數(shù)據(jù)124可包括企業(yè)或公司信息。非查詢數(shù)據(jù)124還可以包括在查詢120B中沒有包含的其它數(shù)據(jù)形式,而不背離本公開的范圍。
如下文詳述的,非查詢數(shù)據(jù)124可用于標識由用戶或客戶端101所創(chuàng)建的、與用戶或客戶端101希望創(chuàng)建新查詢有關(guān)的查詢。響應(yīng)于非查詢數(shù)據(jù)124的傳輸,一個或多個查詢建議125可以返回到客戶端101。另外,在選擇了任意查詢建議125時,查詢120B可被更新以反映選擇和/或變化,并且傳輸?shù)綌?shù)據(jù)處理系統(tǒng)140。此后,可以將附加查詢建議125連同查詢結(jié)果121B一起提供給客戶端101。非查詢數(shù)據(jù)124的提交、查詢120B以及查詢建議125的返回將在下文參考圖3-4更全面地說明。
如圖1所示,數(shù)據(jù)處理系統(tǒng)140包括多個組件,所述多個組件被配置成實施如本文所描述的與處理和存儲查詢120、處理非查詢數(shù)據(jù)124、返回查詢結(jié)果121和查詢建議125有關(guān)的處理功能,以及其它功能。例如,數(shù)據(jù)處理系統(tǒng)140可被配置成接收并處理在多個數(shù)據(jù)源141(其在本文中以單數(shù)形式稱為“數(shù)據(jù)源141”和/或以復(fù)數(shù)形式稱為“多個數(shù)據(jù)源141”)中的一個或多個數(shù)據(jù)源處的查詢120。
一般地,數(shù)據(jù)源141接收查詢120A,基于本文所包含的查詢陳述來執(zhí)行查詢,并且返回查詢結(jié)果121A。此外,根據(jù)本文所呈現(xiàn)的技術(shù)的方面,在先查詢信息142可以被擴增描述與先前的查詢相關(guān)聯(lián)的非查詢數(shù)據(jù)124的先前查詢和/或元數(shù)據(jù)。因此,查詢120A的至少一部分可以連同與客戶端101及其用戶相關(guān)聯(lián)的非查詢數(shù)據(jù)124一起被存儲為在先查詢信息142。雖然描述為“在先”查詢信息,但是應(yīng)當理解的是,在先查詢信息142還可以包括一組基本查詢陳述、反映一些非查詢數(shù)據(jù)124的一組預(yù)擴增查詢陳述、一組缺省查詢陳述和/或不直接地基于先前提交的或完成的查詢120A的任何其它查詢信息。
值得注意的是,能夠根據(jù)一些配置來持續(xù)地執(zhí)行上述與數(shù)據(jù)源141和在先查詢信息142有關(guān)的動作。因此,隨著新的查詢120被接收到,除了上述基本信息之外,所提交的查詢的一個或多個部分可以被存儲為在先查詢信息142,用于提供如下文所描述的查詢建議125。
如圖1所示,數(shù)據(jù)處理系統(tǒng)140包括在一個配置中執(zhí)行于其中的查詢建議服務(wù)層143。查詢建議服務(wù)層143是軟件服務(wù)或應(yīng)用,并且在一些實現(xiàn)方式中可以單獨地集成在每個數(shù)據(jù)源141(未示出)內(nèi)。然而,在一些實現(xiàn)方式中查詢建議服務(wù)層143還可以作為獨立的查詢建議服務(wù)層(如圖所示)來執(zhí)行。
查詢建議服務(wù)層143被配置成處理接收到的非查詢數(shù)據(jù)124,以及基于查詢120B、非查詢數(shù)據(jù)124和所存儲的在先查詢信息142來生成查詢建議125。查詢建議服務(wù)層143將非查詢數(shù)據(jù)124中的信息進行比較以返回初始查詢建議125。初始查詢建議125可以是部分或完整的查詢陳述、分類陳述、過濾陳述或查詢的另一部分。在一些實現(xiàn)方式中,初始查詢建議125可以被提供作為用戶接口(UI)元件。
查詢建議服務(wù)層143可以持續(xù)地處理非查詢數(shù)據(jù)124、查詢120和所存儲的在先查詢信息142以主動地對潛在查詢建議進行評分或排序。排序可以基于如下置信度量:特定查詢建議基于非查詢數(shù)據(jù)124、查詢120和在先查詢信息142而與用戶相關(guān)。因此,一個或多個查詢建議125可以生成,被排序,并且其部分(或其中至少一個)可以作為初始查詢建議125而呈現(xiàn)??商娲?,多個排序后的查詢建議可以被提供作為一組初始查詢建議125。
在接受、選擇了初始建議或者對初始建議采取其它措施時,查詢建議服務(wù)層143能夠提供附加查詢建議125,使得由單獨的建議、用戶所提供的新的查詢陳述部分120B或其任意組合來構(gòu)建查詢。一般地,初始查詢建議125和附加查詢建議125可以通過將元數(shù)據(jù)或查詢120與在先查詢信息142和/或在先元數(shù)據(jù)信息進行比較和/或匹配來確定。因此,隨著新的建議125被選擇且查詢120B被操縱,基于所應(yīng)用的建議來生成附加建議。參考圖4A-4D來更完整地描述通過上述的建議125構(gòu)建查詢120B。
現(xiàn)在參考圖2,將提供關(guān)于數(shù)據(jù)處理系統(tǒng)140進行的查詢處理以及采集和存儲在先查詢信息142的另外的細節(jié)。特別地,圖2是示出了在本文呈現(xiàn)的一個配置中用于數(shù)據(jù)查詢120的處理的一個示例性的方法200的各方面的流程圖。
如圖所示,方法200包括:在框202處,接收來自客戶端計算機101的查詢120A。例如,在圖1所示的示例中,接收到的查詢120A涉及到至少一個數(shù)據(jù)源141。因此,在該示例中,數(shù)據(jù)源141接收并處理查詢120A以產(chǎn)生查詢結(jié)果121A。
另外地,響應(yīng)于查詢120A的接收,方法200還包括:在框204處,采集與客戶端計算機101有關(guān)的非查詢數(shù)據(jù)124。非查詢數(shù)據(jù)124可以呈上述任意形式,并且可由目標數(shù)據(jù)源141采集來存儲作為在先查詢信息142。在框206處,在采集非查詢數(shù)據(jù)124時,接收到的和/或處理的查詢120A的至少一部分和所采集的非查詢數(shù)據(jù)124可以被存儲作為在先查詢信息142。如上文關(guān)于框202-206所描述的,可以接收并處理附加的查詢120。如上所述,與客戶端101和查詢120A有關(guān)的非查詢數(shù)據(jù)124的至少一部分被存儲為在先查詢信息142。所存儲的數(shù)據(jù)能夠如下所述使用來基于新采集的非查詢數(shù)據(jù)124和/或查詢120B生成查詢建議125。
現(xiàn)在轉(zhuǎn)到圖3,將提供關(guān)于本文呈現(xiàn)的用于提供一個或多個查詢建議125的技術(shù)的附加細節(jié)。特別地,圖3是示出了用于通過查詢建議服務(wù)層143處理非查詢數(shù)據(jù)124的一個示例性的方法300的方面的流程圖。
方法300包括:在框302處,接收來自客戶端101的查詢120B。雖然被描述為接收實際的查詢120B,應(yīng)當理解的是,方法300以及框302可以適于通過文件的打開、先前查詢的打開、對缺省查詢的動作、對數(shù)據(jù)文件的動作或通過客戶端101、應(yīng)用102和/或用戶接口102的任何其它適合的動作而開始執(zhí)行。因此,框302還可以包括:檢測數(shù)據(jù)源141處的訪問、客戶端101的初始化、應(yīng)用103的初始化或通過用戶接口102的另一類型的動作。在數(shù)據(jù)源141處的訪問可以涵蓋:通過例如用戶接口102請求訪問存儲在數(shù)據(jù)源141處的數(shù)據(jù)、在查詢陳述的部分中輸入變元(argument)、或其它適合方式的數(shù)據(jù)訪問。
方法300還包括:在框304處,采集非查詢數(shù)據(jù)124和/或處理查詢120B。例如,可以在查詢建議服務(wù)層143處接收與客戶端101和/或其用戶有關(guān)的非查詢數(shù)據(jù)124。此后,在框306處,查詢建議服務(wù)層143能夠分析非查詢數(shù)據(jù)124、查詢120B和/或在先查詢信息142來確定初始查詢建議125。在框308處,初始查詢建議125提供給客戶端101。
在客戶端101對初始查詢建議125動作時,查詢建議服務(wù)層143可以基于非查詢數(shù)據(jù)124、查詢120B和/或在先查詢信息142來提供附加查詢建議125。例如,在框310中,查詢建議服務(wù)層143或數(shù)據(jù)源141可以確定,在提供查詢建議125之后,查詢變化是明顯的。當已經(jīng)檢測到查詢變化時,在框312中變化應(yīng)用于查詢120B,并且在框304中處理查詢120B??商娲兀诳?10可能沒有檢測到查詢變化,方法可以繼續(xù)接收用于確定新的查詢建議125的信息。來自處理后的查詢120B和非查詢數(shù)據(jù)124的信息隨后可用于通過框306-312的迭代來確定新的查詢建議125。
注意的是,根據(jù)一些實現(xiàn)方式,可以僅提供基于非查詢數(shù)據(jù)124的初始查詢建議125。根據(jù)其它的實現(xiàn)方式,還可以提供查詢建議125的附加迭代。另外地,在客戶端101處所作用于的查詢建議125可以由用戶操縱,從而創(chuàng)建新的查詢120B以便用于新的查詢建議125。通過這種方式,與客戶端101處的動作有關(guān)的許多不同的查詢建議125、查詢120B和/或非查詢數(shù)據(jù)124可以由查詢建議服務(wù)層143來提供,并且可以構(gòu)建許多不同的查詢。
查詢建議125可以呈現(xiàn)為各種形式。例如,查詢建議125可以包括文本提示,諸如用于通過用戶接口102所創(chuàng)建的文本查詢陳述的一部分的自動文本填充建議。查詢建議125可能包括通過用戶接口102渲染的UI元件。UI元件可以包括任何期望的圖形元件,并且可以完全地或者部分地描述查詢建議125。
在客戶端101對查詢建議125動作時,用戶接口102可以基于該動作至少部分地渲染查詢建議125的結(jié)果。例如,如果選定了特定的查詢建議125,則選擇的結(jié)果可以至少部分地通過用戶接口102來渲染。此外,例如通過用戶接口102的操縱或其中所渲染的單個元件的操縱,全部或部分結(jié)果的操縱也是可能的。下面參考圖4A-4D來描述示例性的用戶接口和單獨的UI元件。
圖4A-4D是示出了根據(jù)本文所呈現(xiàn)的多個配置的由示例性的應(yīng)用103提供的示例性的用戶接口的方面的用戶接口圖。關(guān)于圖4A-4D所描述的用戶接口可以類似于對一個或多個數(shù)據(jù)源和/或數(shù)據(jù)處理系統(tǒng)具有訪問權(quán)的、用于電子表格應(yīng)用的電子表格接口來布置。其它用戶接口也是能應(yīng)用的,并且因此,本公開不限于所圖示的特定形式的接口,而是任何可用的用戶接口。
轉(zhuǎn)到圖4A,將描述用于呈現(xiàn)查詢建議的示例性的用戶接口102。如圖所示,用戶接口102包括表示數(shù)據(jù)目標141處通過查詢120所訪問的數(shù)據(jù)字段的多個列401。在該示例中,查詢120包括“ID信息+姓名”。查詢的數(shù)據(jù)在圖4A中以行顯示。然而,應(yīng)當理解的是,可以實現(xiàn)任何期望形式的數(shù)據(jù)顯示,而不偏離本公開的范圍。例如,透視表、圖表、繪圖或任何其它能通過接口102顯示的適合的查詢結(jié)構(gòu)或元件是可應(yīng)用的。因此,本文所呈現(xiàn)的技術(shù)的一些實現(xiàn)方式可以偏離所圖示的那些特定形式,而不偏離本公開的范圍。此外,雖然圖示為包括通過查詢的至少部分處理所訪問的數(shù)據(jù)字段,但是這些可以變化而使得初始地不呈現(xiàn)數(shù)據(jù)字段,例如,如果打開新的文檔或空白文檔。
用戶接口102還包括其中所渲染的查詢建議UI元件403。查詢建議UI元件403可以針對如上所述的對數(shù)據(jù)源141的訪問或訪問請求發(fā)信號。另外地,或者以替代的形式,查詢建議UI元件403可以針對查詢建議125的請求發(fā)信號。此外,查詢建議UI元件403可以指示,新的查詢建議125可通過元件403的選定而供用戶使用。例如,查詢建議服務(wù)層143可能已經(jīng)持續(xù)地對一個或多個查詢建議125進行計算、排序和確定以便用戶消費。在用戶選定了查詢建議UI元件403時,查詢建議服務(wù)層143可以提供一個或多個查詢建議125,如圖4B所示。
圖4B的用戶接口102A包括其中所渲染的兩個查詢建議125A和125B。應(yīng)當理解的是,還能夠?qū)崿F(xiàn)查詢建議125的可替代的加標簽,諸如例如包括表示查詢建議125的實際內(nèi)容的標記的加標簽。例如,查詢建議125A可以包括訪問加標簽為“任務(wù)信息(Job Info)”的數(shù)據(jù)字段。另外,查詢建議125B可以包括訪問加標簽為“地址(Address)”的數(shù)據(jù)字段。
一般地,查詢建議125A和125B以及本文所描述的其它查詢建議125可以至少部分地基于非查詢數(shù)據(jù)124。如上所述,非查詢數(shù)據(jù)可以呈現(xiàn)為各種形式,包括雇傭數(shù)據(jù)。在該特定的示例中,非查詢數(shù)據(jù)124可以指示接口102A的用戶屬于特定組的雇員。此外,特定組的雇員可以定期地生成包括“地址”和“任務(wù)信息”的查詢。因此,如該示例所示的,查詢建議125A和125B至少部分地基于特定組的雇員的成員將通常在查詢中包含“地址”和/或“任務(wù)信息”的可能性。易于理解的是,考慮到非查詢數(shù)據(jù)124的其它形式和方式也是可應(yīng)用的。此后,如果查詢建議125A被選定,則名稱為“任務(wù)信息”的數(shù)據(jù)字段可以附到查詢上且呈現(xiàn)在用戶接口102B中,如圖4C所示。
如圖4C所示,用戶接口102B包括其中所渲染的、鄰近列401A和列401B的先前數(shù)據(jù)域的查詢建議125A。因此,已經(jīng)構(gòu)建了具有在列401A-401C中顯示的結(jié)果的新查詢120。另外形式的查詢建議125是可能的。例如,查詢建議125C和125D可以包括作用于查詢和所顯示的數(shù)據(jù)字段的過濾和/或分類。在該特定的示例中,查詢建議125C表示基于列401B的特定姓名(例如,J.Doe)對顯示數(shù)據(jù)的過濾。例如,查詢建議125C可以表示按“姓名=J.Doe”過濾、或者另一類似的建議。其它過濾建議可以包括隱藏過濾選項和組合的過濾器變元。例如,雖然列“狀態(tài)(Status)”沒有圖示為渲染于用戶接口102B中,但是查詢建議125C可能表示按“狀態(tài)=活躍”過濾或者其它取決于非查詢數(shù)據(jù)124、選定的查詢建議125和/或在先查詢信息142的類似的過濾選項和變元。
如進一步圖示出的,查詢建議125D表示基于“任務(wù)信息”中的信息對所顯示數(shù)據(jù)的分類。取決于非查詢數(shù)據(jù)124、選定的查詢建議125和/或在先查詢信息142,其它分類變元也是可應(yīng)用的。因此,如果查詢建議125D被選定,則通過分類操作422基于“任務(wù)信息”對用戶接口102B處所顯示的數(shù)據(jù)進行分類,如圖4D所示。
圖4D所示的用戶接口102C顯示出數(shù)據(jù)分類操作422和分類結(jié)果。另外,可以渲染更多的查詢建議UI元件403以指示新的查詢建議,用于新的查詢建議的請求,用于附加查詢建議的請求,或者其它適合的動作或指示。
應(yīng)當意識到,上文所描述以及本文其它地方所描述的邏輯操作可以實現(xiàn)為(1)運行于計算系統(tǒng)上的計算機實現(xiàn)的動作或程序模塊的序列,和/或(2)在計算系統(tǒng)內(nèi)的互連的機器邏輯電路或電路模塊。實現(xiàn)方式是取決于計算系統(tǒng)的性能和其它要求的選擇問題。因此,本文所描述的邏輯操作多樣地稱為狀態(tài)操作、結(jié)構(gòu)設(shè)備、動作或模塊。這些操作、結(jié)構(gòu)設(shè)備、動作和模塊可以用軟件、用固件、用專用數(shù)字邏輯及其任意組合來實現(xiàn)。還應(yīng)當意識到,可以執(zhí)行比圖中所示和本文所描述的更多或更少的操作。這些操作還可以按不同于本文所描述的順序來執(zhí)行。
圖5示出了能夠執(zhí)行本文所描述的用于提供查詢建議的軟件組件的設(shè)備的示例性的計算機架構(gòu)500。因此,圖5所示的計算機架構(gòu)500示出了用于服務(wù)器計算機、移動電話、PDA、智能手機、臺式計算機、上網(wǎng)本計算機、平板計算機和/或膝上型計算機的架構(gòu)。計算機架構(gòu)500可用于執(zhí)行本文所呈現(xiàn)的軟件組件的任意方面。
圖5所示的計算機架構(gòu)500包括中央處理器502(“CPU”)、包括隨機存取存儲器506(“RAM”)和只讀存儲器(“ROM”)508的系統(tǒng)存儲器504以及將存儲器504與CPU 502耦合的系統(tǒng)總線510。包含了例如在啟動期間幫助在計算機架構(gòu)500內(nèi)的元件之間傳輸信息的基本例程的基本輸入/輸出系統(tǒng)存儲在ROM 508中。計算機架構(gòu)500還包括大容量存儲設(shè)備512,其用于存儲操作518以及包括但不限于查詢建議服務(wù)層143和在先查詢信息142的一個或多個應(yīng)用程序。
大容量存儲設(shè)備512通過與總線510連接的大容量存儲控制器(未示出)來與CPU 502連接。大容量存儲設(shè)備512及其相關(guān)聯(lián)的計算機可讀介質(zhì)提供了用于計算機架構(gòu)500的非易失性存儲。雖然在本文所包含的計算機可讀介質(zhì)的描述是指大容量存儲設(shè)備,如硬盤或CD-ROM驅(qū)動器,本領(lǐng)域技術(shù)人員應(yīng)當意識到計算機可讀介質(zhì)可以是能夠由計算機架構(gòu)500訪問的任何可用的計算機存儲介質(zhì)或通信介質(zhì)。
通信介質(zhì)可包括計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或調(diào)制數(shù)據(jù)信號中的其它數(shù)據(jù)如載波或其他傳輸機制并且包括任何輸送介質(zhì)。術(shù)語“調(diào)制數(shù)據(jù)信號”是指其一個或多個特性以將信息編碼到信號中的方式進行設(shè)定或改變的信號。通過示例而不是限制的方式,通信介質(zhì)包括諸如有線網(wǎng)或直接連線連接的有線介質(zhì)以及諸如聲波、RF、紅外和其他無線介質(zhì)的無線介質(zhì)。上述任意的組合也應(yīng)當包含在計算機可讀介質(zhì)的范圍內(nèi)。
通過舉例而不是限制的方式,計算機存儲介質(zhì)可以包括以用于諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的存儲的任何方法或技術(shù)實現(xiàn)的易失性和非易失性的、可移除和非可移除的介質(zhì)。例如,計算機介質(zhì)包括但不限于RAM、ROM、EPROM、EEPROM、閃速存儲器或其它固態(tài)存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(“DVD”)、HD-DVD、BLU-RAY或其它光存儲、磁盒、磁帶、磁盤存儲或其它磁存儲設(shè)備、或者能夠用于存儲所需的信息且能夠由計算機架構(gòu)500訪問的任何其它介質(zhì)。為了權(quán)利要求的目的,措辭“計算機存儲介質(zhì)”及其變化不包含波或信號本身和/或通信介質(zhì)。
根據(jù)各個實施例,計算機架構(gòu)500可以使用通過諸如網(wǎng)絡(luò)104的網(wǎng)絡(luò)到遠程計算機的邏輯連接而操作于網(wǎng)絡(luò)環(huán)境中。計算機架構(gòu)500可以通過與總線510連接的網(wǎng)絡(luò)接口單元516而連接到網(wǎng)絡(luò)104。應(yīng)當意識到,網(wǎng)絡(luò)接口單元516可以用來連接到其它類型的網(wǎng)絡(luò)以及例如數(shù)據(jù)處理系統(tǒng)140和/或客戶端101的遠程計算機系統(tǒng)。計算機架構(gòu)500還包括用于接收和處理來自包括鍵盤、鼠標或電子指示筆(圖5中未示出)的多個其它設(shè)備的輸入的輸入/輸出控制器518。類似地,輸入/輸出控制器518可以提供輸出給顯示屏、打印機或其它類型的輸出設(shè)備(圖5中也未示出)。
應(yīng)當意識到,本文所描述的軟件組件在裝載到CPU 502中且執(zhí)行時可以將CPU 502和整個計算機架構(gòu)500從通用計算系統(tǒng)變換成經(jīng)定制而促進本文呈現(xiàn)的功能的專用計算系統(tǒng)。CPU 502可以由任意數(shù)量的晶體管或其它離散電路元件構(gòu)成,這些晶體管和離散電路元件可以單獨地或者統(tǒng)一地呈現(xiàn)任意數(shù)量的狀態(tài)。更具體地,CPU 502可以響應(yīng)于包含在本文公開的軟件模塊內(nèi)的可執(zhí)行指令而作為有限狀態(tài)機來操作。這些計算機可執(zhí)行指令可以通過規(guī)定CPU 502如何在狀態(tài)之間轉(zhuǎn)變而變換CPU 502,從而變換構(gòu)成CPU 502的晶體管或其它離散硬件元件。
對本文呈現(xiàn)的軟件模塊編碼也可以變換本文呈現(xiàn)的計算機可讀介質(zhì)的物理結(jié)構(gòu)。在本說明書的不同的實現(xiàn)方式中,物理結(jié)構(gòu)的具體的變換可以取決于各種因素。這些因素的示例可以包括但不限于用來實現(xiàn)計算機可讀介質(zhì)的技術(shù),計算機可讀介質(zhì)是否表征為主存儲或輔存儲,等等。例如,如果計算機可讀介質(zhì)實現(xiàn)為基于半導(dǎo)體的存儲器,則本文公開的軟件可以通過變換半導(dǎo)體存儲器的物理狀態(tài)而編碼到計算機可讀介質(zhì)上。例如,軟件可以變換構(gòu)成半導(dǎo)體存儲器的晶體管、電容器、或其它離散電路元件的狀態(tài)。軟件還可以變換這些組件的物理狀態(tài)從而在其中存儲數(shù)據(jù)。
作為另一示例,本文所公開的計算機可讀介質(zhì)可以利用磁或光技術(shù)來實現(xiàn)。在這些實現(xiàn)方式中,當軟件編碼到其中時,本文所呈現(xiàn)的軟件可以變換磁或光介質(zhì)的物理狀態(tài)。這些變換可以包括改變在給定磁介質(zhì)內(nèi)的特定位置的磁特性。這些變換還可以包括改變在給定的光介質(zhì)內(nèi)的特定位置的物理特征或特性,以改變那些位置的光學特性。物理介質(zhì)的其它變換是可能的,不偏離本說明書的范圍和主旨,提供了上述示例僅為了利于該論述。
根據(jù)上述,應(yīng)當意識到,許多類型的物理變換發(fā)生在計算機架構(gòu)500內(nèi)從而存儲和執(zhí)行本文呈現(xiàn)的軟件組件。還應(yīng)當意識到,計算機架構(gòu)500可以包括其它類型的計算設(shè)備,包括手持式計算機、嵌入式計算機系統(tǒng)、個人數(shù)字助理以及本領(lǐng)域技術(shù)人員所知的其它類型的計算設(shè)備。還可想到,計算機架構(gòu)500可以不包括圖5所示的全部組件,可以包括圖5中未明確示出的其它組件,或者可以使用完全不同于圖5所示的架構(gòu)。
圖6示出了能夠執(zhí)行本文所述的用于提供查詢建議的軟件組件的示例性的分布式計算環(huán)境600。因此,圖6所示的分布式計算環(huán)境600能夠用于提供本文關(guān)于系統(tǒng)100所描述的功能。因此,分布式計算環(huán)境600可用于執(zhí)行本文呈現(xiàn)的軟件組件的任意方面。
根據(jù)各個實現(xiàn)方式,分布式計算環(huán)境600包括操作于網(wǎng)絡(luò)604上、與網(wǎng)絡(luò)604通信或者作為網(wǎng)絡(luò)604的部分而操作的計算環(huán)境602。網(wǎng)絡(luò)604還可以包括各種訪問網(wǎng)絡(luò)。一個或多個客戶端設(shè)備606A-606N(下文統(tǒng)一地和/或一般地稱為“客戶端606”)能夠經(jīng)由網(wǎng)絡(luò)604和/或其它連接(圖6中未示出)與計算環(huán)境602通信。在圖示的實施例中,客戶端606包括計算設(shè)備606A,諸如膝上型計算機、臺式計算機或其它計算設(shè)備;片式或平板式計算設(shè)備(“平板計算設(shè)備”)606B;移動計算設(shè)備606C,如移動電話、智能手機或其它移動計算設(shè)備;服務(wù)器計算機606D;和/或其它設(shè)備606N。應(yīng)當理解的是,任意數(shù)量的客戶端606能夠與計算環(huán)境602通信。本文參考圖5和圖7描述了和圖示出客戶端606的兩個示例的計算架構(gòu)。應(yīng)當理解的是,圖示的客戶端606和本文所圖示和描述的計算架構(gòu)是示例性的,而不應(yīng)解釋為以任何方式限制。
在圖示的實施例中,計算環(huán)境602包括應(yīng)用服務(wù)器608、數(shù)據(jù)存儲610以及一個或多個網(wǎng)絡(luò)接口612。根據(jù)各個實現(xiàn)方式,應(yīng)用服務(wù)器608的功能可以由作為網(wǎng)絡(luò)604的部分執(zhí)行或者與網(wǎng)絡(luò)604通信的一個或多個服務(wù)器計算機來提供。應(yīng)用服務(wù)器608能夠托管各種服務(wù)、虛擬機、門戶和/或其它資源。在圖示的實施例中,應(yīng)用服務(wù)器608托管了用于托管應(yīng)用或其它功能的一個或多個虛擬機614。根據(jù)各個實現(xiàn)方式,虛擬機614托管了用于提供本文所描述的用于提供查詢建議的功能的一個或多個應(yīng)用和/或軟件模塊。應(yīng)當理解的是,該實施例是示例性的,而不應(yīng)解釋為以任何方式限制。應(yīng)用服務(wù)器608還托管或提供對一個或多個Web門戶、鏈接頁面、Web站點和/或其它信息(“Web門戶”)616的訪問。
根據(jù)各個實現(xiàn)方式,應(yīng)用服務(wù)器608還包括一個或多個郵箱服務(wù)618和一個或多個消息傳遞服務(wù)620。郵箱服務(wù)618可以包括電子郵件(“email”)服務(wù)。郵箱服務(wù)618還可以包括各種個人信息管理(“PIM”)服務(wù),包括但不限于日歷服務(wù)、通訊錄管理服務(wù)、協(xié)作服務(wù)和/或其它服務(wù)。消息傳遞服務(wù)620可以包括但不限于即時消息傳遞服務(wù)、聊天服務(wù)、論壇服務(wù)和/或其它通信服務(wù)。
應(yīng)用服務(wù)器608還可以包括一個或多個社交聯(lián)網(wǎng)服務(wù)622。社交聯(lián)網(wǎng)服務(wù)622可以包括各種社交聯(lián)網(wǎng)服務(wù),包含但不限于,用于共享或張貼狀態(tài)更新、即時消息、鏈接、照片、視頻和/或其它信息的服務(wù);用于評論或顯示對文章、產(chǎn)品、博客或其它資源的興趣的服務(wù);和/或其它服務(wù)。在一些實施例中,社交聯(lián)網(wǎng)服務(wù)622由如下提供或包含如下:FACEBOOK社交聯(lián)網(wǎng)服務(wù),LINKEDIN專業(yè)聯(lián)網(wǎng)服務(wù),MYSPACE社交聯(lián)網(wǎng)服務(wù),F(xiàn)OURSQUARE地理聯(lián)網(wǎng)服務(wù),YAMMER辦公同事聯(lián)網(wǎng)服務(wù),等等。在其它實施例中,社交聯(lián)網(wǎng)服務(wù)622由其它可能或可能沒有明確地表明為社交聯(lián)網(wǎng)提供商的服務(wù)、站點和/或提供商來提供。例如,一些網(wǎng)站允許用戶在例如閱讀出版物,評論商品或服務(wù),發(fā)布,協(xié)作,游戲等各種活動和/或背景下經(jīng)由電子郵件、聊天服務(wù)和/或其它手段彼此交互。這些服務(wù)的示例包括但不限于來自華盛頓埃德蒙頓的微軟公司的WINDOWS LIVE服務(wù)和XBOX LIVE服務(wù)。其它服務(wù)是可能的且可想到。
社交聯(lián)網(wǎng)服務(wù)622還可以包括評論、發(fā)博客和/或微博服務(wù)。這些服務(wù)的示例包括但不限于,YELP評論服務(wù)、KUDZU審閱服務(wù)、OFFICETALK企業(yè)微博服務(wù)、TWITTER消息傳遞服務(wù)、GOOGLE BUZZ服務(wù)和/或其它服務(wù)。應(yīng)當意識到,上述服務(wù)列表不是窮盡的,而且為了簡要起見在此沒有提到若干的附加的和/或可替代的社交聯(lián)網(wǎng)服務(wù)622。因此,上述實施例是示例性的,而不應(yīng)解釋為以任何方式進行限制。
如圖6所示,應(yīng)用服務(wù)器608還能夠托管其它服務(wù)、應(yīng)用、門戶和/或其它資源(“其它資源”)624。其它資源624可以包括但不限于,數(shù)據(jù)源141、在先查詢信息142和/或查詢建議服務(wù)層143。因此,應(yīng)當意識到計算環(huán)境602能夠提供本文所提供的用于提供查詢建議的本文公開的構(gòu)思和技術(shù)與各種郵箱、消息傳遞、社交聯(lián)網(wǎng)和/或其它服務(wù)或資源的整合。例如,本文所公開的構(gòu)思和技術(shù)可以使用社交聯(lián)網(wǎng)或其它信息作為非查詢數(shù)據(jù)124的部分而使得至少初始查詢建議125可以基于用來匹配在先查詢信息142的個人信息。此外,雖然通過措辭“查詢”來描述,應(yīng)當意識到,其它形式的搜索是可應(yīng)用的而使得查詢建議125可以具體體現(xiàn)為用于搜索引擎的搜索項、用于學校項目的數(shù)據(jù)字段以及其它形式的查詢建議。
如上所述,計算環(huán)境602可以包括數(shù)據(jù)存儲610。根據(jù)各個實現(xiàn)方式,數(shù)據(jù)存儲610的功能由操作于網(wǎng)絡(luò)604上或者與網(wǎng)絡(luò)604通信的一個或多個數(shù)據(jù)庫來提供。數(shù)據(jù)存儲610的功能還能夠由被配置成托管用于計算環(huán)境602的數(shù)據(jù)的一個或多個服務(wù)器計算機來提供。數(shù)據(jù)存儲610可以包括、托管或提供一個或多個真實的或虛擬的數(shù)據(jù)倉庫626A-626N(下文統(tǒng)一地和/或一般地稱為“數(shù)據(jù)倉庫626”)。數(shù)據(jù)倉庫626被配置成托管由應(yīng)用服務(wù)器608所使用或創(chuàng)建的數(shù)據(jù)和/或其它數(shù)據(jù)。
計算環(huán)境602能夠與網(wǎng)絡(luò)接口612通信或者由網(wǎng)絡(luò)接口612訪問。網(wǎng)絡(luò)接口612可以包括用于支持包括但不限于客戶端606和應(yīng)用服務(wù)器608的兩個或更多個計算設(shè)備之間的通信的各種類型的網(wǎng)絡(luò)硬件和軟件。應(yīng)當意識到,網(wǎng)絡(luò)接口612還可以用來連接到其它類型的網(wǎng)絡(luò)和/或計算機系統(tǒng)。
應(yīng)當理解的是,本文所描述的分布式計算環(huán)境600能夠向本文所描述的軟件元件的任意方面提供能夠被配置成執(zhí)行本文公開的軟件組件的任意方面的任意數(shù)量的虛擬計算資源和/或其它分布式計算功能。根據(jù)本文公開的構(gòu)思和技術(shù)的各個實現(xiàn)方式,分布式計算環(huán)境600提供了在本文描述為對客戶端606的服務(wù)的軟件功能。應(yīng)當理解的是,客戶端606可以包括真實的或虛擬的機器,包括但不限于服務(wù)器計算機、web服務(wù)器、個人計算機、移動計算設(shè)備、智能手機和/或其它設(shè)備。因此,本文所公開的構(gòu)思和技術(shù)的各種實施例使得被配置成訪問分布式計算環(huán)境600的任何設(shè)備能夠使用本文所描述的用于提供查詢建議的功能。
現(xiàn)在轉(zhuǎn)到圖7,能夠執(zhí)行本文所描述的用于提供查詢建議的各種軟件組件的計算設(shè)備的示例性的計算設(shè)備架構(gòu)700。計算設(shè)備架構(gòu)700能應(yīng)用于部分地由于形狀因數(shù)、無線連接能力和/或電池供電操作而促進移動計算的計算設(shè)備。在一些實施例中,計算設(shè)備包括但不限于移動電話、平板式設(shè)備、片式設(shè)備、便攜式視頻游戲設(shè)備等。而且,計算設(shè)備架構(gòu)700能應(yīng)用于圖6所示的任意客戶端706。此外,計算設(shè)備架構(gòu)700的方面可以能應(yīng)用于傳統(tǒng)的臺式計算機、便攜式計算機(例如,膝上型設(shè)備、筆記本設(shè)備、超級便攜式設(shè)備和上網(wǎng)本)、服務(wù)器計算機和其它計算機系統(tǒng),如本文參考圖5所描述的。例如,下文所公開的單觸摸和多觸摸方面可應(yīng)用于使用觸摸屏的臺式計算機或某種其它觸摸使能設(shè)備,諸如觸摸使能跟蹤墊或觸摸使能鼠標。
圖7所示的計算設(shè)備架構(gòu)700包括處理器702、存儲器組件704、網(wǎng)絡(luò)連接組件706、傳感器組件708、輸入/輸出組件710和電力組件712。在圖示的實施例中,處理器702與存儲器組件704、網(wǎng)絡(luò)連接組件706、傳感器組件708、輸入/輸出(“I/O”)組件710和電力組件712通信。雖然沒有示出圖7所示的各個組件之間的連接,該組件能夠交互而實施設(shè)備功能。在一些實施例中,組件被配置成經(jīng)由一個或多個總線(未示出)通信。
處理器702包括中央處理單元(“CPU”),其被配置成處理數(shù)據(jù),執(zhí)行一個或多個應(yīng)用程序的計算機可執(zhí)行指令,并且與計算設(shè)備架構(gòu)700的其它組件通信從而實施本文所描述的各種功能。處理器702可以用來執(zhí)行本文所呈現(xiàn)的軟件組件的方面,尤其是那些至少部分地使用觸摸使能輸入的方面。
在一些實施例中,處理器702包括圖形處理單元(“GPU”),其被配置成加速CPU所執(zhí)行的操作,包括但不限于,通過執(zhí)行通用科學與工程計算應(yīng)用所實施的操作,以及諸如高分辨率視頻(例如,720P,1080P和更大)、視頻游戲、三維(“3D”)建模應(yīng)用等的圖形密集計算應(yīng)用。在一些實施例中,處理器702被配置成與分立的GPU(未示出)通信。在任何情況下,CPU和GPU可以依照協(xié)處理CPU/GPU計算模型來配置,其中應(yīng)用的順序的部分在CPU上執(zhí)行,計算密集部分由GPU來加速。
在一些實施例中,連同下文所描述的其它一個或多個組件一起,處理器702是片上系統(tǒng)(“SoC”)或者包含在SoC中。例如,SoC可以包括處理器702、GPU、一個或多個網(wǎng)絡(luò)連接組件706以及一個或多個傳感器組件708。在一些實施例中,處理器702部分地利用封裝上封裝“PoP”集成電路封裝技術(shù)來制作。而且,處理器702可以是單核或多核處理器。
處理器702可以依照來自英國劍橋的ARM HOLDINGS的可供認證的ARM架構(gòu)來產(chǎn)生??商娲?,處理器702可依照x86架構(gòu)來產(chǎn)生,例如可從加利福尼亞山景城的INTEL CORPORATION及其它獲得。在一些實施例中,處理器702是可從加利福尼亞的圣地亞哥的QUALCOMM得到的SNAPDRAGON SoC、可從加利福尼亞的圣塔克拉拉的NVIDIA得到的TEGRA SoC、可從韓國首爾的SAMSUNG得到的HUMMINGBIRD SoC、可從德克薩斯達拉斯的TEXAS INSTRUMENTS得到的Open Multimedia Application Platform("OMAP")SoC、上述SoC中的任一個的定制版本或?qū)S蠸oC。
存儲器組件704包括隨機存取存儲器(“RAM”)714、只讀存儲器(“ROM”)716、集成存儲存儲器(“集成存儲”)718和可移除存儲存儲器(“可移除存儲”)720。在一些實施例中,RAM 714或其部分、ROM 716或其部分和/或RAM 714和ROM 716的某種組合集成到處理器702中。在一些實施例中,ROM 716被配置成存儲固件、操作系統(tǒng)或其部分(例如,操作系統(tǒng)內(nèi)核)和/或從集成存儲718或可移除存儲720裝載操作系統(tǒng)內(nèi)核的引導(dǎo)加載程序。
集成存儲718可以包括固態(tài)存儲器、硬盤或固態(tài)存儲器和硬盤的組合。集成存儲718可以是釬焊到或以其它方式連接到邏輯板上,處理器702以及本文所描述的其它組件也可以連接到該邏輯板上。因此,集成存儲718集成到計算設(shè)備中。集成存儲718被配置成存儲本文所描述的操作系統(tǒng)或其部分、應(yīng)用程序、數(shù)據(jù)和其它軟件組件。
可移除存儲720可以包括固態(tài)存儲器、硬盤或固態(tài)存儲器和硬盤的組合。在一些實施例中,可移除存儲720被提供以取代集成存儲718。在其它實施例中,可移除存儲720被提供作為附加的可選存儲。在一些實施例中,可移除存儲720與集成存儲718邏輯地組合而使得總可用存儲可用且作為集成存儲718和可移除存儲720的總組合容量顯示給用戶。
可移除存儲720被配置成插入可移除存儲存儲器槽(未示出)或其它機構(gòu),可移除存儲720插入可移除存儲存儲器槽或其它機構(gòu)且緊固到其上以利于可移除存儲720能夠借以與諸如處理器702的計算設(shè)備的其它組件通信的連接??梢瞥鎯?20可以嵌入各種存儲器卡形式中,包括但不限于,PC卡、CompactFlash卡、記憶棒、安全數(shù)字(“SD”)、miniSD、microSD、通用集成電路板(“UICC”)(例如,訂閱者身份模塊(“SIM”)或通用SIM(“USIM”))、專有形式等等。
可以理解的是,一個或多個存儲器組件704能夠存儲操作系統(tǒng)。根據(jù)各個實施例,操作系統(tǒng)包括但不限于來自SYMBIAN LIMITED的SYMBIAN OS、來自華盛頓雷德蒙頓的微軟公司的WINDOWS MOBILE OS、來自微軟公司的WINDOWS PHONE OS、來自微軟公司的WINDOWS操作系統(tǒng)、來自加利福尼亞帕羅奧圖的惠普公司的PALM WEBOS、來自加拿大安大略的滑鐵盧的Research in Motion Limited的BLACKBERRY OS、來自加利福尼亞的庫比蒂諾的蘋果公司的IOS以及來自加利福尼亞的山景城的谷歌公司的ANDROID OS。可想到其它操作系統(tǒng)。
網(wǎng)絡(luò)連接組件706包括無線廣域網(wǎng)組件(“WWAN組件”)722、無線局域網(wǎng)組件(“WLAN組件”)724以及無線個域網(wǎng)組件(“WPAN組件”)726。網(wǎng)絡(luò)連接組件706利于與網(wǎng)絡(luò)728之間的通信,網(wǎng)絡(luò)可以是WWAN、WLAN或WPAN。雖然示出了單個網(wǎng)絡(luò)728,但是網(wǎng)絡(luò)連接組件706可促進與多個網(wǎng)絡(luò)的同時通信。例如,網(wǎng)絡(luò)連接組件706可以促進經(jīng)由WWAN、WLAN或WPAN中的一個或多個與多個網(wǎng)絡(luò)同時通信。
網(wǎng)絡(luò)728可以是WWAN,諸如使用一個或多個移動遠程通信技術(shù)來經(jīng)由WWAN組件722提供語音和/或數(shù)據(jù)服務(wù)給使用計算設(shè)備架構(gòu)700的計算設(shè)備的移動遠程通信網(wǎng)絡(luò)。移動遠程通信技術(shù)可以包括但不限于全球移動通信系統(tǒng)(“GSM”)、碼分多址(“CDMA”)ONE、CDMA2000、通用移動遠程通信系統(tǒng)(“UMTS”)、長期演進(“LTE”)和世界微波接入互操作(“WiMAX”)。而且,網(wǎng)絡(luò)728可以使用各種信道接入方法(其可以或者可以不由上述標準來使用),包括但不限于,時分多址(“TDMA”)、頻分多址(“FDMA”)、CDMA、寬帶CDMA(“W-CDMA”)、正交頻分復(fù)用(“OFDM”)、空間分多址(“SDMA”)和類似方法。數(shù)據(jù)通信可以利用如下來提供:通用分組無線電服務(wù)(“GPRS”)、全局演進增強數(shù)據(jù)率(“EDGE”)、高速分組接入(“HSPA”)協(xié)議系列,包括高速下行鏈路分組接入(“HSDPA”)、增強上行鏈路(“EUL”)或另外稱謂的高速上行鏈路分組接入(“HSUPA”)、演進的HSPA(“HSPA+”)、LTE、以及其它各種當前和未來的無線數(shù)據(jù)訪問標準。網(wǎng)絡(luò)728可被配置成利用上述技術(shù)的任意組合來提供語音和/或數(shù)據(jù)通信。網(wǎng)絡(luò)728可被配置成或適于依照未來代的技術(shù)來提供語音和/或數(shù)據(jù)通信。
在一些配置中,WWAN組件722被配置成提供雙重多模式連接給網(wǎng)絡(luò)728。例如,WWAN組件722可以被配置成提供連接給網(wǎng)絡(luò)728,其中網(wǎng)絡(luò)728經(jīng)由GSM和UMTS技術(shù)來提供服務(wù),或者經(jīng)由技術(shù)的某種其它組合??商娲兀鄠€WWAN組件722可用來實施該功能,和/或提供附加功能來支持其它非兼容技術(shù)(即,不能被單個WWAN組件支持)。WWAN組件722可促進到多個網(wǎng)絡(luò)(例如,UMTS網(wǎng)絡(luò)和LTE網(wǎng)絡(luò))的類似的連接。
網(wǎng)絡(luò)728可以是依照一個或多個電氣與電子工程師協(xié)會(“IEEE”)802.11標準而操作的WLAN,諸如IEEE 802.11a、802.11b、802.11g、802.11n和/或未來的802.11標準(在本文統(tǒng)稱為WI-FI)。還可以想到起草的802.11標準。在一些實施例中,WLAN利用一個或多個無線WI-FI接入點來實現(xiàn)。在一些實施例中,一個或多個無線WI-FI接入點是能夠與WWAN連接的充當WI-FI熱點的另一計算設(shè)備。WLAN組件724被配置成經(jīng)由WI-FI接入點與網(wǎng)絡(luò)728連接。這些連接可經(jīng)由各種加密技術(shù)來確保,加密技術(shù)包括但不限于WI-FI保護接入(“WPA”)、WPA2、有線等價隱私(“WEP”)和類似物。
網(wǎng)絡(luò)728可以是依照紅外數(shù)據(jù)聯(lián)盟(“IrDA”)、BLUETOOTH、無線通用串行總線(“USB”)、Z-Wave、ZIGBEE或某其它短程無線技術(shù)來操作的WPAN。在一些配置中,WPAN組件726被配置成促進與諸如外圍設(shè)備、計算機或其它計算設(shè)備的其它設(shè)備經(jīng)由WPAN的通信。
傳感器組件708包括磁力計730、環(huán)境光傳感器732、接近傳感器734、加速度計736、陀螺儀738和全球定位系統(tǒng)傳感器(“GPS傳感器”)740??上氲剑T如但不限于溫度傳感器或震動檢測傳感器的其它傳感器也可以包含在計算設(shè)備架構(gòu)700中。
磁力計730可以被配置成測量磁場的強度和方向。在一些實施例中,磁力計730提供測量給存儲在一個存儲器組件704內(nèi)的羅盤應(yīng)用程序從而為用戶提供參考系內(nèi)的精確的方向,包括主要方向,北、南、東和西。可以對包括羅盤組件的導(dǎo)航應(yīng)用程序提供類似的測量。可想到通過磁力計730所獲得的測量的其它用途。
環(huán)境光傳感器732被配置成測量環(huán)境光。在一些配置中,環(huán)境光傳感器732提供測量給存儲在一個存儲器組件704內(nèi)的應(yīng)用程序從而自動地調(diào)節(jié)顯示器(下面所述)的亮度從而補償?shù)凸庹窄h(huán)境和高光照環(huán)境。可想到通過環(huán)境光傳感器732所獲得的測量的其它用途。
接近傳感器734被配置成在不直接接觸的情況下檢測靠近計算設(shè)備的物體或事物的存在。在一些實施例中,接近傳感器734檢測用戶的身體(例如,用戶的面部)的存在且提供該信息給存儲在存儲器組件704中之一內(nèi)的、使用接近信息來啟用或禁止計算設(shè)備的某功能的應(yīng)用程序。例如,電話應(yīng)用程序可以響應(yīng)于接收到接近信息而自動禁止觸摸屏(下面說明),使得用戶的面部不會在通話期間非故意地結(jié)束通話或啟用/禁止電話應(yīng)用程序內(nèi)的其它功能。接近傳感器734所檢測到的接近的其它用途可被想到。
加速度計736被配置成測量正確的加速度。在一些實施例中,來自加速度計736的輸出由應(yīng)用程序用作控制應(yīng)用程序的某功能的輸入機制。例如,應(yīng)用程序可以是視頻游戲,其中字符、其部分或?qū)ο箜憫?yīng)于經(jīng)由加速度計736接收到的輸入而移動或以其它方式操縱。在一些實施例中,來自加速度計736的輸出提供給應(yīng)用程序以便用于在風景模式與肖像模式之間切換,計算坐標加速度,或者檢測下落。可以想到加速度計736的其它用途。
陀螺儀738被配置成測量和維持方向。在一些實施例中,來自陀螺儀738的輸出由應(yīng)用程序用作控制應(yīng)用程序的某功能的輸入機制。例如,陀螺儀738能夠用于視頻游戲應(yīng)用或某其它應(yīng)用的3D環(huán)境內(nèi)的移動的精確識別。在一些實施例中,應(yīng)用程序使用來自陀螺儀738和加速度計736的輸出來增強應(yīng)用程序的某種功能的控制??上氲酵勇輧x738的其它用途。
GPS傳感器740被配置成接收來自GPS衛(wèi)星的信號以用于計算位置。通過GPS傳感器740計算的位置可由需要或受益于位置信息的任何應(yīng)用程序使用。例如,通過GPS傳感器740計算的位置可用于導(dǎo)航應(yīng)用程序以提供從該位置到目的地的方向或者從目的地到該位置的方向。而且,GPS傳感器740可以用于將位置信息提供給的基于外部位置的服務(wù),諸如E911服務(wù)。GPS傳感器740可以使用一個或多個網(wǎng)絡(luò)連接組件706獲得經(jīng)由WI-FI、WIMAX和/或蜂窩三角測量技術(shù)所生成的位置信息以輔助GPS傳感器740獲得位置固定。GPS傳感器740還可用于輔助GPS(“A-GPS”)系統(tǒng)。
I/O組件710包括顯示器742、觸摸屏744、數(shù)據(jù)I/O接口組件(“數(shù)據(jù)I/O”)746、音頻I/O接口組件(“音頻I/O”)748、視頻I/O接口組件(“視頻I/O”)750和照相機752。在一些實施例中,顯示器742和觸摸屏744組合。在一些實施例中,數(shù)據(jù)I/O組件746、音頻I/O組件748和視頻I/O組件750中的兩個或更多個被組合。I/O組件710可以包括被配置為支持下面所描述的各種接口的分立的處理器,或者可以包括內(nèi)置于處理器702中的處理功能。
顯示器742是被配置成以視覺形式呈現(xiàn)信息的輸出設(shè)備。特別地,顯示器742可以呈現(xiàn)圖形用戶接口(“GUI”)元件、文本、圖像、視頻、通知、虛擬按鈕、虛擬鍵盤、消息傳遞數(shù)據(jù)、因特網(wǎng)內(nèi)容、設(shè)備狀況、時間、日期、日歷數(shù)據(jù)、偏好、地圖信息、位置信息以及任何其它能夠以視覺形式呈現(xiàn)的信息。在一些實施例中,顯示器742是使用了任何有源或無源矩陣技術(shù)以及任何背光技術(shù)(如果使用)的液晶顯示器(“LCD”)。在一些實施例中,顯示器742是有機發(fā)光二極管(“OLED”)顯示器??上氲狡渌@示器類型。
觸摸屏744是被配置成檢測觸摸的存在和位置的輸入設(shè)備。觸摸屏744可以是電阻觸摸屏、電容觸摸屏、表面聲波觸摸屏、紅外觸摸屏、光學成像觸摸屏、分散信號觸摸屏、聲脈沖識別觸摸屏,或者可以使用任何其它觸摸屏技術(shù)。在一些實施例中,觸摸屏744作為透明層而包含到顯示器742之上以使用戶能夠使用一個或多個觸摸來與呈現(xiàn)在顯示器742上的對象或其它信息交互。在其它實施例中,觸摸屏744是并入未包含顯示器742的計算設(shè)備的表面上的觸摸板。例如,計算設(shè)備可以具有并入顯示器742上的觸摸屏和與顯示器742相對的表面上的觸摸板。
在一些配置中,觸摸屏744是單觸摸式觸摸屏。在其它配置中,觸摸屏744是多觸摸式觸摸屏。在一些配置中,觸摸屏744被配置成檢測離散的觸摸、單觸摸手勢和/或多觸摸手勢。為方便,這些在本文統(tǒng)稱為手勢?,F(xiàn)在將描述多個手勢。應(yīng)當理解的是,這些手勢是示例性的,而不旨在限制隨附權(quán)利要求的范圍。而且,所描述的手勢、附加手勢和/或可替代手勢可以軟件來實現(xiàn)而與觸摸屏744一起使用。因此,開發(fā)者可以創(chuàng)建特定于特定的應(yīng)用程序的手勢。
在一些配置中,觸摸屏744支持輕敲手勢,其中用戶對呈現(xiàn)在顯示器742上的項輕敲觸摸屏744一次。輕敲手勢可由于各種原因而使用,包括但不限于,打開或啟動用戶所輕敲的無論何物。在一些實施例中,觸摸屏744支持雙輕敲手勢,其中用戶對呈現(xiàn)在顯示器742上的項輕敲觸摸屏744兩次。雙輕敲手勢可由于各種原因而使用,包括但不限于在階段中縮小或放大。在一些配置中,觸摸屏744支持輕敲且保持手勢,其中用戶輕敲觸摸屏744且保持接觸至少預(yù)定的時間。輕敲且保持手勢可由于各種原因而使用,包括但不限于,打開上下文特定菜單。
在一些實施例中,觸摸屏744支持平移手勢,其中用戶將手指放在觸摸屏744上且在觸摸屏744上移動手指的同時保持與觸摸屏744接觸。平移手勢可由于各種原因而使用,包括但不限于,在受控速率下移過屏幕、圖像或菜單??梢栽O(shè)想多手指平移手勢。在一些實施例中,觸摸屏744支持輕彈手勢,其中用戶沿用戶想要屏幕移動的方向劃動手指。輕彈手勢可由于各種原因而使用,包括但不限于,水平地或者垂直地滾動通過菜單或頁。在一些實施例中,觸摸屏744支持捏合與伸展手勢,其中用戶在觸摸屏744上用兩個手指(例如,拇指和食指)做出捏合運動或者移動使兩個手指分開。捏合與伸展手勢可由于各種原因而使用,包括但不限于,逐漸地縮小或放大網(wǎng)站、地圖或圖片。
雖然已經(jīng)參考用于執(zhí)行手勢的一個或多個手指的使用描述了上述手勢,諸如足趾或諸如指示筆的對象的其它附件也可用于與觸摸屏744交互。因此,上述手勢應(yīng)當理解為示例性的,而不應(yīng)解釋為以任何方式限制。
數(shù)據(jù)I/O接口組件746被配置成利于向計算設(shè)備輸入數(shù)據(jù)以及從計算設(shè)備輸出數(shù)據(jù)。在一些實施例中,數(shù)據(jù)I/O接口組件746包括連接器,該連接器被配置成提供計算設(shè)備與計算機系統(tǒng)之間的有線連接,例如用于同步操作的目的。連接器可以是專用連接器或標準化的連接器,如USB、微型USB、迷你型USB或類似物。在一些實施例中,連接器是用于將計算設(shè)備與諸如對接站的另一設(shè)備、音頻設(shè)備(例如,數(shù)字音樂播放器)或視頻設(shè)備對接的對接連接器。
音頻I/O接口組件748被配置成提供音頻輸入和/或輸出能力給計算設(shè)備。在一些實施例中,音頻I/O接口組件746包括被配置成采集音頻信號的麥克風。在一些實施例中,音頻I/O接口組件746包括被配置成提供用于耳機或其它外部揚聲器的連接的耳機插口。在一些實施例中,音頻接口組件748包括用于音頻信號的輸出的揚聲器。在一些實施例中,音頻I/O接口組件746包括光纜音頻線出口。
視頻I/O接口組件750被配置成提供視頻輸入和/或輸出能力給計算設(shè)備。在一些實施例中,視頻I/O接口組件750包括視頻連接器,該視頻連接器被配置成接收來自另一設(shè)備(例如,諸如DVD或BLURAY播放器的視頻媒體播放器)的視頻作為輸入)或者將視頻作為輸出發(fā)送到另一設(shè)備(例如,監(jiān)控器、電視機或某其它外部顯示器)。在一些實施例中,視頻I/O接口組件750包括高清多媒體接口(“HDMI”)、迷你型HDMI、微型HDMI、DisplayPort或到輸入/輸出視頻內(nèi)容的專用連接器。在一些實施例中,視頻I/O接口組件750或其部分與音頻I/O接口組件748或其部分組合。
照相機752可以被配置成捕獲靜像和/或視頻。照相機752可以使用電荷耦合器件(“CCD”)或互補金屬氧化物半導(dǎo)體(“CMOS”)圖像傳感器來捕獲圖像。在一些實施例中,照相機752包括輔助在低光照環(huán)境下拍攝圖片的閃光燈。用于照相機752的設(shè)置可實現(xiàn)為硬件或軟件按鈕。
雖然沒有示出,一個或多個硬件按鈕也可以包含在計算設(shè)備架構(gòu)700中。硬件按鈕可用于控制計算設(shè)備的某操作方面。硬件按鈕可以是專用按鈕或多用途按鈕。硬件按鈕可以是機械或基于傳感器的。
圖示的電力組件712包括一個或多個電池754,電池能夠連接到電池計量儀756。電池754可以是可再充電的或一次性的??稍俪潆婋姵仡愋桶ǖ幌抻阡嚲酆衔铮囯x子,鎳鎘和鎳金屬氫化物。各個電池754可以由一個或多個單元制成。
電池計量儀756可以被配置成測量諸如電流、電壓和溫度的電池參數(shù)。在一些配置中,電池計量儀756被配置成測量電池的放電速率、溫度、壽命和在一定誤差百分比內(nèi)預(yù)測剩余壽命的其它因素的效果。在一些實施例中,電池計量儀756提供測量給應(yīng)用程序,應(yīng)用程序被配置成使用測量來向用戶呈現(xiàn)有用的電力管理數(shù)據(jù)。電力管理數(shù)據(jù)可以包括所使用的電池百分比、電池剩余的百分比、電池狀態(tài)、剩余時間、剩余容量(例如,以瓦特小時數(shù)計)、消耗的電流和電壓的中的一項或多項。
電力組件712還可以包括電力連接器,其可以與上述I/O組件710中的一個或多個組合。電力組件712可以經(jīng)由電力I/O組件744與外部電力系統(tǒng)或充電裝置相接。
基于上述,應(yīng)當意識到在本文已經(jīng)公開了用于提供查詢建議的以及用于基于查詢建議來構(gòu)建查詢的技術(shù)。雖然本文所呈現(xiàn)的主題是以特定于計算機結(jié)構(gòu)特征、方法和變換動作、具體的計算機器和計算機可讀介質(zhì)的語言來描述,但是應(yīng)當理解,在隨附的權(quán)利要求中限定的本發(fā)明不必局限于本文所描述的具體的特征、動作或介質(zhì)。相反,具體的特征、動作和媒介被公開作為實現(xiàn)權(quán)利要求的示例形式。
本文公開的技術(shù)可如以下條款中所闡述的來描述:
條款1.一種用于提供查詢建議的計算機實現(xiàn)的方法,所述方法包括:
檢測數(shù)據(jù)源處的訪問;
基于所檢測到的訪問來采集非查詢數(shù)據(jù);
基于所述非查詢數(shù)據(jù)來確定對所述數(shù)據(jù)源的查詢的初始查詢建議;以及
返回所述初始查詢建議。
條款2.根據(jù)條款1所述的計算機實現(xiàn)的方法,其中所述非查詢數(shù)據(jù)包括描述身份數(shù)據(jù)、簡檔數(shù)據(jù)或上下文信息的元數(shù)據(jù)。
條款3.根據(jù)條款1-2中任一項所述的計算機實現(xiàn)的方法,其中確定所述初始查詢建議包括:
比較所述元數(shù)據(jù)與在先查詢或元數(shù)據(jù)信息;
確定所述元數(shù)據(jù)的至少一部分與所述在先查詢信息的部分相關(guān)聯(lián);以及
基于所述在先查詢信息的所述部分來生成所述初始查詢建議。
條款4.根據(jù)條款1-3中任一項所述的計算機實現(xiàn)的方法,其中所述在先查詢信息包括缺省查詢陳述、基本查詢陳述或先前提交的查詢中的至少一個。
條款5.根據(jù)條款1-4中任一項所述的計算機實現(xiàn)的方法,其中確定所述初始查詢建議包括:
比較所述非查詢數(shù)據(jù)與一組缺省查詢陳述;
確定所述非查詢數(shù)據(jù)的至少一部分與所述一組缺省查詢陳述中的至少一個缺省查詢陳述相關(guān)聯(lián);以及
基于所述至少一個缺省查詢陳述來生成所述初始查詢建議。
條款6.根據(jù)條款1-5中任一項所述的計算機實現(xiàn)的方法,其中檢測數(shù)據(jù)源處的訪問包括:
接收訪問所述數(shù)據(jù)源處的數(shù)據(jù)的請求;
接收接收所述初始查詢建議的請求;或者
確定文件已經(jīng)打開。
條款7.根據(jù)條款1-6中任一項所述的計算機實現(xiàn)的方法,還包括:通過用戶接口(UI)元件來返回所述初始查詢建議。
條款8.根據(jù)條款1-7中任一項所述的計算機實現(xiàn)的方法,其中UI元件是代表所述初始查詢建議的內(nèi)容的可選的圖形渲染,或者其中所述UI元件包括表示來自查詢陳述的文本的至少一部分的自動填充文本的部分。
條款9.根據(jù)條款1-8中任一項所述的計算機實現(xiàn)的方法,還包括:
接收對所述初始查詢建議的動作的指示;
基于查詢或非查詢數(shù)據(jù)來確定對所述數(shù)據(jù)源的查詢的附加查詢建議;以及
返回所述附加查詢建議。
條款10.根據(jù)條款1-9中任一項所述的計算機實現(xiàn)的方法,其中所述查詢包括指示查詢陳述的至少一部分的數(shù)據(jù)。
條款11.被配置成提供查詢建議的數(shù)據(jù)處理系統(tǒng),所述系統(tǒng)包括:
執(zhí)行查詢建議服務(wù)層的至少一個計算機,被配置成
檢測來自客戶端的在數(shù)據(jù)源處的訪問,
采集非查詢數(shù)據(jù),
接收來自所述客戶端的對所述數(shù)據(jù)源的查詢,
基于所述非查詢數(shù)據(jù)和所述查詢來確定查詢的查詢建議,以及
將所述查詢建議返回所述客戶端。
條款12.根據(jù)條款11所述的數(shù)據(jù)處理系統(tǒng),其中非查詢數(shù)據(jù)包括描述身份數(shù)據(jù)、簡檔數(shù)據(jù)或上下文信息的元數(shù)據(jù)。
條款13.根據(jù)條款11-12中任一項所述的數(shù)據(jù)處理系統(tǒng),其中確定所述查詢建議包括:
比較所述元數(shù)據(jù)和查詢與在先查詢或元數(shù)據(jù)信息;
確定所述元數(shù)據(jù)或查詢的至少一部分與所述在先查詢信息的部分相關(guān)聯(lián);以及
基于所述在先查詢信息的所述部分來生成查詢建議。
條款14.根據(jù)條款11-13中任一項所述的數(shù)據(jù)處理系統(tǒng),其中所述在先查詢信息包括缺省查詢陳述、基本查詢陳述或先前提交的查詢中的至少一個。
條款15.根據(jù)條款11-14中任一項所述的數(shù)據(jù)處理系統(tǒng),其中檢測數(shù)據(jù)源處的訪問包括:
接收訪問所述數(shù)據(jù)源處的數(shù)據(jù)的請求;
接收接收所述初始查詢建議的請求;或者
確定在所述客戶端處文件已經(jīng)打開。
條款16.根據(jù)條款11-15中任一項所述的數(shù)據(jù)處理系統(tǒng),其中查詢建議服務(wù)層被進一步配置成:
響應(yīng)于提供所述查詢建議而確定所述查詢包含變化;
將所述變化應(yīng)用于所述查詢;
基于所應(yīng)用的變化來確定對所述數(shù)據(jù)源的查詢的附加查詢建議;以及
將所述附加查詢建議返回給客戶端。
條款17.根據(jù)條款11-16中任一項所述的數(shù)據(jù)處理系統(tǒng),其中所述附加查詢建議包括基于在先查詢信息來過濾或分類查詢結(jié)果的建議。
條款18.一種通過查詢建議來構(gòu)建數(shù)據(jù)查詢的計算機實現(xiàn)的方法,所述方法包括:
確定數(shù)據(jù)源處的訪問;
基于非查詢數(shù)據(jù)和查詢數(shù)據(jù)來確定數(shù)據(jù)源處的搜索查詢的查詢建議,其中所述查詢建議是用于附到所述搜索查詢的可選的查詢建議,并且其中所述查詢數(shù)據(jù)基于查詢建議的選擇;以及
使查詢建議通過圖形用戶接口(UI)來顯示,所述UI被配置成接收所述查詢建議的單獨的查詢建議的選擇。
條款19.根據(jù)條款18所述的計算機實現(xiàn)的方法,其中所述非查詢數(shù)據(jù)包括描述身份數(shù)據(jù)、簡檔數(shù)據(jù)或用于訪問所述數(shù)據(jù)源的客戶端計算機的上下文信息的元數(shù)據(jù)。
條款20.根據(jù)條款18和19中任一項所述的計算機實現(xiàn)的方法,其中確定所述查詢建議包括:
比較查詢數(shù)據(jù)與在先查詢信息;
確定查詢數(shù)據(jù)的至少一部分與所述在先查詢信息的部分相關(guān)聯(lián);以及
基于在先查詢信息的所述部分來生成所述查詢建議。
上述的主題僅以示例說明的方式來提供,而不應(yīng)當解釋為限制??梢栽诓蛔裾账鶊D示和描述的示例的實施例和應(yīng)用且不背離本發(fā)明的真正的主旨和范圍的情況下對本文所描述的主題做出各種修改和改動,本發(fā)明真正的主旨和范圍在下面的權(quán)利要求中進行了闡述。