專利名稱:用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集合的自然語言請求的方法、裝置和軟件的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱(publish/subscribe)主題串 的訂閱的集合的自然語言請求的方法、裝置和軟件。
背景技術(shù):
通常使用發(fā)布/訂閱發(fā)消息系統(tǒng)在計算機網(wǎng)絡(luò)間提供數(shù)據(jù)。發(fā)布/訂閱系統(tǒng)能夠 使得訂戶經(jīng)由消息代理器(broker)來訂閱特定題目或主題的信息。給定主題的發(fā)布者向 消息代理器發(fā)布相關(guān)數(shù)據(jù)。然后,消息代理器將數(shù)據(jù)傳播到合適的訂戶。訂戶通過向識別 給定主題的消息代理器發(fā)送訂閱請求而訂閱給定主題。通常,經(jīng)由網(wǎng)頁發(fā)起訂閱命令,在該網(wǎng)頁中,訂戶僅需要選擇網(wǎng)頁所呈現(xiàn)的選項。 換句話說,訂閱選擇是預(yù)定的。提供其他系統(tǒng)以使得輸入指令的語義元素能夠被提取用于 發(fā)布/訂閱系統(tǒng)中。這樣的系統(tǒng)的一個問題是它們需要相當(dāng)多的處理資源。
發(fā)明內(nèi)容
本發(fā)明的一個實施例提供了一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂 閱的集合的自然語言請求的方法,該方法包括步驟a)接收對于修改關(guān)于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的集合的 自然語言請求,所述自然語言請求包括預(yù)定自然語言元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定自然語言元素被 轉(zhuǎn)換為發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)將一個或多個訂閱修改為基于轉(zhuǎn)換后的主題串的一個或多個主題。所述集合可以是空的、或者可以包括一個或多個訂閱。所述對于修改訂閱的集合 的請求可以是訂閱請求。所述對于修改訂閱的集合的請求可以是非訂閱(unsubscribe)請 求。在與給定主題相關(guān)的所述自然語言請求中使用的給定預(yù)定自然語言元素可以被選擇性 地可轉(zhuǎn)換為多個發(fā)布/訂閱符號。預(yù)定集合的自然語言元素的任意一個的出現(xiàn)可以被轉(zhuǎn)換 為相同的發(fā)布/訂閱符號。在與給定主題相關(guān)的所述自然語言請求中使用的不定冠詞可以被轉(zhuǎn)換為代表從 在與給定主題相同的父文件夾中的主題中任意選擇的主題的發(fā)布/訂閱符號。響應(yīng)于識別出在與一個或多個主題相關(guān)的所述自然語言請求中的預(yù)定元素的集 合中的一個,可以使用上下文有關(guān)數(shù)據(jù)來標識用在所述主題串中的給定主題。所述上下文 有關(guān)數(shù)據(jù)可以被用在定冠詞的轉(zhuǎn)換中。所述上下文有關(guān)數(shù)據(jù)可以被用在所有格形容詞的轉(zhuǎn) 換中??梢杂捎脩艉啓n來提供所述上下文有關(guān)數(shù)據(jù)??梢杂砂l(fā)布/訂閱消息代理器來執(zhí)行 該方法。另一個實施例提供了一種用于轉(zhuǎn)換對于發(fā)布/訂閱主題串的訂閱的自然語言請 求的方法,該方法包括步驟
a)接收對于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的自然語言請求,所 述自然語言請求包括預(yù)定元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定元素被轉(zhuǎn)換為發(fā) 布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)訂閱基于轉(zhuǎn)換后的主題串的一個或多個主題。另一個實施例提供了一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集 合的自然語言請求的裝置,該裝置可操作地用于接收對于修改關(guān)于發(fā)布/訂閱主題層次 中的一個或多個主題的訂閱的集合的自然語言請求,所述自然語言請求包括預(yù)定自然語言 元素;將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定自然語言元素被轉(zhuǎn)換 為發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及將一個或多個 訂閱修改為基于轉(zhuǎn)換后的主題串的一個或多個主題。另一個實施例提供了一個或多個程序的組,所述程序被布置為使得一個或多個可 編程設(shè)備的組執(zhí)行一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集合的自然語 言請求的方法,該方法包括步驟a)接收對于修改關(guān)于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的集合的 自然語言請求,所述自然語言請求包括預(yù)定自然語言元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定自然語言元素被 轉(zhuǎn)換為發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)將一個或多個訂閱修改為基于轉(zhuǎn)換后的主題串的一個或多個主題。另一個實施例提供一個或多個程序的組,所述程序被布置為使得一個或多個可編 程設(shè)備的組執(zhí)行一種用于轉(zhuǎn)換對于發(fā)布/訂閱主題串的訂閱的自然語言請求的方法,該方 法包括步驟a)接收對于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的自然語言請求,所 述自然語言請求包括預(yù)定元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定元素被轉(zhuǎn)換為發(fā) 布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)訂閱基于轉(zhuǎn)換后的主題串的一個或多個主題。另一個實施例提供一個或多個程序的組,所述程序被布置為使得一個或多個可編 程設(shè)備的組提供一種用于轉(zhuǎn)換對于發(fā)布/訂閱主題串的訂閱的自然語言請求的裝置,該操 作可操作地用于接收對于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的自然語言請 求,所述自然語言請求包括預(yù)定元素;將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其 中所述預(yù)定元素被轉(zhuǎn)換為發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主 題;以及訂閱基于轉(zhuǎn)換后的主題串的一個或多個主題。
現(xiàn)在將參照附圖僅以示例的方式來描述本發(fā)明的實施例,其中圖1是包括發(fā)布/訂閱發(fā)消息系統(tǒng)的計算機系統(tǒng)的示意圖;圖2是在圖1的發(fā)消息系統(tǒng)中的消息代理器的示意圖;圖3是示出由圖2中的消息代理器使用的轉(zhuǎn)換的表格;。
圖4示出由圖2的消息代理器轉(zhuǎn)換為對于發(fā)布/訂閱主題串的一個或多個請求的 自然語言請求的例子;以及圖5是示出當(dāng)執(zhí)行圖3的轉(zhuǎn)換時由消息代理器執(zhí)行的處理的流程圖。
具體實施例方式參照圖1,計算機系統(tǒng)101提供發(fā)布/訂閱發(fā)消息系統(tǒng),并且包括與計算機102、 104,105的集合交互的網(wǎng)絡(luò)102。第一計算機103被布置為運行消息發(fā)布器應(yīng)用程序106, 第二計算機104的每個被布置為運行消息訂閱器應(yīng)用程序107,且第三計算機105被布置為 運行消息代理器應(yīng)用程序108。消息發(fā)布器106使得用戶能夠發(fā)布關(guān)于消息主題的預(yù)定集 合的消息。消息訂閱器108使得用戶能夠通過向消息代理器107發(fā)送合適的訂閱請求以便 接收關(guān)于給定主題的已發(fā)布消息而訂閱特定的消息主題。消息代理器107被布置為管理對 于消息訂閱器108的訂閱的集合并管理從消息發(fā)布器106到每個合適的消息訂閱器108的 已發(fā)布消息的分發(fā)。參照圖2,消息代理器107還包括用于解析來自消息訂閱器108的輸入訂閱請求 的解析器201。解析器201使用轉(zhuǎn)換規(guī)則202的集合來轉(zhuǎn)換輸入訂閱請求的元素。轉(zhuǎn)換后 的訂閱請求被傳送到訂閱管理器203,該訂閱管理器203管理對于每個消息訂閱器108的 訂閱并產(chǎn)生對于所訂閱的消息主題的分發(fā)列表。消息代理器107還包括消息管理器204, 其被布置為從消息發(fā)布器106接收已發(fā)布消息并依據(jù)由訂閱管理器203編譯的分發(fā)列表而 向合適的消息訂閱器108分發(fā)消息。在本實施例中,消息代理器107被布置為處理包括自 然語言的元素的訂閱請求并轉(zhuǎn)換這樣的請求,以使得它們適合于標準訂閱管理器203。換 句話說,消息代理器107被布置為將可能形成部分訂閱請求的自然語言元素的預(yù)定集合的 每一個轉(zhuǎn)換為適當(dāng)?shù)陌l(fā)布/訂閱系統(tǒng)符號。在本實施例中,轉(zhuǎn)換規(guī)則202定義可以被轉(zhuǎn)換 為相應(yīng)發(fā)布/訂閱符號的自然語言元素的預(yù)定集合。此外,解析器201被布置為識別給定 訂閱請求之中的自然語言元素的預(yù)定集合中的任何一個,并依據(jù)轉(zhuǎn)換規(guī)則202轉(zhuǎn)換任何這 樣識別的元素。因而,解析器201的輸出是正式定義給定主題串并能夠被標準訂閱管理器 203成功處理以執(zhí)行所請求的訂閱的訂閱請求。圖3進一步詳細地示出本實施例的轉(zhuǎn)換規(guī)則202。轉(zhuǎn)換規(guī)則202包括應(yīng)用于3個 自然語言元素的規(guī)則。第一轉(zhuǎn)換規(guī)則將不定冠詞“一 / 一個(a/an)”形式的自然語言元素 轉(zhuǎn)換為符號“@”。符號是被布置為從與特定主題相同的父文件夾中的主題來任意匹配 主題的任選通配符。第二轉(zhuǎn)換規(guī)則將自然語言元素“所有……的一切(everything about all) ”轉(zhuǎn)換為符號“#”。符號“#”是被布置為在主題層次中、在除給定主題之外匹配所有級 別的多級通配符。換句話說,這將導(dǎo)致訂閱具有與給定主題匹配的根父級(root parent) 的所有主題。第三轉(zhuǎn)換規(guī)則將自然語言元素“所有”轉(zhuǎn)換為符號“ !”。符號“ !”是被配置 為在主題層次中匹配單個級別的單級通配符。換句話說,這將導(dǎo)致訂閱具有與給定主題匹 配的直接父級(direct parent)的所有主題。圖4示出本實施例的每個轉(zhuǎn)換規(guī)則的操作的 例子以例示訂閱請求401、402、403。在每個例示訂閱請求中,元素被識別并轉(zhuǎn)換為輸出主題 串中的相應(yīng)符號?,F(xiàn)在將參照圖5的流程圖進一步詳細描述當(dāng)處理輸入訂閱請求時由解析器201執(zhí) 行的處理。在步驟501,解析器201被初始化并等待接收訂閱請求。一旦接收到請求,則處理移動到步驟502。在步驟502,解析請求以便識別任何自然語言元素,并且處理移動到步 驟503。在步驟503,選擇對于每個所識別的元素的合適的轉(zhuǎn)換規(guī)則202,并且處理移動到步 驟504。在步驟504,自然語言請求被轉(zhuǎn)換為取代所接收的元素而包括合適的符號的發(fā)布/ 訂閱主題串。然后,處理移動到步驟505,在步驟505中,轉(zhuǎn)換后的訂閱請求被傳送給訂閱管 理器203。然后,處理移動到步驟501以等待接收進一步的訂閱請求,然后如上所述進行。在另一個實施例中,解析器被布置為以同等方式轉(zhuǎn)換非訂閱請求。在另一個實施 例中,多個自然語言元素被轉(zhuǎn)換為一個給定符號。換句話說,在多個元素和給定符號之間存 在多對一映射。例如,諸如“一 / 一個”、“任一個(any)”或“一些(some) ”的一組非特定形 容詞或代詞可以被轉(zhuǎn)換為諸如導(dǎo)致訂閱一個或多個任意主題的的單個符號。在另一個實施例中,給定元素可以被選擇性地轉(zhuǎn)換為多個符號。在這樣的一對多 轉(zhuǎn)換布置中,可以經(jīng)由用戶或系統(tǒng)偏好來確定多個符號的特定一個的選擇。例如,元素“所 有”可以被轉(zhuǎn)換為符號“#,,或符號“ ! ”,其中符號“#,,被布置為在主題層次中、在除給定主 題之外匹配所有級別的多級通配符,而符號“ ! ”是被配置為在主題層次中匹配單個級別的 單級通配符??梢杂捎脩魜磉x擇在給定布置中使用哪一個轉(zhuǎn)換。在另一個實施例中,在元素的解疑(disambiguation)中使用上下文有關(guān)數(shù)據(jù)。例 如,當(dāng)在給定訂閱請求中使用定冠詞元素“所述/該(the) ”時,可以使用上下文有關(guān)數(shù)據(jù)來 確定所指代的對象。例如,聲明“該汽車”是含糊的,因為其可能指代多個汽車。然而,由上 下文有關(guān)數(shù)據(jù)表示的當(dāng)前上下文的檢查可以使得指代特定汽車的身份。可以使用上下文有 關(guān)數(shù)據(jù)的其他例子是當(dāng)元素是諸如“我的”、“她的”或“我們的”的物主冠詞時。在另一個 實施例中,解析器和轉(zhuǎn)換規(guī)則位于客戶端側(cè),也就是說,與訂閱器應(yīng)用程序相關(guān)聯(lián)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)明白,可以在發(fā)布/訂閱系統(tǒng)的任何適當(dāng)位置提供本系統(tǒng)。 本領(lǐng)域技術(shù)人員應(yīng)當(dāng)明白,可以提供對于其他元素和符號的轉(zhuǎn)換。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)明白,術(shù)語自然語言用于指代包括自然語言元素的一個或多 個元素的輸入聲明。換句話說,這樣的輸入聲明可以包括自然語言元素以及一個或多個其 他元素,或者它們可以僅包含自然語言元素。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)明白,具體化本發(fā)明的部分或全部的裝置可以是其軟件被布 置為提供本發(fā)明的部分或全部實施例的專用設(shè)備。該設(shè)備可以是單個設(shè)備或一組設(shè)備,并 且所述軟件可以是單個程序或程序集合。此外,可以經(jīng)由任何合適的傳輸或存儲手段來傳 達用于實現(xiàn)本發(fā)明的任何一個或所有軟件,以使得所述軟件可以被加載到一個或多個設(shè)備 上。雖然已經(jīng)通過對其實施例的描述而示出了本發(fā)明,并且雖然以相當(dāng)多的細節(jié)來描 述了實施例,但是申請人的意圖并非是約束或以任何方式來將所附權(quán)利要求的范圍限制于 這樣的細節(jié)。額外的優(yōu)點和修改對于本領(lǐng)域技術(shù)人員來說顯然是明顯的。因此,從廣義上 講本發(fā)明不限于所示出和描述的特定細節(jié)表示的裝置及方法和所示出的例子。因此,可以 根據(jù)這樣的細節(jié)做出改變,而不會脫離申請人的一般發(fā)明概念的精神或范圍。
權(quán)利要求
1.一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集合的自然語言請求的方 法,該方法包括步驟a)接收對于修改關(guān)于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的集合的自然 語言請求,所述自然語言請求包括預(yù)定自然語言元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定自然語言元素被轉(zhuǎn)換 為發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)將一個或多個訂閱修改為基于轉(zhuǎn)換后的主題串的一個或多個主題。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述對于修改訂閱的集合的請求是訂閱請求。
3.根據(jù)權(quán)利要求1所述的方法,其中,所述對于修改訂閱的集合的請求是非訂閱請求。
4.根據(jù)任一個前述權(quán)利要求所述的方法,其中,在與給定主題相關(guān)的所述自然語言請 求中使用的給定預(yù)定自然語言元素被選擇性地可轉(zhuǎn)換為多個發(fā)布/訂閱符號。
5.根據(jù)任一個前述權(quán)利要求所述的方法,其中,自然語言元素的任意一個預(yù)定集合的 出現(xiàn)被轉(zhuǎn)換為相同的發(fā)布/訂閱符號。
6.根據(jù)任一個前述權(quán)利要求所述的方法,其中,在與給定主題相關(guān)的所述自然語言請 求中使用的不定冠詞被轉(zhuǎn)換為代表從在與所述給定主題相同的父文件夾中的主題中任意 選擇的主題的發(fā)布/訂閱符號。
7.根據(jù)任一個前述權(quán)利要求所述的方法,其中,響應(yīng)于識別出在與一個或多個主題相 關(guān)的所述自然語言請求中的預(yù)定元素的集合中的一個,使用上下文有關(guān)數(shù)據(jù)來標識用在所 述主題串中的給定主題。
8.根據(jù)權(quán)利要求7所述的方法,其中,所述上下文有關(guān)數(shù)據(jù)被用在定冠詞的轉(zhuǎn)換中。
9.根據(jù)權(quán)利要求7所述的方法,其中,所述上下文有關(guān)數(shù)據(jù)被用在所有格形容詞的轉(zhuǎn) 換中。
10.根據(jù)權(quán)利要求7至9中的任一個所述的方法,其中,由用戶簡檔來提供所述上下文 有關(guān)數(shù)據(jù)。
11.根據(jù)任一個前述權(quán)利要求所述的方法,其中,由發(fā)布/訂閱消息代理器來執(zhí)行所述方法。
12.一種用于轉(zhuǎn)換對于發(fā)布/訂閱主題串的訂閱的自然語言請求的方法,該方法包括 步驟a)接收對于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的自然語言請求,所述自 然語言請求包括預(yù)定元素;b)將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定元素被轉(zhuǎn)換為發(fā)布/ 訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及c)訂閱基于轉(zhuǎn)換后的主題串的一個或多個主題。
13.一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集合的自然語言請求的裝 置,該裝置可操作地用于接收對于修改關(guān)于發(fā)布/訂閱主題層次中的一個或多個主題的訂閱的集合的自然語 言請求,所述自然語言請求包括預(yù)定自然語言元素;將所述自然語言請求轉(zhuǎn)換為發(fā)布/訂閱主題串,其中所述預(yù)定自然語言元素被轉(zhuǎn)換為 發(fā)布/訂閱符號,所述符號代表所述主題層次中的一個或多個主題;以及將一個或多個訂閱修改為基于轉(zhuǎn)換后的主題串的一個或多個主題。
14.根據(jù)權(quán)利要求13所述的裝置,其中,所述對于修改訂閱的集合的請求是訂閱請求。
15.根據(jù)權(quán)利要求13所述的裝置,其中,所述對于修改訂閱的集合的請求是非訂閱請求。
16.根據(jù)權(quán)利要求13至15中的任一個所述的裝置,其中,在與給定主題相關(guān)的所述自 然語言請求中使用的給定預(yù)定自然語言元素被選擇性地可轉(zhuǎn)換為多個發(fā)布/訂閱符號。
17.根據(jù)權(quán)利要求13至16中的任一個所述的裝置,其中,預(yù)定集合的自然語言元素的 任意一個的出現(xiàn)被轉(zhuǎn)換為相同的發(fā)布/訂閱符號。
18.根據(jù)權(quán)利要求13至17中的任一個所述的裝置,其中,在與給定主題相關(guān)的所述自 然語言請求中使用的不定冠詞被轉(zhuǎn)換為代表從在與所述給定主題相同的父文件夾中的主 題中任意選擇的主題的發(fā)布/訂閱符號。
19.根據(jù)權(quán)利要求13至18中的任一個所述的裝置,其中,響應(yīng)于識別出在與一個或多 個主題相關(guān)的所述自然語言請求中的預(yù)定元素的集合中的一個,使用上下文有關(guān)數(shù)據(jù)來標 識用在所述主題串中的給定主題。
20.根據(jù)權(quán)利要求19所述的裝置,其中,所述上下文有關(guān)數(shù)據(jù)被用在定冠詞的轉(zhuǎn)換中。
21.根據(jù)權(quán)利要求19所述的裝置,其中,所述上下文有關(guān)數(shù)據(jù)被用在所有格形容詞的 轉(zhuǎn)換中。
22.根據(jù)權(quán)利要求19至21中的任一個所述的方法,其中,由用戶簡檔來提供所述上下 文有關(guān)數(shù)據(jù)。
23.根據(jù)權(quán)利要求13至22中的任一個所述的方法,其中,由發(fā)布/訂閱消息代理器來 執(zhí)行所述方法。
24.一組一個或多個程序,所述程序被布置為使得一組一個或多個可編程設(shè)備執(zhí)行權(quán) 利要求1至12中的任一個所述的方法或提供權(quán)利要求13至23中的任一個所述的裝置。
全文摘要
公開了一種用于轉(zhuǎn)換對于修改關(guān)于發(fā)布/訂閱主題串的訂閱的集合的自然語言請求的方法、裝置和軟件,其中,所述請求中的預(yù)定元素被轉(zhuǎn)換為所述主題串中的發(fā)布/訂閱符號。
文檔編號G06F17/30GK102007495SQ200980113638
公開日2011年4月6日 申請日期2009年3月12日 優(yōu)先權(quán)日2008年4月16日
發(fā)明者加雷思·E·瓊斯, 本杰明·J·弗萊徹 申請人:國際商業(yè)機器公司