欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

語義畫布的制作方法

文檔序號:6650910閱讀:146來源:國知局
專利名稱:語義畫布的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及自然語言處理,尤其涉及圖形用戶界面中的自然語言輸入和圖形用戶輸入的同步。
背景技術(shù)
圖形用戶界面(GUI)應(yīng)用程序在大多數(shù)任務(wù)中表現(xiàn)良好,這部分是因為GUI提供直接與應(yīng)用程序中可用的功能相關(guān)的選項,且用戶從中可以選擇他/她想要做的事。然而,GUI應(yīng)用程序有時是難以使用的。例如,在某些實例中,功能要求打開眾多子對話框,這對用戶可能不是直觀的。另外,需要多個步驟來使用合適的信息填寫GUI元素。GUI元素可以包括下拉式或者彈出式菜單、復(fù)選框、單選按鈕、文本或其它類型的數(shù)據(jù)輸入字段等。而且,用戶可能不知道在GUI內(nèi)的何處可找到可用的選項。使用小型設(shè)備(諸如,手持式設(shè)備、個人數(shù)字助理、具有連網(wǎng)功能的無線電話等)向GUI輸入信息可能是困難的。最后,殘疾人難以例如導(dǎo)航并完成GUI表單。
為了克服與GUI相關(guān)聯(lián)的某些限制,開發(fā)了自然語言應(yīng)用程序,它能夠允許用戶容易地表達(dá)在GUI中可能相當(dāng)復(fù)雜的概念。例如,在自然語言中,用戶可以請求“找到我上周發(fā)給Bill的所有電子郵件”、“將屏幕分辨率改為1280×1024”、“哪里有關(guān)于微軟公司的網(wǎng)頁”、“請刪除所有未讀電子郵件”等。每一這樣的話語是可容易理解的,但是在完成GUI表單時增加了復(fù)雜性的多個層次。
然而,存在關(guān)于NL應(yīng)用程序的某些問題,諸如可發(fā)現(xiàn)性、混淆、僵局以及訓(xùn)練問題??砂l(fā)現(xiàn)性指的是其中用戶不知道他/她在程序中能夠做的事的情形?;煜傅氖钱?dāng)用戶不明白應(yīng)用程序如何解釋特定的文本輸入時產(chǎn)生的問題。僵局指的是軟件程序不向用戶提供選項或機制以改變他/她想要的東西。最后,不存在訓(xùn)練用戶如何利用NL輸入的機制。
對改進(jìn)的用戶-程序交互的直觀的用戶界面存在迫切的需求。本發(fā)明的實施例提供了對這些或其它問題的解決方案,并提供了超過現(xiàn)有語義創(chuàng)作工具的優(yōu)點。

發(fā)明內(nèi)容
一種用于同步自然語言輸入元素和圖形用戶界面的系統(tǒng)含有同步引擎。該同步引擎適用于監(jiān)視用戶與自然語言輸入和圖形用戶界面的交互,并響應(yīng)于用戶交互來同步自然語言輸入元素和圖形用戶界面。


圖1是可在其中實現(xiàn)本發(fā)明的實施例的計算系統(tǒng)環(huán)境的圖示。
圖2是根據(jù)本發(fā)明的實施例用于同步自然語言和GUI輸入的系統(tǒng)的簡化框圖。
圖3是根據(jù)本發(fā)明的實施例用于同步自然語言和GUI輸入的系統(tǒng)的一部分的展開的簡化框圖。
圖4是示出根據(jù)本發(fā)明的實施例用于同步GUI和自然語言輸入的方法的簡化流程圖。
圖5是根據(jù)本發(fā)明的實施例使用自然語言輸入和GUI輸入元素的Find應(yīng)用程序的屏幕截圖,其中某些GUI元素是從自然語言輸入中自動構(gòu)造的。
圖6是根據(jù)本發(fā)明的實施例使用自然語言輸入和GUI輸入元素的Find應(yīng)用程序的屏幕截圖,其中輸入行是基于所選擇的GUI元素更新的。
圖7是根據(jù)本發(fā)明的實施例在通過所選擇的GUI元素添加了“From(來自)”條件后的圖6的Find應(yīng)用程序的屏幕截圖。
圖8是根據(jù)本發(fā)明的實施例在通過所選擇的GUI元素添加了日期條件后的圖7的Find應(yīng)用程序的屏幕截圖。
圖9是根據(jù)本發(fā)明的實施例在通過所選擇的GUI元素添加了“carbon copy(抄送)”條件后,并在執(zhí)行查詢后的圖7的Find應(yīng)用程序的屏幕截圖。
具體實施例方式
根據(jù)本發(fā)明的實施例,一種同步引擎將用戶界面的GUI元素(諸如復(fù)選框、下拉式菜單、單選按鈕、文本字段等)與用戶界面的自然語言文本輸入同步。具體地,該同步引擎監(jiān)視用戶與自然語言文本輸入字段的交互,并且如果檢測到用戶界面的改變,作為響應(yīng)使用對應(yīng)的GUI元素來更新用戶界面。類似地,如果檢測到對GUI元素的改變,該同步更新自然語言文本。
通過將GUI元素與自然語言文本輸入同步,或者反之,用戶接收到關(guān)于所選擇的輸入的即時反饋。GUI元素和自然語言輸入之間的關(guān)系提供了一種直觀的訓(xùn)練機制,借此用戶通過視覺反饋能夠知道應(yīng)用程序如何操作。
圖1示出了可在其上實現(xiàn)本發(fā)明的合適的計算系統(tǒng)環(huán)境100的示例。計算系統(tǒng)環(huán)境100只是合適的計算環(huán)境的一個示例,并不旨在對本發(fā)明的使用范圍或功能提出任何限制。也不應(yīng)該把計算環(huán)境100解釋為對示例性操作環(huán)境100中示出的任一組件或其組合有任何依賴性或要求。
本發(fā)明可用眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置來操作。適合在本發(fā)明中使用的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于,個人計算機、服務(wù)器計算機、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程消費者電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機、大型機、電話系統(tǒng)、包含上述系統(tǒng)或設(shè)備中的任一個的分布式計算機環(huán)境等。
本發(fā)明可在諸如由計算機執(zhí)行的程序模塊等的計算機可執(zhí)行指令的通用語境下描述。一般而言,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,它們執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。本發(fā)明也可以在分布式計算環(huán)境中實現(xiàn),其中任務(wù)由通過通信網(wǎng)絡(luò)連接的遠(yuǎn)程處理設(shè)備執(zhí)行。在分布式計算環(huán)境中,程序模塊可以位于包括存儲器存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機存儲介質(zhì)中。
參考圖1,用于實現(xiàn)本發(fā)明的一個示例性系統(tǒng)包括計算機110形式的通用計算設(shè)備。計算機110的組件可以包括,但不限于,處理單元120、系統(tǒng)存儲器130和將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件耦合至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是若干類型的總線結(jié)構(gòu)中的任一種,包括存儲器總線或存儲器控制器、外圍總線和使用各種總線體系結(jié)構(gòu)中的任一種的局部總線。作為示例,而非限制,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、擴展的ISA(EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(VESA)局部總線和外圍部件互連(PCI)總線(也被稱為Mezzanine總線)。
計算機110通常包括各種計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是能夠被計算機110訪問的任何可用介質(zhì),且包括易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì)。作為示例,而非限制,計算機可讀介質(zhì)可以包括計算機存儲介質(zhì)和通信介質(zhì)。計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的易失性和非易失性、可移動和不可移動介質(zhì)。計算機存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光盤存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或能用于存儲所需信息且可以由計算機110訪問的任何其它介質(zhì)。通信介質(zhì)通常具體化為諸如載波或其它傳輸機制等已調(diào)制數(shù)據(jù)信號中的計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),且包含任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”指的是這樣一種信號,其一個或多個特征以在信號中編碼信息的方式被設(shè)定或更改。作為示例,而非限制,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng)絡(luò)或直接線連接,以及無線介質(zhì),諸如聲學(xué)、RF、紅外線和其它無線介質(zhì)。上述中任一個的組合也應(yīng)包括在計算機可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲器130包括易失性或非易失性存儲器形式的計算機存儲介質(zhì),諸如只讀存儲器(ROM)131和隨機存取存儲器(RAM)132?;据斎?輸出系統(tǒng)133(BIOS)包含有助于諸如啟動時在計算機110中元件之間傳遞信息的基本例程,它通常存儲在ROM131中。RAM132通常包含處理單元120可以立即訪問和/或目前正在操作的數(shù)據(jù)和/或程序模塊。作為示例,而非限制,圖1示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
計算機110也可以包括其它可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)。僅作為示例,圖1示出了從不可移動、非易失性磁介質(zhì)中讀取或向其寫入的硬盤驅(qū)動器141,從可移動、非易失性磁盤152中讀取或向其寫入的磁盤驅(qū)動器151,以及從諸如CD ROM或其它光學(xué)介質(zhì)等可移動、非易失性光盤156中讀取或向其寫入的光盤驅(qū)動器155??梢栽谑纠圆僮鳝h(huán)境中使用的其它可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)包括,但不限于,盒式磁帶、閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤驅(qū)動器141通常由不可移動存儲器接口,諸如接口140連接至系統(tǒng)總線121,磁盤驅(qū)動器151和光盤驅(qū)動器155通常由可移動存儲器接口,諸如接口150連接至系統(tǒng)總線121。
以上描述和在圖1中示出的驅(qū)動器及其相關(guān)聯(lián)的計算機存儲介質(zhì)為計算機110提供了對計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例如,在圖1中,硬盤驅(qū)動器141被示為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意,這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137相同或不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在這里被標(biāo)注了不同的標(biāo)號是為了說明至少它們是不同的副本。
用戶可以通過輸入設(shè)備,諸如鍵盤162、麥克風(fēng)163和定點設(shè)備161(諸如鼠標(biāo)、跟蹤球或觸摸墊)向計算機110輸入命令和信息。其它輸入設(shè)備(未示出)可以包括操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常由耦合至系統(tǒng)總線的用戶輸入接口160連接至處理單元120,但也可以由其它接口或總線結(jié)構(gòu),諸如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器191或其它類型的顯示設(shè)備也經(jīng)由接口,諸如視頻接口190連接至系統(tǒng)總線121。除監(jiān)視器以外,計算機也可以包括其它外圍輸出設(shè)備,諸如揚聲器197和打印機196,它們可以通過輸出外圍接口195連接。
計算機110可使用至一個或多個遠(yuǎn)程計算機,諸如遠(yuǎn)程計算機180的邏輯連接在網(wǎng)絡(luò)化環(huán)境下操作。遠(yuǎn)程計算機180可以是個人計算機、手持式設(shè)備、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點,且通常包括上文相對于計算機110描述的許多或所有元件,盡管在圖1中只示出存儲器存儲設(shè)備181。圖1中所示邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但也可以包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)范圍計算機網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見的。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110通過網(wǎng)絡(luò)接口或適配器170連接至局域網(wǎng)171。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110通常包括調(diào)制解調(diào)器172或用于通過諸如因特網(wǎng)等WAN173建立通信的其它裝置。調(diào)制解調(diào)器172可以是內(nèi)置或外置的,它可以通過用戶輸入接口160或其它合適的機制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機110所描述的程序模塊或其部分可以存儲在遠(yuǎn)程存儲器存儲設(shè)備中。作為示例,而非限制,圖1示出了遠(yuǎn)程應(yīng)用程序185駐留在存儲器設(shè)備181上。可以理解,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計算機之間建立通信鏈路的其它手段。
圖2是根據(jù)本發(fā)明的一個實施例的同步(語義畫布(semantic canvas))系統(tǒng)200的簡化框圖。同步系統(tǒng)200含有在自然語言(NL)輸入元素204和圖形用戶界面(GUI)206之間通信地耦合的同步引擎202。一般而言,NL輸入元素204是適用于接收文本串或語音輸入的元素。NL輸入元素204允許用戶鍵入或輸入(諸如通過說話)完整或部分句子或意圖中的數(shù)據(jù),諸如“找出我上周發(fā)給Joe的所有電子郵件(find all emails that I sent to Joe last week)”。NL輸入元素204可以是用于接受這樣的用戶輸入的任何機制。NL輸入元素204可以包括語音-文本功能(未示出),且可以適用于接收語音輸入并將這樣的輸入數(shù)字化為文本。GUI206包括一個或多個功能性元素(諸如下拉式菜單、文本字段、復(fù)選框、應(yīng)用程序域內(nèi)的字段等)。GUI206允許用戶從GUI內(nèi)部的對象來明確地建立他或她的意圖。例如,對于找出上周Bill發(fā)給Joe的所有電子郵件的意圖,用戶可以利用GUI206在尋找的項下面選擇“電子郵件(email)”。用戶然后可以使用GUI206來添加一個條件,諸如“發(fā)給(sent to)”,并添加“Joe”作為該條件值。最后,用戶可以添加另一個條件,諸如“發(fā)送日期(date sent)”等。一般而言,GUI206和NL輸入元素204適用于執(zhí)行相同的功能,諸如尋找功能。用戶可以通過選擇GUI206的一個或多個功能性元素并輸入適當(dāng)?shù)臈l件信息,或者通過向NL輸入元素204輸入查詢來找出例如位于計算機硬盤上的對象或?qū)嶓w。
同步引擎202是適用于響應(yīng)NL輸入行204中的變化并相應(yīng)地更新GUI206的模塊。同步引擎202也適用于響應(yīng)GUI中的變化并更新NL輸入行以反映用戶鍵入的內(nèi)容。同步引擎202利用NL重述引擎208將所選擇的GUI206的功能性元素轉(zhuǎn)換成NL輸入元素204中的自然語言文本輸入。同步元素202利用語義引擎210將來自NL輸入元素204的自然語言輸入轉(zhuǎn)化為GUI206中的功能性元素。同步引擎202適用于監(jiān)視NL輸入元素204中的數(shù)據(jù)的變化或者GUI206的所選功能性元素的變化,并且使用適當(dāng)?shù)淖兓铝硪粋€元素,使得NL輸入元素204和GUI206被同步。
語義畫布系統(tǒng)200的功能性元素可以在單個應(yīng)用程序內(nèi)實現(xiàn)(如由虛線212所指示)?;蛘?,語義畫布系統(tǒng)200的功能性元素可以在一個以上應(yīng)用程序中實現(xiàn)并適用于通信以提供同步。
一般而言,對NL輸入元素204的NL輸入可以是任何可辨識的形式。在一實施例中,NL輸入元素204適用于接收文本或語音輸入。如此處所使用的,術(shù)語“NL輸入”指的是自然語言格式的任何數(shù)據(jù)輸入。如此處所使用的,術(shù)語“自然語言”指的是與人正常說話的方式并行的輸入,這與計算機語言、人工語言或者受約束或受控詞匯相反。如此處所使用的,術(shù)語“文本輸入”、“NL輸入”和“語音輸入”可以被理解為關(guān)于對NL輸入元素204的輸入是可互換的。
圖3是根據(jù)本發(fā)明的實施例的同步系統(tǒng)300的一部分的展開的框圖。在該實現(xiàn)中,同步引擎的基礎(chǔ)語義被轉(zhuǎn)化為查詢句法,諸如SQL,命中數(shù)據(jù)庫并返回結(jié)果。然而,應(yīng)用程序可能以任何數(shù)量的方式,或者直接從GUI,直接從NL輸入,或者從某些中間表示來執(zhí)行任務(wù)或搜索。
同步系統(tǒng)300含有在NL輸入304和GUI306之間通信地耦合的同步引擎302。另外,同步引擎302被通信地耦合至執(zhí)行引擎308和數(shù)據(jù)存儲310。執(zhí)行引擎308基于NL輸入304的文本輸入或者GUI306的功能性元素選擇對數(shù)據(jù)存儲310中的數(shù)據(jù)執(zhí)行操作,并將結(jié)果返回至用戶界面的結(jié)果區(qū)域312。
NL輸入304允許用戶鍵入他/她的意圖(諸如“找出來自Bob的所有電子郵件(Find all email from Bob)”)。NL輸入304在發(fā)生變化時通知同步引擎302。GUI306允許用戶通過諸如下拉式菜單等功能性元素手動地建立或改變他/她的意圖。GUI306在發(fā)生變化時通知同步引擎。同步引擎302適用于當(dāng)用戶在NL輸入304中輸入文本時自動建立GUI306中的功能性元素。同步引擎302也適用于響應(yīng)于GUI306中的變化自動更新NL輸入304中的文本。在任一情況下,同步引擎302向相應(yīng)的元素(NL輸入304或GUI306)通知變化。
這樣,同步引擎302充分利用GUI306和NL輸入304的力量,同時克服了兩者的限制。在NL輸入304和GUI306之間,在用戶界面中實現(xiàn)的同步系統(tǒng)300提供了機制以容易地允許用戶表達(dá)他或她想要做的內(nèi)容、顯示他/她已經(jīng)在GUI306或NL輸入304中完成的內(nèi)容、以及改變兩者中的任一位置的表達(dá)。系統(tǒng)300提供了用于內(nèi)建訓(xùn)練和可發(fā)現(xiàn)性的裝置。
在一實施例中,執(zhí)行引擎308由同步引擎302通知變化。執(zhí)行引擎308構(gòu)造例如類似于SQL的查詢,并從存儲310中取回結(jié)果。執(zhí)行引擎308然后將結(jié)果傳送給結(jié)果區(qū)域312(或者應(yīng)用程序)用于顯示。
該方法的一種實現(xiàn)將同步引擎302中的基礎(chǔ)語義轉(zhuǎn)化為諸如SQL等查詢句法、命中數(shù)據(jù)庫310、并將結(jié)果返回至顯示區(qū)域312。
可以使用語義引擎以及創(chuàng)作的方案和注解集來有效地實現(xiàn)同步引擎?;蛘撸瑧?yīng)用程序可以實現(xiàn)用于在NL和GUI以及反向之間轉(zhuǎn)換的所有邏輯。
圖4是根據(jù)本發(fā)明的實施例同步GUI和用戶界面的自然語言文本輸入的方法的簡化框圖。同步引擎監(jiān)視GUI和自然語言文本輸入的變化(框400)。如果不存在變化(框402),那么同步引擎繼續(xù)監(jiān)視GUI和自然語言文本輸入,直到檢測到變化。如果檢測到的變化不是對于NL輸入的(框404),那么同步引擎將變化從GUI傳送給重述引擎(框406)。重述引擎公式化NL輸入短語(框408)。同步引擎然后使用公式化的NL輸入短語更新自然語言輸入(框410)。同步引擎然后繼續(xù)監(jiān)視NL輸入和GUI的變化(框400)。
如果檢測到的變化是針對NL輸入的(框404),那么同步引擎將變化從NL輸入傳送給語義引擎(框412)。語義引擎將語義解答轉(zhuǎn)化為GUI的對象(框414)。同步引擎使用轉(zhuǎn)化的NL輸入短語更新GUI(框416)。同步引擎然后繼續(xù)監(jiān)視NL輸入和GUI的變化(框400)。
圖5是使用自然語言輸入元素502和含有諸如下拉式菜單506、文本字段508、復(fù)選框510以及按鍵512等輸入元素或GUI對象的GUI 504的Find應(yīng)用程序500的屏幕截圖。根據(jù)本發(fā)明的實施例,某些GUI對象(506-512)是根據(jù)對于自然語言輸入元素502的自然語言輸入來自動構(gòu)造的。在該實例中,用戶已經(jīng)在NL輸入502鍵入“find all emails from Joe sent last week(找出上周由Joe發(fā)送的所有電子郵件)”,且同步引擎使用反映用戶鍵入內(nèi)容的多個GUI對象506-512來更新GUI。同步引擎(結(jié)合語義引擎)將對象的類型(type of object)設(shè)為“email(電子郵件)”。另外,同步引擎建立了兩個條件“from(來自)”被設(shè)為“Joe”,以及“receiveddate(接收日期)”被設(shè)為與正確的日期范圍相等。這樣,同步引擎允許用戶精確地看到NL輸入是如何被處理的,以及應(yīng)用程序是如何解釋輸入的。
圖6-8描繪了一種替換方法,其中僅使用GUI建立用戶的意圖,且同步系統(tǒng)包括對應(yīng)于GUI的NL輸入。圖6中,F(xiàn)ind應(yīng)用程序600包括NL輸入字段602和GUI604。用戶從下拉式列表606中選擇“email(電子郵件)”。在選擇“email”之后,同步引擎自動使用詞“email”更新NL輸入字段602,因為用戶已經(jīng)鍵入“email”來創(chuàng)建相同的意圖?;蛘撸谶x擇“email”之后,用戶可以點擊按鍵612,從而使同步引擎更新NL輸入字段602。一旦用戶作出了選擇,應(yīng)用程序600添加附加的GUI對象610(在此實例中,為下拉式菜單)以供用戶另外選擇。
圖7是圖6的Find應(yīng)用程序添加了第一條件之后的屏幕截圖。應(yīng)用程序700包括NL輸入字段702和GUI704。用戶從對象類型(type of object)下拉式列表706中選擇“email”?;谠撨x擇,GUI704可以顯示一個或多個條件選項,諸如“To(到)”、“from(來自)”“Received Date(接收日期)”等?;蛘撸脩艨梢允褂孟吕讲藛?12來選擇條件選項或其它輸入元素。在此實例中,用戶使用下拉式菜單712選擇“from”,且應(yīng)用程序700自動地或者基于用戶與按鍵714的交互向GUI704添加復(fù)選框708和相關(guān)聯(lián)的文本字段710。用戶在文本字段710中輸入詞“Joe”。從而,同步引擎使用所選擇的GUI對象的NL表示更新NL輸入字段702,得到GUI704的NL解釋為“email from Joe(來自Joe的電子郵件)”。
圖8是圖7的Find應(yīng)用程序添加了日期條件之后的屏幕截圖。應(yīng)用程序800包括NL輸入字段802和GUI804。用戶從對象類型(type of object)下拉式列表806中選擇“email”。基于該選擇,GUI804顯示一個或多個條件選項,諸如“To”、“from”“Received Date”等,或者用戶從下拉式菜單812中選擇條件選項。應(yīng)用程序800或者是自動的,或者基于用戶與按鍵814的交互。應(yīng)用程序向GUI804添加復(fù)選框808和相關(guān)聯(lián)的輸入字段810。在該實例中,用戶使用下拉式菜單812選擇了第二個條件選項,得到日期復(fù)選框816和相關(guān)聯(lián)的數(shù)據(jù)字段818。用戶選擇一個或多個選項,并填寫相關(guān)聯(lián)的字段。在替換實施例中,相關(guān)聯(lián)字段818可以是具有諸如“yesterday(昨天)”、“l(fā)ast week(上周)”、“l(fā)ast month(上個月)”等的各種數(shù)據(jù)選項的下拉式菜單。同步引擎使用GUI804的所選元素806和808的自然語言解釋來更新NL輸入字段802,得到“email from Joe received in the lastweek(上周從Joe接收的電子郵件)”。
重要的是注意,存在使用自然語言表示相同的概念的眾多方式。在任何自然語言輸入中存在固有的二義性,這必須由語義引擎(在此實例中,為同步引擎)用合理的確定性來解決。
圖9是示出通過GUI元素添加了“carbon copy(抄送)”條件之后使用Find應(yīng)用程序900的不同的搜索的屏幕截圖。應(yīng)用程序900包括NL輸入902和GUI904。用戶從GUI對象下拉式列表906中選擇“email”。用戶然后可以使用下拉式菜單916選擇一個或多個條件選項,下拉式菜單916基于上下文提供選擇選項。例如,因為用戶選擇了“email”,因此條件選項包括與電子郵件相關(guān)聯(lián)的應(yīng)用程序元素,諸如“To”、“from”“Received Date”等。用戶選擇選項中的一個或多個(在此實例中,使用下拉式菜單916選擇“from”和“CC(抄送)”),使應(yīng)用程序分別添加所選擇的GUI908和912及其相關(guān)聯(lián)的輸入字段910和914。用戶填寫相關(guān)聯(lián)的字段910和914。同步引擎使用所選GUI元素908和912及其相關(guān)聯(lián)的輸入字段910和914的自然語言解釋來更新NL輸入字段902。在此實例中,應(yīng)用程序900可以例如與執(zhí)行引擎(諸如圖3的執(zhí)行引擎308)交互,執(zhí)行引擎基于用戶的輸入執(zhí)行搜索。執(zhí)行引擎搜索數(shù)據(jù)庫并返回一結(jié)果列表,用于在應(yīng)用程序900的顯示區(qū)域920中顯示。顯示區(qū)域920可以使用一找到的項的列表922來填充。在“找出由Jonas抄送給Tom的所有電子郵件(find all emails from Jonas CC Tom)”的情況下,應(yīng)用程序應(yīng)該顯示Jonas發(fā)送的Tom通過“抄送(cc)”復(fù)制的所有電子郵件。在該實例中,僅存在符合這些標(biāo)準(zhǔn)的三封電子郵件。
盡管上述討論主要集中在獨立類型的應(yīng)用程序,但應(yīng)該理解,可以在更大的應(yīng)用程序中結(jié)合該同步特征。GUI對象與自然語言輸入的同步向用戶提供了對應(yīng)用程序如何解釋自然語言的理解。另外,同步特征用作用于訓(xùn)練用戶關(guān)于應(yīng)用程序內(nèi)的可用選項的裝置。最后,同步用作檢錯特征,以允許用戶糾正查詢中的差錯,這些差錯由應(yīng)用程序?qū)τ脩暨x擇的解釋而變得顯而易見。該即時反饋不僅向用戶更直觀地呈現(xiàn)了應(yīng)用程序,而且通過糾正用戶可能否則沒有意識到的錯誤解釋來允許用戶變得更有效率。
盡管本發(fā)明是相對于特定實施例來描述的,但是本領(lǐng)域的技術(shù)人員應(yīng)該認(rèn)識到,可以在形式和細(xì)節(jié)上進(jìn)行修改而不背離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種用于同步自然語言輸入元素和圖形用戶界面的系統(tǒng),包括同步引擎,適用于監(jiān)視用戶與自然語言輸入元素和圖形用戶界面的交互,并響應(yīng)于所述用戶交互同步所述自然語言輸入元素和所述圖形用戶界面。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括語義引擎,適用于將所述自然語言輸入映射至所述圖形用戶界面,其中,所述同步引擎響應(yīng)于所述自然語言輸入元素中的變化使用所映射的對象更新圖形用戶界面。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括重述引擎,適用于組成表示所述圖形用戶界面的變化對象的自然語言輸入,其中,所述同步引擎響應(yīng)于每一變化,使用所組成的自然語言輸入更新所述自然語言輸入元素。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括執(zhí)行引擎,適用于基于對索書號自然語言輸入元素或?qū)λ鰣D形用戶界面中的所選對象的變化,在數(shù)據(jù)存儲上執(zhí)行操作。
5.如權(quán)利要求4所述的系統(tǒng),其特征在于,所述操作包括查詢,且其中,所述執(zhí)行引擎適用于基于所述用戶交互檢索存儲的數(shù)據(jù),以及根據(jù)檢索到的數(shù)據(jù)在所述系統(tǒng)的顯示區(qū)域中顯示結(jié)果列表。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述同步引擎適用于根據(jù)所述用戶交互,基本上同時地同步所述自然語言輸入元素和所述圖形用戶界面內(nèi)的對應(yīng)對象。
7.一種用于同步自然語言輸入和圖形用戶界面內(nèi)的GUI對象的方法,所述方法包括監(jiān)視輸入元素和所述圖形用戶界面的用戶交互;以及自動同步所述輸入元素和所述圖形用戶界面,使得所述輸入元素的自然語言輸入和所述圖形用戶界面的GUI對象對應(yīng)。
8.如權(quán)利要求7所述的方法,其特征在于,所述GUI對象包括與系統(tǒng)特征相關(guān)聯(lián)的圖形元素。
9.如權(quán)利要求7所述的方法,其特征在于,所述監(jiān)視步驟包括檢測用戶與所述圖形用戶界面或所述輸入元素的交互。
10.如權(quán)利要求9所述的方法,其特征在于,所述同步步驟包括響應(yīng)于檢測到的用戶交互,編程地修改所述圖形用戶界面或所述輸入元素。
11.如權(quán)利要求7所述的方法,其特征在于,如果用戶與所述輸入元素交互,那么所述同步步驟包括將所述輸入元素的自然語言輸入映射至一個或多個GUI對象;以及修改所述圖形用戶界面以包括被映射至所述自然語言輸入的所述一個或多個GUI元素。
12.如權(quán)利要求7所述的方法,其特征在于,如果用戶與所述圖形用戶界面交互,那么所述同步步驟包括向自然語言文本重述所述圖形用戶界面的GUI對象;以及修改所述輸入元素的自然語言輸入以反映重述的自然語言文本。
13.如權(quán)利要求7所述的方法,其特征在于,還包括基于所述自然語言輸入或者所述圖形用戶界面的GUI對象,在數(shù)據(jù)上執(zhí)行操作;以及將一個或多個結(jié)果返回給系統(tǒng)用于向用戶顯示。
14.如權(quán)利要求7所述的方法,其特征在于,所述系統(tǒng)包括用于在計算系統(tǒng)上執(zhí)行的計算機可讀指令。
15.如權(quán)利要求7所述的方法,其特征在于,所述同步步驟包括如果所述自然語言輸入根據(jù)所述用戶交互變化,那么將所述自然語言輸入映射至與系統(tǒng)相關(guān)聯(lián)的GUI對象;以及更改所述圖形用戶界面以包括所映射的GUI對象。
16.如權(quán)利要求7所述的方法,其特征在于,所述同步步驟包括如果所述GUI對象基于所述用戶交互變化,那么組成基于GUI對象的自然語言輸入;以及更改所述自然語言輸入以包括所組成的自然語言輸入。
17.一種用戶界面,包括自然語言輸入元素,適用于接收自然語言輸入;圖形用戶界面,具有適用于對應(yīng)用程序域建模并響應(yīng)用戶交互的一個或多個對象;以及同步引擎,適用于同步所述自然語言輸入元素的自然語言輸入和所述圖形用戶界面的一個或多個對象。
18.如權(quán)利要求17所述的用戶界面,其特征在于,所述同步引擎包括語義引擎,適用于將來自所述自然語言輸入元素的自然語言輸入映射至所述圖形用戶界面的一個或多個對象,其中,所述同步引擎適用于使用一個或多個映射的對象來更新所述圖形用戶界面。
19.如權(quán)利要求17所述的用戶界面,其特征在于,所述同步引擎包括重述引擎,適用于組成表示所述GUI的一個或多個對象的自然語言輸入,其中,所述同步引擎適用于使用所組成的自然語言輸入來更新所述NL輸入。
20.如權(quán)利要求17所述的用戶界面,其特征在于,所述自然語言輸入包含語音輸入。
21.如權(quán)利要求17所述的用戶界面,其特征在于,還包括執(zhí)行引擎,它耦合至所述自然語言輸入元素和所述圖形用戶界面,并適用于響應(yīng)于用戶交互與一個或多個文件交互。
22.如權(quán)利要求17所述的用戶界面,其特征在于,所述同步引擎適用于監(jiān)視所述自然語言輸入元素和所述圖形用戶界面的用戶交互。
全文摘要
一種用于同步自然語言輸入元素和圖形用戶界面的系統(tǒng)含有同步引擎。該同步引擎適用于監(jiān)視用戶與自然語言輸入和圖形用戶界面的交互,并響應(yīng)于用戶交互來同步自然語言輸入元素和圖形用戶界面。
文檔編號G06F3/038GK1790326SQ20051012503
公開日2006年6月21日 申請日期2005年11月15日 優(yōu)先權(quán)日2004年12月14日
發(fā)明者C·C·麥克康奈爾, D·當(dāng)森, J·巴克魯?shù)? S·W·艾科曼, T·M·萊瑞德-麥克康奈爾, W·D·拉姆瑟 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
温宿县| 利辛县| 确山县| 邢台县| 尼木县| 台东县| 淮南市| 象州县| 呼图壁县| 尚义县| 中宁县| 潜山县| 清涧县| 扬中市| 大庆市| 应城市| 谢通门县| 汉源县| 武安市| 庄河市| 綦江县| 开远市| 塘沽区| 吉木乃县| 章丘市| 嘉黎县| 周口市| 南阳市| 东平县| 曲麻莱县| 安塞县| 长宁区| 易门县| 牡丹江市| 康定县| 奉节县| 西平县| 安新县| 南丰县| 江城| 平凉市|