專利名稱:獲取內(nèi)容并將其添加到文檔中的制作方法
獲取內(nèi)容并將其添加到文檔中背景撰寫內(nèi)容的過程通常涉及某種形式的搜索和/或信息檢索。撰寫電子郵件消息的人可能希望包括通過搜索或通過某種其它機(jī)制獲取的某些信息。例如,個(gè)人可能撰寫電子郵件給朋友,提議在看電影時(shí)見面。電子郵件可能包括時(shí)間和電影放映的影院的列表以及可能有到影院的地圖。該信息容易地通過因特網(wǎng)獲得。當(dāng)就首次放映的電影的名稱查詢?cè)S多搜索引擎時(shí),會(huì)響應(yīng)查詢者本地區(qū)中的影院和上映時(shí)間的列表。影院的列表也會(huì)提供地址。一些搜索引擎可以提議提供到該地址的地圖。或者,工具欄可以將搜索結(jié)果中的某些文本識(shí)別為地址,并且可以提供到地圖的鏈接。由此,如果個(gè)人希望包括影院、放映時(shí)間列表和地圖,那么該信息可以容易地通過因特網(wǎng)獲得。雖然以上信息可用,但是訪問信息的過程不是特別方便。具體地,為了訪問該信息,用戶打開新的瀏覽器窗口或標(biāo)簽、執(zhí)行搜索并接著將所請(qǐng)求的信息復(fù)制粘貼到電子郵件中。該過程是繁瑣的。此外,搜索引擎通常不會(huì)與電子郵件程序通信,并因此不能利用可能存在的任何上下文,諸如可以從當(dāng)前正在撰寫的消息獲取的上下文。各種用戶界面(UI)設(shè)計(jì)可能試圖將搜索能力集成到瀏覽器窗口中。例如,工具欄和搜索窗格提供搜索內(nèi)容而無需打開新的窗口或標(biāo)簽且無需使當(dāng)前的窗口或標(biāo)簽被搜索結(jié)果取代的能力。然而,執(zhí)行搜索不一定要符合用戶的目標(biāo),尤其是如果用戶的目標(biāo)是發(fā)現(xiàn)要包括在電子郵件(或另一類型的文檔中)的內(nèi)容時(shí)。搜索通常提供包含搜索項(xiàng)的文檔列表(例如網(wǎng)頁)。該列表對(duì)于一般的搜索任務(wù)可能是足夠的,但是用戶查找的內(nèi)容的范圍通常有賴于他或她打算對(duì)文檔進(jìn)行什么處理。取決于是為了用戶的常識(shí)還是為了查找要包括在電子郵件消息中的內(nèi)容而執(zhí)行搜索,用戶可能具有不同的期望。由此,用戶可能必須檢查若干個(gè)結(jié)果以發(fā)現(xiàn)他或她想要的內(nèi)容,并接著可能必須將內(nèi)容復(fù)制粘貼到他或她正在編輯的文檔中。例如,如果用戶查詢餐館的名稱,那么他或她必須在找到餐館的菜單和地址之前檢查若干個(gè)文檔。如果用戶希望包括到餐館的地圖,那么他或她必須從文檔之一將地址復(fù)制到地圖服務(wù)的地址框中,并接著復(fù)制粘貼地圖。雖然搜索引擎、地圖服務(wù)等已使得許多信息容易地可用,但是這些工作可能難以用作編輯內(nèi)容的過程的一部分。概述可提供用于將獲取內(nèi)容的動(dòng)作集成到編輯文檔的過程中的工具。方便編輯電子郵件消息(或其他類型的文檔)的用戶界面(UI)可提供撰寫內(nèi)容的位置。UI也可提供允許用戶獲取要包括在文檔中的附加內(nèi)容的控件。例如,UI的一個(gè)元件可以是用戶向其中鍵入任意內(nèi)容(例如用戶可能鍵入電子郵件消息的文本)的撰寫窗口或框。UI的另一元件可以是其中可以獲取例如電影時(shí)間、餐館、電話列表等的內(nèi)容的類別列表。每個(gè)類別可以由導(dǎo)航和/或可操作元件(例如按鈕、鏈接、右擊動(dòng)作等)表示,這樣使得如果用戶點(diǎn)擊按鍵或鏈接(或激活某種其他類型的元件),那么就向用戶提供適用于該類別的內(nèi)容??梢砸栽试S用戶將內(nèi)容包括在文檔中的方式提供內(nèi)容。例如,如果用戶點(diǎn)擊餐館類別,那么可以向用戶示出用戶的本地區(qū)中的餐館列表以及餐館的菜單和餐館所處位置的地圖。通過點(diǎn)擊預(yù)覽區(qū)域中的項(xiàng)目,可以將這些項(xiàng)目添加到撰寫窗口或框中。這樣,將發(fā)現(xiàn)內(nèi)容的過程與將內(nèi)容包括在文檔中的過程相集成??梢砸阅撤N方式安排工具提供的內(nèi)容。例如,可以關(guān)于哪個(gè)數(shù)據(jù)庫將提供餐館信息、哪個(gè)數(shù)據(jù)庫將提供電影信息等作出選擇。由此,當(dāng)用戶點(diǎn)擊諸如“餐館”的類別時(shí),從所選數(shù)據(jù)庫檢索所獲取的關(guān)于餐館的內(nèi)容。對(duì)特定內(nèi)容源的選擇可以作為商業(yè)安排的一部分作出。例如,假定允許用戶獲取內(nèi)容的UI是作為特定web郵件系統(tǒng)的一部分提供的。該web 郵件系統(tǒng)的提供商可能加入一種安排,其中餐館數(shù)據(jù)庫的提供商使用該數(shù)據(jù)庫作為餐館信息的源。這種安排可以提供貨幣化web郵件系統(tǒng)的一種方式,盡管可以帶有或不帶有貨幣條款而加入安排??梢詫?duì)其他類型的內(nèi)容提供商作出類似的安排——例如可以將特定的用郵件發(fā)送DVD (DVD-by-mail)服務(wù)選作電影數(shù)據(jù)庫的提供商。此外,要獲取的內(nèi)容可以集中在可能搜索出要包括在文檔中的內(nèi)容的類型上。例如,關(guān)于首次放映的電影撰寫電子郵件給朋友的人對(duì)電影在何處播放可能比對(duì)找出電影的學(xué)術(shù)分析更感興趣。搜索引擎將可能返回影院的位置以及曾經(jīng)書寫的關(guān)于電影的任何內(nèi)容。然而,集中在提供關(guān)于電子郵件的內(nèi)容的工具將集中在獲取電影的位置,而省去較不可能是某人希望包括在電子郵件消息中的內(nèi)容的類型的信息。此外,當(dāng)用戶請(qǐng)求在文檔中插入內(nèi)容時(shí),可以基于文檔的內(nèi)容來選擇獲取的內(nèi)容。 例如,可能撰寫包含文本“Let' s see the new Batman movie (去看新的蝙蝠俠電影吧)” 的電子郵件消息。如果該人請(qǐng)求“電影”類別中的內(nèi)容,那么可以分析電子郵件的文本以確定該人不是一般地對(duì)電影感興趣,而是具體的對(duì)Batman (蝙蝠俠)電影感興趣。于是可以將獲取的內(nèi)容定制為Batman電影——例如,內(nèi)容可以包括Batman電影放映的時(shí)間、放映該電影的影院列表等。提供本概述是為了以簡化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。本概述并不旨在標(biāo)識(shí)出所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于用任何方式限定所要求保護(hù)的主題的范圍。附圖簡述
圖1是可用于創(chuàng)作文檔的示例性用戶界面的框圖。圖2是可能顯示的關(guān)于已獲取的內(nèi)容的信息的框圖。圖3是其中可能獲取內(nèi)容并將其插入文檔中的示例性過程的流程圖。圖4是其中使用搜索來獲取內(nèi)容的示例性過程的流程圖。圖5是可方便文檔的撰寫和獲取文檔的內(nèi)容的示例性系統(tǒng)的框圖。圖6是可以執(zhí)行以允許用戶創(chuàng)作文檔和獲取文檔的內(nèi)容的示例性動(dòng)作的流程圖。圖7是可以結(jié)合此處所述的主題的實(shí)現(xiàn)使用的示例性組件的框圖。詳細(xì)描述當(dāng)人們撰寫文檔時(shí),他們通常在文檔中包括某種類型的現(xiàn)有內(nèi)容。例如,人們可創(chuàng)建包含地圖、餐館菜單、來自電話目錄的條目等的電子郵件消息??梢酝ㄟ^各種工具獲取內(nèi)容。例如,可以使用搜索引擎獲取web內(nèi)容??梢詮牡貓D網(wǎng)站(或從搜索或門戶網(wǎng)站的地圖服務(wù))獲取地圖。人們獲取內(nèi)容并接著將內(nèi)容傳遞到文檔中——例如通過復(fù)制粘貼內(nèi)容。 (文檔可能包括任何類型的內(nèi)容。電子郵件是文檔的一個(gè)示例,但是文檔也可以是文字處理文檔、電子表格、圖形等)?,F(xiàn)有的機(jī)制反映出撰寫文檔的過程和找出要添加到文檔中的內(nèi)容的過程之間缺少集成。如果用戶正在撰寫電子郵件消息,并且希望找出要插入的內(nèi)容,那么用戶通常打開瀏覽器窗口或標(biāo)簽,導(dǎo)航到搜索引擎,形成查詢,檢查查詢結(jié)果并從查詢結(jié)果之一將適當(dāng)?shù)膬?nèi)容復(fù)制粘貼到文檔中。該過程中涉及的許多動(dòng)作是繁瑣的。例如,如果用戶正在撰寫關(guān)于特定的電影的電子郵件消息并且希望找出關(guān)于該電影的放映時(shí)間,那么用戶通常打開瀏覽器窗口并將電影名稱鍵入到搜索引擎中。搜索引擎可用本地影院的放映時(shí)間來響應(yīng),并且用戶接著會(huì)將放映時(shí)間復(fù)制到電子郵件消息中。如果用戶希望在消息中包括影院的位置的地圖,那么用戶通常訪問地圖網(wǎng)站,獲取地圖并將其復(fù)制到消息中。然而,如果將搜索電影相關(guān)信息的過程集成到用于撰寫電子郵件消息的軟件中, 那么可以簡化添加關(guān)于電影的信息??梢詮囊巡糠肿珜懙碾娮余]件提取用于驅(qū)動(dòng)搜索的信息。例如,電子郵件消息可以以特定電影為名。如果通過其撰寫電子郵件消息的UI提供用于搜索電影的功能部件,那么該功能部件將從已部分撰寫的電子郵件消息提取電影的名稱,并且可以執(zhí)行關(guān)于該電影的信息的搜索。但是即使不能從電子郵件消息中提取電影的名稱,將獲取內(nèi)容的過程與撰寫文檔的過程集成允許對(duì)用戶體驗(yàn)的某些其他增強(qiáng)。例如,如果用于撰寫電子郵件的UI提供獲取電影信息的按鈕(或其他可操縱元件),那么所檢索的內(nèi)容的類型可以集中在用戶可能希望包括在電子郵件消息中的內(nèi)容的類型上一例如,影院、放映時(shí)間和影院的位置的地圖。 該信息比由常規(guī)的搜索引擎提供的信息更為集中,因?yàn)樵撍阉饕婵赡芊祷厍『冒娪懊Q的幾十個(gè)或幾百個(gè)文檔。各種程度的集中是可能的,因?yàn)橥ㄟ^將內(nèi)容獲取功能部件集成到用于撰寫文檔的系統(tǒng)中,可以定制內(nèi)容獲取功能部件以返回將可能希望包括在特定類型的文檔中的類型的內(nèi)容。此外,可以提供流水線化過程以將內(nèi)容添加到電子郵件消息或其他文檔上。例如,在獲取了內(nèi)容之后,可示出內(nèi)容的預(yù)覽,而用戶可以通過點(diǎn)擊預(yù)覽來添加內(nèi)容。當(dāng)用戶可以以該方式添加內(nèi)容時(shí),繞過了常規(guī)的復(fù)制粘貼程序。此處的主題提供了用于將獲取內(nèi)容的過程與撰寫文檔的過程集成的各種方式。例如,用于web郵件系統(tǒng)的用戶界面可以提供用戶可以向其中鍵入文本的區(qū)域,并且也可以提供一組可操作元件(例如按鈕、鏈接、右擊選項(xiàng)等)以獲取各種類型的內(nèi)容一一例如電影、餐館、電話號(hào)碼等。當(dāng)用戶點(diǎn)擊按鈕之一時(shí),獲取適當(dāng)類型的內(nèi)容——例如電影時(shí)間、 餐館菜單、電話列表等。可以定制所獲取的內(nèi)容以反映用戶可能希望包括在電子郵件消息 (或正在創(chuàng)作的任何類型的文檔)的內(nèi)容的類型。由此,如果用戶請(qǐng)求餐館內(nèi)容,那么假定用戶想要將有助于關(guān)于去哪里吃飯作出判定的內(nèi)容,系統(tǒng)可能返回餐館的菜單和餐館的地址。諸如餐館的主廚的名字或特定主菜的營養(yǎng)信息的其他信息也可能是可用的,但是系統(tǒng)可能省略這種類型的內(nèi)容,因?yàn)樗鼈儾惶赡苁侨藗冊(cè)谧珜戨娮余]件消息時(shí)尋找的信息的類型。要提供的對(duì)按鈕(或其他可操縱元件)的特定選擇或響應(yīng)于點(diǎn)擊特定按鈕(或響應(yīng)于激活某一其他的可操縱元件)返回的內(nèi)容可能是基于某種商業(yè)關(guān)系的。例如,web郵件服務(wù)可能加入與另一公司的聯(lián)合品牌關(guān)系,其中web郵件服務(wù)同意提供帶有該公司的品牌的按鈕或使用該公司的數(shù)據(jù)庫作為內(nèi)容的源。由此,餐館按鈕可以被命名為“Zagat”和/ 或可以W^gat的數(shù)據(jù)庫返回關(guān)于餐館的信息。此外,可被提供以允許第三方將內(nèi)容獲取功能添加到它們的應(yīng)用程序上的工具。例如,A公司可以提供內(nèi)容獲取服務(wù),且接著可以提供允許B公司在其網(wǎng)站上提供A公司的內(nèi)容獲取工具的工具包。由此,如果公司B運(yùn)作web
6郵件服務(wù)或在線單詞處理器,那么公司B可以使用工具包來將公司A的內(nèi)容獲取功能添加到公司B的網(wǎng)站上。以上是如何可以將內(nèi)容獲取工具集成到文檔撰寫系統(tǒng)中的一些示例性情形,但是其他集成情形也是可能的?,F(xiàn)在轉(zhuǎn)向附圖,圖1示出了可用于創(chuàng)作文檔的示例性用戶界面100。用戶界面100 可以采用各種形式。例如,用戶界面100可以是用于web郵件應(yīng)用程序的界面,在這種情況下用戶界面100可以通過瀏覽器相關(guān)技術(shù)(例如超文本標(biāo)記語言(HTML)、Java等)來實(shí)現(xiàn)。然而,用戶界面100也可用于諸如獨(dú)立桌面應(yīng)用程序的非web應(yīng)用程序。在這樣的示例中,用戶界面100可以在由操作系統(tǒng)提供的窗口內(nèi)顯示。用戶界面100可以包括用于撰寫文檔104的第一元件102。在圖1的示例中,元件102是用戶可以向其中鍵入文本的空間,而文檔104是電子郵件消息。然而,文檔104可以是文字處理文檔、電子表格或任何其他類型的文檔。元件102可以是可以向其中鍵入文檔104的內(nèi)容的空間。例如,當(dāng)用戶用鍵盤鍵入字符時(shí),字符可出現(xiàn)在元件102內(nèi),如同例如它們?cè)陔娮余]件撰寫窗口的情況下會(huì)出現(xiàn)的那樣。用戶界面100也可以包括可用于獲取內(nèi)容和/或?qū)⑺@取的內(nèi)容插入到文檔104 中的第二元件106。元件106可以包括允許用戶激活獲取和/或插入各種類型的內(nèi)容的過程的一個(gè)或多個(gè)控件108。在圖1的示例中,控件108被示為按鈕,用戶可以通過用鼠標(biāo)或其他定點(diǎn)設(shè)備指向按鈕并點(diǎn)擊按鈕來激活它們。每個(gè)控件108可以提供用于獲取不同種類的內(nèi)容的機(jī)會(huì)。圖1示出了可以提供的各種類別的內(nèi)容的示例,盡管可以提供任何類別。在圖1的示例中,有“Photos(照片)”按鈕 110、“movies (電影)”按鈕 112、“restaurant (餐館),,按鈕 114 以及 “phone book(電話簿)”按鈕116。這些按鈕中的每一個(gè)可表示可被獲取的不同類型的內(nèi)容。點(diǎn)擊按鈕會(huì)發(fā)動(dòng)獲取與該按鈕相關(guān)聯(lián)的類型的內(nèi)容的過程。由此,點(diǎn)擊按鈕110可獲取照片,點(diǎn)擊按鈕 112可獲取電影的放映時(shí)間和位置等等??梢允褂毛@取內(nèi)容的任何過程,并且過程可以從任何源獲取內(nèi)容。搜索網(wǎng)頁的索引是獲取內(nèi)容的過程的一個(gè)示例(在此情形中,內(nèi)容源是 web)。然而,可以使用其他過程。用于獲取內(nèi)容的過程的其他示例和可從中獲取內(nèi)容的源的其他示例在下文中描述。不管用于獲取內(nèi)容的過程如何,點(diǎn)擊特定按鈕的結(jié)果可能是導(dǎo)致獲取這種內(nèi)容, 以及以某種方式示出該內(nèi)容的表示。圖1示出了其中用戶點(diǎn)擊“movies”按鈕112的示例。 在這種場景下,可以獲取與電影相關(guān)內(nèi)容。(內(nèi)容可以一般地與電影相關(guān),或者它可以與特定電影相關(guān)。例如,用戶將特定電影的名稱鍵入到搜索框中。或者,如果在元件102內(nèi)撰寫的部分撰寫的文檔包含電影的名稱,那么就可以使用該名稱。)不管已經(jīng)獲取的內(nèi)容如何, 過程可以返回對(duì)所獲取的內(nèi)容的某一指示118。在圖1的示例中,指示118被示為包含信息 120的框。可以包含在框中的信息120的類型的示例在圖2中示出并且在下文中討論。一旦用戶看到了對(duì)已經(jīng)獲取特定內(nèi)容的指示118,那么用戶可以選擇執(zhí)行各種動(dòng)作。一種這樣的動(dòng)作是預(yù)覽內(nèi)容——例如用戶可能能夠看到圖形的縮略圖或者文本內(nèi)容的摘錄。用戶可能選擇采用的動(dòng)作的另一示例是將內(nèi)容插入到文檔104中。例如,假定指示118指示已獲取的內(nèi)容包括特定電影的放映時(shí)間和到影院的地圖。用戶可以選擇將地圖 122插入到文檔104中。由此,在該示例中,文檔104(其在用戶界面元件102內(nèi)撰寫)包括內(nèi)容124(其是可能已經(jīng)用鍵盤輸入的單詞)并且也包括地圖122。地圖122是可以通過用戶界面元件106獲取的并且可以被插入到文檔中的內(nèi)容項(xiàng)的示例。如上所述,對(duì)所獲取的內(nèi)容的指示118可以提供各種類型的信息。圖2示出了這種信息的示例。應(yīng)當(dāng)注意,雖然圖2示出了指示118的示例,但是該指示可以采用任何形式。例如,就所獲取的內(nèi)容的某個(gè)基礎(chǔ)集合而言,指示118可以包含所獲取的內(nèi)容的完整集合或者該內(nèi)容的某一選集。此外,指示118可以包含所獲取的實(shí)際內(nèi)容或者該內(nèi)容的壓縮版本或表示。返回到圖2的示例,當(dāng)用戶點(diǎn)擊“電影”按鈕112(在圖1中示出)時(shí),獲取內(nèi)容 202。內(nèi)容202包括各種項(xiàng)目204和206。項(xiàng)目204是事件的列表(例如電影的放映時(shí)間), 而項(xiàng)目206是到可能發(fā)生事件的地點(diǎn)的地圖(例如電影院,且在地圖上有指示影院位置的星星)。指示118可以示出所獲取的實(shí)際內(nèi)容。或者,指示118可以示出除了內(nèi)容自身之外的內(nèi)容的某一表示,如在圖2的示例中所描述的。由此,在圖2的示例中,指示118示出了描述已獲取的內(nèi)容202的列表208??山o予用戶預(yù)覽內(nèi)容的機(jī)會(huì)。例如,用戶可使用定點(diǎn)設(shè)備來將光標(biāo)210移動(dòng)到列表上的項(xiàng)目之一上??梢詫?shí)現(xiàn)“懸?!靶袨?,由此當(dāng)將由定點(diǎn)設(shè)備控制的光標(biāo)懸停在列表上的項(xiàng)目上時(shí),就顯示特定內(nèi)容項(xiàng)的預(yù)覽212。( 一組示例行為是當(dāng)光標(biāo)懸停在列表上的項(xiàng)目上時(shí)預(yù)覽項(xiàng)目,并且當(dāng)用戶點(diǎn)擊列表上的項(xiàng)目時(shí)插入基礎(chǔ)內(nèi)容項(xiàng)。然而,這些行為僅是示例,可以實(shí)現(xiàn)其他行為。)在圖2的示例中,光標(biāo)210懸停在列表上的“map to theater (到影院的地圖)”項(xiàng)目上,并且由此所顯示的預(yù)覽212是項(xiàng)目206中的地圖的小版本。然而, 預(yù)覽可以采用任何形式。注意,預(yù)覽和實(shí)際插入到文檔中的內(nèi)容之間的關(guān)系是任意的。例如,預(yù)覽可以與要插入的內(nèi)容相同,或者可以是要插入的內(nèi)容的子集或超集,或者可以表示要插入的內(nèi)容(但是不同于該內(nèi)容)。作為一個(gè)示例,對(duì)于電影相關(guān)內(nèi)容,預(yù)覽可以示出電影的名稱、評(píng)級(jí)和評(píng)論,而要插入的內(nèi)容可能示出電影名稱和放映時(shí)間。作為另一示例,預(yù)覽可以示出電影名稱和/或時(shí)間,而要插入的內(nèi)容可能包括電影的剪輯、相關(guān)的鏈接等。圖3以流程圖的形式示出了其中可以獲取內(nèi)容并將其插入到文檔中的示例性過程。在轉(zhuǎn)向圖3的描述之前,注意,圖3的流程圖(以及圖4和6中所示的流程圖)示出了其中以特定的順序?qū)崿F(xiàn)過程的各階段的示例,如由連接框的線所指示的,但是可以以任何順序或以任何組合或子組合執(zhí)行這些圖示中所示的各個(gè)階段?,F(xiàn)在轉(zhuǎn)向圖3,在302處,可以呈現(xiàn)內(nèi)容收集界面元件。例如,圖1將用戶界面元件 102示為可以向其中鍵入文本內(nèi)容的框。用戶界面元件102由此是內(nèi)容收集界面元件的示例。然而,內(nèi)容收集界面元件可以采用任何形式。在304處,可以分析已輸入到內(nèi)容收集界面元件中的任何內(nèi)容,以確定用于獲取附加內(nèi)容的上下文。例如,如果正在創(chuàng)作的文檔是電子郵件消息,并且消息包含電影的名稱,那么可以推斷正在撰寫消息的用戶會(huì)對(duì)將電影相關(guān)內(nèi)容插入到消息中感興趣。該信息可以通過分析已被鍵入到電子郵件消息中的文本來收集(即使電子郵件消息是僅部分完成的)。由此,該分析可以被用作顯示“電影”按鈕112(在圖1中示出)的推動(dòng)力(例如, 對(duì)所顯示的按鈕的特定選擇可以是基于上下文的——例如如果正在撰寫的消息提及電影的名稱,那么可顯示“電影”按鈕,或者如果消息提及食物,那么可顯示“餐館”按鈕等)。實(shí)際上,分析會(huì)產(chǎn)生可用作搜索或檢索信息的內(nèi)容選擇或過濾準(zhǔn)則。例如,電子郵件消息中的特定電影的名稱可以被用作查詢項(xiàng)以便搜索電影相關(guān)的信息。
在306處,可以呈現(xiàn)對(duì)象獲取/對(duì)象包括界面元件。例如,用戶界面元件106(在圖1中示出)在它允許用戶發(fā)動(dòng)獲取內(nèi)容和/或?qū)⑺@取的內(nèi)容包括在文檔中的過程的意義上是對(duì)象獲取/對(duì)象包括界面的示例。在308處,可接收用戶已通過對(duì)象獲取/對(duì)象包括界面激活的對(duì)內(nèi)容的請(qǐng)求的指示。例如,用戶可以點(diǎn)擊按鈕110-116(圖1中示出)中的一個(gè)。如果用戶界面采用HTML 網(wǎng)頁的形式,那么每個(gè)按鈕可以是一鏈接,并且激活鏈接會(huì)生成超文本傳輸協(xié)議(HTTP)請(qǐng)求。這種HTTP請(qǐng)求是可以在308處接收的指示的示例。然而,可以以任何方式做出和/或接收請(qǐng)求。在310處,可響應(yīng)于請(qǐng)求獲取內(nèi)容項(xiàng)。例如,圖2示出了可能已經(jīng)響應(yīng)于請(qǐng)求獲取的電影相關(guān)內(nèi)容202的集合。內(nèi)容202包含項(xiàng)目204和206。這些是可在310處獲取的內(nèi)容項(xiàng)的示例。雖然圖2示出了其中所獲取的內(nèi)容包括兩個(gè)項(xiàng)目的示例,但是一般地可以在 310處獲取任何數(shù)目的內(nèi)容項(xiàng)(一個(gè)、或一個(gè)以上)。存在可以執(zhí)行以在310處獲取內(nèi)容項(xiàng)的各種過程。一個(gè)這樣的示例性過程是搜索 312。例如,可以通過將電影或餐館的名稱用作對(duì)搜索引擎的查詢來執(zhí)行獲取關(guān)于電影或餐館的信息。當(dāng)執(zhí)行搜索312時(shí),可以如圖4所示地進(jìn)行獲取信息的過程。在這樣的過程中, 可以對(duì)信息文集404執(zhí)行搜索(在402處)以選擇文集中的某些信息。信息文集可以是公共可訪問的網(wǎng)頁的索引、“desktop search(桌面搜索)”索引或任何其他類型的信息文集。 信息文集可以是單個(gè)源或者可以是多個(gè)不同的源(諸如一個(gè)或多個(gè)數(shù)據(jù)服務(wù)和/或一個(gè)或多個(gè)數(shù)據(jù)存儲(chǔ)庫或其組合)。(在某些情況下,在系統(tǒng)可以聚集來自不同的源的內(nèi)容或可以從不同的源中選擇內(nèi)容的意義上,細(xì)查若干個(gè)源以獲取內(nèi)容可以為結(jié)果增值。然而,本文中的主題應(yīng)用于從一個(gè)源或一個(gè)以上的源獲得內(nèi)容的系統(tǒng)。)搜索信息文集可生成一些結(jié)果, 并且可基于結(jié)果檢索信息項(xiàng)(在406處)。例如,可以檢索在搜索結(jié)果中具有最高相關(guān)度得分的文檔。該文檔的內(nèi)容可以是在310處獲取并且可以提供以包括在正在撰寫的文檔中的內(nèi)容項(xiàng)中的一個(gè)?,F(xiàn)在返回到圖3,獲取內(nèi)容的另一示例過程涉及聯(lián)系一個(gè)或多個(gè)服務(wù)(框314)。例如,如上所述,獲取關(guān)于電影或餐館的內(nèi)容的請(qǐng)求可能涉及獲取特定地點(diǎn)的地圖。地圖通常不是通過搜索獲取的,而是由地圖服務(wù)生成的。由此,獲取內(nèi)容的過程不必涉及搜索現(xiàn)有內(nèi)容的文集,而可以涉及生成內(nèi)容。搜索312和聯(lián)系服務(wù)(框314)是獲取內(nèi)容的過程的示例。然而,可以在310處使用任何過程來獲取內(nèi)容項(xiàng)。在316處,可以顯示一個(gè)或多個(gè)內(nèi)容項(xiàng)的列表。例如,圖2示出了標(biāo)識(shí)由內(nèi)容獲取過程發(fā)現(xiàn)的各個(gè)內(nèi)容項(xiàng)的列表208。列表208是可以在316處顯示的列表的示例,盡管這種列表可以采用任何形式。在318處,可以接收對(duì)預(yù)覽項(xiàng)目的請(qǐng)求的指示。如上所述結(jié)合圖2,用戶可以通過將定點(diǎn)設(shè)備懸停在列表上的特定項(xiàng)目上來做出這樣的請(qǐng)求。然而,預(yù)覽項(xiàng)目的請(qǐng)求可以采用任何形式。在320處,可以顯示項(xiàng)目的預(yù)覽。再次參考圖2的示例,預(yù)覽212是可以顯示的預(yù)覽的示例。然而,預(yù)覽可以采用任何形式。在322處,可以將所獲取的項(xiàng)目包括在文檔中。例如,用戶可以點(diǎn)擊在316處顯示的列表上的特定項(xiàng)目。該點(diǎn)擊可以是對(duì)將特定內(nèi)容項(xiàng)包括在正在撰寫的文檔中的指示。
一旦通過用鍵盤輸入內(nèi)容,通過經(jīng)由上述過程獲取/包括內(nèi)容,或通過某一其他的機(jī)制撰寫了文章,那么可以以某種方式傳遞或存儲(chǔ)文檔(在3M處)。例如,可以在網(wǎng)絡(luò)上發(fā)送電子郵件消息(或任何其他類型的文檔),或者可以將文檔存儲(chǔ)在盤上??梢宰龀鰧?duì)所創(chuàng)作的文檔的任何使用。圖5示出了可用于實(shí)現(xiàn)此處所述的主題的一些或全部的示例性系統(tǒng)500。系統(tǒng)500 可用于實(shí)現(xiàn)圖3的過程,但是系統(tǒng)500可用于實(shí)現(xiàn)任何過程。相反,可以使用系統(tǒng)500的組件來實(shí)現(xiàn)圖3的過程,但是該過程可以用任何組件來實(shí)現(xiàn)。系統(tǒng)500可以包括文檔撰寫組件502、內(nèi)容包括組件504、內(nèi)容獲取組件506和/ 或數(shù)據(jù)庫508。這些元件可以用存儲(chǔ)在數(shù)據(jù)記憶組件(如下文中結(jié)合圖7所討論的)中的和/或在處理器(也如下文中結(jié)合圖7所討論的)上執(zhí)行的代碼和/或數(shù)據(jù)的形式實(shí)現(xiàn)。 作為另一示例,系統(tǒng)500的元件可以被實(shí)現(xiàn)為硬件。然而,圖5中所示的元件可以用任何方式來實(shí)現(xiàn)。文檔撰寫組件502可以接收要包括在文檔中的內(nèi)容。例如,文檔撰寫組件502可以生成和/或提供為文檔收集鍵入的內(nèi)容的用戶界面元件102 (在圖1中示出)。內(nèi)容包括組件504可以協(xié)助用戶獲取要包括在文檔中的內(nèi)容。例如,內(nèi)容包括組件504可以提供用戶界面元件106(在圖1中示出),后者可供用以獲取要包括在文檔中的內(nèi)容。內(nèi)容包括組件504可以顯示可由用戶激活的各種控件(例如圖1中示出的按鈕)。當(dāng)用戶請(qǐng)求時(shí),內(nèi)容獲取組件506可獲取內(nèi)容。例如,當(dāng)用戶激活按鈕(或某種其他類型的控件)時(shí),內(nèi)容包括組件504可以接收控件已被激活的指示,并且可以請(qǐng)求內(nèi)容獲取組件506采取行動(dòng)以獲取內(nèi)容。例如,內(nèi)容獲取組件506可以是搜索引擎、地圖生成服務(wù)或者檢索或創(chuàng)建內(nèi)容的(或?qū)е聶z索或獲取這種內(nèi)容的)某種其他類型的組件。數(shù)據(jù)庫508可以是可以由內(nèi)容獲取組件506獲取的內(nèi)容的存儲(chǔ)。例如,數(shù)據(jù)庫508 可以存儲(chǔ)網(wǎng)頁的索引、電影的列表或餐館評(píng)論的集合等。數(shù)據(jù)庫508在圖5中被示為在系統(tǒng)500內(nèi),但它也可以是在系統(tǒng)500外部的。圖6示出了可被執(zhí)行以允許用戶創(chuàng)作文檔并為該文檔獲取內(nèi)容的一組示例性動(dòng)作,作為集成的UI的一部分。當(dāng)將獲取內(nèi)容的工具集成到創(chuàng)作界面中時(shí),工具可以提供來自各個(gè)源的內(nèi)容。由此,在602處,可以加入這些源。加入源可涉及選擇某些公共的信息源(例如特定搜索引擎、特定地圖服務(wù)等)。然而,一些源可能涉及更加復(fù)雜的商業(yè)協(xié)議。如上所述,用戶的方便是將用于獲取內(nèi)容的工具集成到文檔創(chuàng)作界面中的一個(gè)原因。然而,集成工具的另一可能的原因是通過適當(dāng)?shù)纳虡I(yè)協(xié)議引導(dǎo)對(duì)內(nèi)容的選擇。例如,web郵件服務(wù)的運(yùn)營商可能在其電子郵件撰寫屏幕上提供內(nèi)容獲取工具。為了貨幣化web郵件系統(tǒng)(或出于某種其他的原因),服務(wù)的運(yùn)營商可能與各種內(nèi)容源的提供商簽訂協(xié)議(框604)。這些協(xié)議可能提倡內(nèi)容獲取工具來促進(jìn)來自特定源的內(nèi)容以交換貨幣。例如,可以有與^gat的提供餐館信息的協(xié)議、與Netflix的提供電影信息的協(xié)議等。這種信息供應(yīng)商可能付款以使得內(nèi)容獲取工具將用戶引到他們的內(nèi)容(或者可選地,他們可為對(duì)他們的內(nèi)容的使用進(jìn)行收費(fèi))。可以形成的附加類型的商業(yè)關(guān)系是提供內(nèi)容獲取功能的實(shí)體允許將該功能與另一實(shí)體的應(yīng)用程序一起使用。為了方便該使用,實(shí)現(xiàn)內(nèi)容獲取功能的實(shí)體可以提供由其他方使用的開發(fā)工具(在606處)。例如,參考圖1的用戶界面元件106(其可幫助用戶獲取內(nèi)容并將內(nèi)容插入到文檔中),可以提供允許將元件添加到任意網(wǎng)站的開發(fā)工具。由此,web 郵件服務(wù)、在線文字處理系統(tǒng)或任何其他類型的系統(tǒng)的運(yùn)營商可以使用該開發(fā)工具來將內(nèi)容獲取功能添加到其網(wǎng)站上。在608處,可以將界面(例如圖1中示出的用戶界面100)提供給用戶。提供界面給用戶可涉及傳遞HTML內(nèi)容以便顯示在用戶的web瀏覽器上,或者在由用戶的計(jì)算機(jī)上的操作系統(tǒng)提供的窗口中顯示內(nèi)容。界面可以具有用于從用戶處接收內(nèi)容的元件(例如在圖 1中示出的接收用鍵盤輸入的內(nèi)容的用戶界面元件10 。界面也可以具有提供從在602處加入的源處獲取附加內(nèi)容和/或插入附加內(nèi)容的選項(xiàng)的元件(例如圖1中示出的用戶界面元件106)。注意,特定源可以是選項(xiàng)之一,或者可以僅是內(nèi)容的源。例如,Zagat可能提供餐館信息??梢皂憫?yīng)于點(diǎn)擊“餐館”按鈕提供來自Zagat的信息。然而,可以有返回這種信息的“Zagat”按鈕。在610處,可以接收用戶已激活了選項(xiàng)中的一個(gè)以獲取內(nèi)容的指示。如上所述,各種選項(xiàng)可以被示為按鈕,當(dāng)按鈕被點(diǎn)擊時(shí)其每一個(gè)可以生成HTTP請(qǐng)求。對(duì)這種HTTP請(qǐng)求的接收是對(duì)用戶已激活特定選項(xiàng)的指示的示例。然而,用戶交互可以以任何形式做出,以便于適應(yīng)各種不同的使用模型。例如,可以使用除了 HTTP以外的網(wǎng)絡(luò)技術(shù)。此外,用戶交互 (以及用戶正與之交互的軟件)可以被包含在本地機(jī)器內(nèi)而非分布在網(wǎng)絡(luò)中的機(jī)器上,在這種情況下可以使用支持與本地應(yīng)用程序的用戶交互的機(jī)制。在612處,可以從對(duì)應(yīng)于選項(xiàng)中的第一個(gè)的源獲取內(nèi)容。例如,如果用戶激活餐館選項(xiàng),那么可以獲取來自Zagat的關(guān)于餐館的內(nèi)容。選項(xiàng)可以按照源來命名(例如可以有用于“搜索hgat的數(shù)據(jù)庫(search Zagat' s database) ”的選項(xiàng)),或者帶有聽上去更一般的名稱的選項(xiàng)(例如“餐館”)可以基于用戶正在尋找餐館信息的事實(shí)從一個(gè)或多個(gè)源 (例如^igat)獲取內(nèi)容。在獲取了一個(gè)或多個(gè)內(nèi)容項(xiàng)之后,可以將這些項(xiàng)中的一個(gè)或多個(gè)添加到文檔中 (在614處)。如上所述,用戶可點(diǎn)擊項(xiàng)目以指示要將項(xiàng)目添加到文檔中。例如,圖1示出了其中獲取地圖122作為內(nèi)容并接著將其加入到文檔中的示例。圖7示出了其中可以部署此處所述的主題的各方面的示例性環(huán)境。計(jì)算機(jī)700包括一個(gè)或多個(gè)處理器702以及一個(gè)或多個(gè)數(shù)據(jù)記憶組件704。處理器702通常是微處理器,諸如在個(gè)人臺(tái)式或膝上型計(jì)算機(jī)、服務(wù)器、手持式計(jì)算機(jī)或另一種計(jì)算設(shè)備中發(fā)現(xiàn)的那些微處理器。數(shù)據(jù)記憶組件704是能夠短期或長期存儲(chǔ)數(shù)據(jù)的組件。 數(shù)據(jù)記憶組件704的示例包括硬盤、可移動(dòng)盤(包括光盤和磁盤)、易失性和非易失性隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、閃存、磁帶等。數(shù)據(jù)記憶組件是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的示例。計(jì)算機(jī)700可以包括顯示器712或與之相關(guān)聯(lián),顯示器712可以是陰極射線管 (CRT)監(jiān)視器、液晶顯示器(LCD)監(jiān)視器或任何其他類型的監(jiān)視器。軟件可以存儲(chǔ)在數(shù)據(jù)記憶組件704上,并且可以在一個(gè)或多個(gè)處理器702上執(zhí)行。 這種軟件的一示例是可以實(shí)現(xiàn)上文結(jié)合圖1-6所述的某些或全部功能的內(nèi)容獲取和/或包括軟件706,盡管可以使用任何類型的軟件。軟件706可以例如通過一個(gè)或多個(gè)組件實(shí)現(xiàn), 這些組件可以是分布式系統(tǒng)中的組件、單獨(dú)的文件、單獨(dú)的函數(shù)、單獨(dú)的對(duì)象、單獨(dú)的代碼行等。其中程序存儲(chǔ)在硬盤上、載入到MM中并且在計(jì)算機(jī)處理器執(zhí)行的個(gè)人計(jì)算機(jī)代表圖7中描述的場景,盡管此處所述的主題不限于該示例。
此處所述的主題可以被實(shí)現(xiàn)為存儲(chǔ)在一個(gè)或多個(gè)數(shù)據(jù)記憶組件704中并且在一個(gè)或多個(gè)處理器702上執(zhí)行的軟件。作為另一示例,本主題可以被實(shí)現(xiàn)為具有執(zhí)行一個(gè)或多個(gè)方法動(dòng)作的指令的軟件,其中指令被存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上。執(zhí)行動(dòng)作的指令可以被存儲(chǔ)在一個(gè)介質(zhì)上,或者可以散開分布在復(fù)數(shù)個(gè)介質(zhì)上,這樣使得指令可以共同出現(xiàn)在一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上,而不關(guān)是否所有的指令恰好在相同的介質(zhì)上。在一個(gè)示例性環(huán)境中,計(jì)算機(jī)700可以通過網(wǎng)絡(luò)708通信地連接到一個(gè)或多個(gè)其他設(shè)備。可能在結(jié)構(gòu)上類似于計(jì)算機(jī)700的計(jì)算機(jī)710是可以連接到計(jì)算機(jī)700的設(shè)備的一示例,盡管也可以將其他類型的設(shè)備這樣連接。盡管用結(jié)構(gòu)特征和/或方法動(dòng)作專用的語言描述了本主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于上述具體特征或動(dòng)作。相反,上述具體特征和動(dòng)作是作為實(shí)現(xiàn)權(quán)利要求的示例形式公開的。
權(quán)利要求
1.一種方便文檔的撰寫的方法,所述方法包括呈現(xiàn)(30 從用戶處接收要包括在所述文檔(104)中的第一內(nèi)容(124)第一用戶界面元件(102);呈現(xiàn)(306)供用以獲取第二內(nèi)容O02)的第二用戶界面元件(106); 響應(yīng)于所述用戶對(duì)所述第二用戶界面元件(106)中的控件(108)的激活獲取(310)所述第二內(nèi)容O02)將所述第二內(nèi)容O02)的項(xiàng)目(206)包括(32 在所述文檔(104)中;以及在網(wǎng)絡(luò)(708)上傳達(dá)(324)所述文檔或存儲(chǔ)(324)所述文檔(104)。
2.如權(quán)利要求1所述的方法,其特征在于,所述第二用戶界面元件指示內(nèi)容的類別,并且其中對(duì)所述第二內(nèi)容的所述獲取包括執(zhí)行對(duì)信息文集的搜索以獲取標(biāo)識(shí)所述類別中的項(xiàng)目的結(jié)果;以及基于已由所述結(jié)果標(biāo)識(shí)的所述項(xiàng)目來檢索所述項(xiàng)目。
3.如權(quán)利要求1所述的方法,其特征在于,對(duì)所述第二內(nèi)容的所述獲取包括 響應(yīng)于所述用戶對(duì)所述控件的激活,聯(lián)系生成所述項(xiàng)目的服務(wù)。
4.如權(quán)利要求1所述的方法,其特征在于,還包括在獲取所述第二內(nèi)容之后,在所述包括之前顯示所述項(xiàng)目的預(yù)覽。
5.如權(quán)利要求4所述的方法,其特征在于,還包括顯示多個(gè)項(xiàng)目的列表,所述項(xiàng)目在所述列表中具有一條目;以及接收所述用戶的定點(diǎn)設(shè)備正懸停在所述列表中所述項(xiàng)目的條目上的指示; 其中響應(yīng)于所述指示顯示所述預(yù)覽。
6.如權(quán)利要求1所述的方法,其特征在于,還包括分析所述第一內(nèi)容以確定內(nèi)容選擇準(zhǔn)則;其中對(duì)所述第二內(nèi)容的所述獲取是基于所述內(nèi)容選擇準(zhǔn)則的。
7.具有用于執(zhí)行如權(quán)利要求1-6中的任一項(xiàng)所述的方法的可執(zhí)行指令的一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)。
8.—種在文檔中包括內(nèi)容項(xiàng)的系統(tǒng),所述系統(tǒng)包括 處理器(702);在所述處理器(70 上執(zhí)行的文檔撰寫組件(502),所述內(nèi)容撰寫組件(50 接收要包括在所述文檔(104)中的第一內(nèi)容(124);內(nèi)容包括組件(504),其提供供用以獲取要包括在所述文檔(104)中的第二內(nèi)容(202) 的用戶界面元件(106),所述用戶界面元件包括可激活控件(112);以及內(nèi)容獲取組件(506),其響應(yīng)于用戶對(duì)所述可激活控件(112)的激活獲取所述第二內(nèi)容(202)。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,還包括 所述內(nèi)容獲取組件從其中獲取所述第二內(nèi)容的數(shù)據(jù)庫。
10.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)是由第一實(shí)體操縱的,并且其中所述內(nèi)容獲取組件從所述第二實(shí)體處獲取所述第二內(nèi)容,所述第一實(shí)體已簽訂促進(jìn)所述第二實(shí)體的內(nèi)容的協(xié)議。
11.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述內(nèi)容獲取組件通過從自多個(gè)源獲取的數(shù)據(jù)當(dāng)中進(jìn)行聚集或選擇來獲取所述第二內(nèi)容。
12.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述第二內(nèi)容包括對(duì)事件的指示和到要發(fā)生的所述事件的位置的地圖,并且其中所述內(nèi)容包括組件向所述用戶提供包括對(duì)所述事件的描述、所述地圖或者對(duì)所述事件的所述描述和所述地圖兩者的選項(xiàng)。
13.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述內(nèi)容包括組件響應(yīng)于來自所述用戶的請(qǐng)求提供所述第二內(nèi)容的項(xiàng)目的預(yù)覽。
14.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述內(nèi)容包括組件向所述用戶提供多個(gè)內(nèi)容類別的選擇。
15.如權(quán)利要求8所述的系統(tǒng),其特征在于,其中所述內(nèi)容包括組件分析所述第一內(nèi)容以確定要提供給所述用戶的內(nèi)容的類別或用于獲取所述第二內(nèi)容的搜索的過濾準(zhǔn)則。
全文摘要
可以將協(xié)助用戶獲取內(nèi)容的機(jī)制與允許用戶創(chuàng)作電子郵件消息或任何其他類型的文檔的工具集成。例如,電子郵件撰寫系統(tǒng)可以提供允許用戶獲取某些類型的內(nèi)容——例如電影時(shí)間、餐館菜單等的各種按鈕。當(dāng)用戶點(diǎn)擊該按鈕時(shí),可以獲取所請(qǐng)求的類型的內(nèi)容,并且可以向用戶提供將所獲取的內(nèi)容插入到正在編輯的文檔中的機(jī)會(huì)。所獲取的內(nèi)容可以遵循特定結(jié)構(gòu)。例如,系統(tǒng)可以被配置成通過返回特定電影的放映時(shí)間和影院的列表來響應(yīng)于對(duì)電影相關(guān)內(nèi)容的請(qǐng)求。
文檔編號(hào)G06F17/21GK102171685SQ200980139827
公開日2011年8月31日 申請(qǐng)日期2009年9月29日 優(yōu)先權(quán)日2008年10月3日
發(fā)明者A·歐馬赫尼, A·蓋茨, C·S·埃斯蒂斯, D·W·勞, D·巴林, E·J·米蘭達(dá)-斯特納, G·費(fèi)雷雷斯, M·C·孔茨, M·P·馬斯特拉格利, M·吉泰, N·S·柯林斯, O·烏德祖, R·M·多林, W·迪特里希 申請(qǐng)人:微軟公司