專利名稱:自動(dòng)創(chuàng)建上下文信息提供配置的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及上下文認(rèn)識(shí)系統(tǒng),具體地說,涉及采用具有不同可用性的傳感器的上下文認(rèn)識(shí)系統(tǒng)。
在此說明書中使用的“上下文”由Anind Dey在“理解與使用上下文”(Personal and Ubiquitous computing,“Situated Interaction andUbiquitous Computing”的特殊期刊2001年第5(1)卷第4-7頁)中定義為可用于表征實(shí)體情況的任何信息。實(shí)體是被認(rèn)為與用戶和應(yīng)用之間的交互相關(guān)的人、位置或?qū)ο?,包括用戶和?yīng)用本身。此外,為之收集上下文信息的實(shí)體也稱為焦點(diǎn)實(shí)體。
通過自動(dòng)結(jié)合這種上下文信息,有關(guān)上下文的知識(shí)可以多種方式用于使應(yīng)用和裝置更智能化。遺憾的是,上下文相當(dāng)復(fù)雜,因而難以處理。復(fù)雜性是由可能從許多不同傳感器得來的不同類型上下文的多樣性而導(dǎo)致的。例如,在國(guó)外城市活動(dòng)的旅游者由其上下文認(rèn)識(shí)裝置提供一張現(xiàn)行地圖,并帶有關(guān)于他或她當(dāng)前看到的景物的信息。這種情況下,除其它信息外,上下文認(rèn)識(shí)裝置需要關(guān)于旅游者當(dāng)前位置的信息。對(duì)于室外的旅游者,可利用全球定位系統(tǒng)(GPS)來獲取這種信息,但在室內(nèi)時(shí),由于從建筑內(nèi)不能接入GPS衛(wèi)星,此方法不再適用。因此,要使用特殊的室內(nèi)定位系統(tǒng)來檢索室內(nèi)位置信息。無論何時(shí)用戶進(jìn)入或離開建筑,他或她的上下文認(rèn)識(shí)裝置必須切換到另一位置確定系統(tǒng)。當(dāng)前,處理這種從室外到室內(nèi)、或從室內(nèi)到室外位置定義系統(tǒng)的接替在應(yīng)用端執(zhí)行,在只有少量可能的可用信息源時(shí),應(yīng)用端工作得相當(dāng)好。
一旦必須考慮大量不同的源,這種方法就變得不實(shí)際。例如,上述實(shí)例的旅游者可能不僅想知道其自身位置,而且想知道某些人是否進(jìn)入或離開某個(gè)區(qū)域,例如他的小孩是否走得太遠(yuǎn)。為此,系統(tǒng)必須利用大量不同類型、室內(nèi)和室外的位置傳感器,而室內(nèi)位置類型也可能隨建筑物的不同而不同,并且因人而異。上下文認(rèn)識(shí)裝置必須處理這些問題,并且可能必須實(shí)現(xiàn)對(duì)不同類型的位置傳感器的同時(shí)訪問。如果不僅使用位置信息,而且使用象有關(guān)溫度、氣壓之類的大量不同信息源來創(chuàng)建更復(fù)雜的上下文結(jié)構(gòu),則上下文認(rèn)識(shí)裝置的配置會(huì)變得更加復(fù)雜。
Anind Dey在其博士論文“為建筑物上下文認(rèn)識(shí)應(yīng)用提供體系結(jié)構(gòu)支持”(“Providing Architectural Support for Building Context-AwareApplications”,College of Computing,Georgia Institute of Technology,2000年12月)中,公開了在喬治亞技術(shù)學(xué)院開發(fā)的上下文工具箱。該上下文工具箱的目的是隱藏收集上下文信息的進(jìn)程,與X-window專用接口工具集向應(yīng)用開發(fā)人員隱藏X-windows系統(tǒng)的復(fù)雜性的方式相同。專用接口工具集表示某一類信息,如基于傳感器所提供的數(shù)據(jù)的位置或活動(dòng)。X-window專用接口工具集將復(fù)雜的圖形用戶界面處理功能聚集成一個(gè)組件,并通過統(tǒng)一的接口訪問,從而隱藏了基礎(chǔ)傳感器配置的詳細(xì)信息。上下文聚集器將多個(gè)專用接口工具集匯總為更復(fù)雜的“元專用接口工具集”,提供到更復(fù)雜上下文信息的訪問。解釋器將如位置或活動(dòng)等低層上下文信息轉(zhuǎn)換成更抽象的較高層信息,例如從某人躺在床上且脈搏有規(guī)律地慢慢跳動(dòng)的信息中,推斷出該人正在睡覺。
上下文工具箱是當(dāng)前最流行的上下文處理系統(tǒng)。它使用極為方便,并通過為經(jīng)常使用的上下文類型提供專用接口工具集和解釋器,簡(jiǎn)化了上下文認(rèn)識(shí)應(yīng)用的實(shí)現(xiàn)。上下文工具箱假定傳感器配置是靜態(tài)的,即應(yīng)用開發(fā)人員在設(shè)計(jì)時(shí)確定要使用哪些專用接口工具集、解釋器和聚集器。因?yàn)椴恢С窒到y(tǒng)重新配置,不靈活的結(jié)構(gòu)引發(fā)了問題,即如果某個(gè)傳感器出現(xiàn)故障,錯(cuò)誤會(huì)向上傳播到應(yīng)用層。
歐洲資助的青年項(xiàng)目(Youngster project)(IST-2000-25034)開發(fā)技術(shù)以創(chuàng)建新的開放式活動(dòng)移動(dòng)多媒體環(huán)境,各種裝置和網(wǎng)絡(luò)可從任何位置訪問該環(huán)境,且該環(huán)境支持上下文認(rèn)識(shí)特征,包括位置認(rèn)識(shí)。
在該項(xiàng)目中,評(píng)估了用于移動(dòng)平臺(tái)的上下文系統(tǒng),原則上建議上下文客戶機(jī)、即上下文認(rèn)識(shí)裝置的所有請(qǐng)求傳遞到本地上下文業(yè)務(wù)。通過提供到本地上下文源的捷徑或再用到上下文服務(wù)器的現(xiàn)有連接,此業(yè)務(wù)嘗試在本地解決該請(qǐng)求。如果無法在本地解決該請(qǐng)求,則請(qǐng)求會(huì)被傳遞到遠(yuǎn)程上下文服務(wù)器作進(jìn)一步處理。上下文業(yè)務(wù)和上下文服務(wù)器可駐留在同一主機(jī)上。上下文源可直接訪問傳感器,并將傳感器數(shù)據(jù)轉(zhuǎn)換成上下文服務(wù)器可以理解的格式。上下文源也可以位于僅從遠(yuǎn)程訪問傳感器的服務(wù)器內(nèi)。
術(shù)語上下文客戶機(jī)指的是請(qǐng)求上下文信息的實(shí)體,而術(shù)語上下文服務(wù)器指的是提供上下文信息的實(shí)體。通過指定如位置之類的所需信息,上下文客戶機(jī)從上下文服務(wù)器中請(qǐng)求上下文信息。所需信息類型到可用傳感器的映射通過上下文服務(wù)器完成。
上下文服務(wù)器創(chuàng)建從請(qǐng)求的數(shù)據(jù)類型到可用傳感器的路徑。如果請(qǐng)求無法直接映射到各個(gè)傳感器,則執(zhí)行通過所謂的上下文解釋器的數(shù)據(jù)轉(zhuǎn)換。
在路徑創(chuàng)建后,上下文信息從傳感器產(chǎn)生,之后上下文源將其從專有格式轉(zhuǎn)化成適當(dāng)?shù)纳舷挛慕忉屍魉斫獾腨oungster內(nèi)部格式。上下文解釋器本身處理數(shù)據(jù)并且被組成鏈。在鏈的末端,原始請(qǐng)求格式的數(shù)據(jù)被存儲(chǔ)在上下文屬性中,而屬性本身是聚集器這個(gè)更大數(shù)據(jù)結(jié)構(gòu)的一部分。上下文屬性指定格式和類型,并且通過父上下文聚集器,也指定存儲(chǔ)數(shù)據(jù)的焦點(diǎn)實(shí)體。
在如Youngster項(xiàng)目建議的移動(dòng)業(yè)務(wù)平臺(tái)所用的上下文系統(tǒng)中,客戶機(jī)不需要知道可用的傳感器或如何使用它們,而可將此任務(wù)完全交給上下文系統(tǒng)。通過自動(dòng)創(chuàng)建所謂的上下文路徑,由服務(wù)器完成從請(qǐng)求的上下文信息的所需類型和格式到可用傳感器的映射。路徑可以線性路徑的形式實(shí)現(xiàn),或者通過利用基礎(chǔ)和抽象傳感器的傳感器分層結(jié)構(gòu)以更復(fù)雜結(jié)構(gòu)的形式實(shí)現(xiàn)。抽象傳感器從不同的基礎(chǔ)傳感器收集數(shù)據(jù),并且在一定程度上轉(zhuǎn)換數(shù)據(jù)。上下文路徑的配置表示成帶有根節(jié)點(diǎn)的樹結(jié)構(gòu),根節(jié)點(diǎn)是可從上下文客戶機(jī)訪問的上下文屬性。
從請(qǐng)求的數(shù)據(jù)類型到可用傳感器的路徑必須手動(dòng)設(shè)置,這意味著例如對(duì)于上下文屬性的所有所需類型和格式,必須手動(dòng)創(chuàng)建和連接上下文解釋器鏈和源。另一種可能性是使上下文客戶機(jī)指定要使用的上下文解釋器和上下文屬性,以及如何根據(jù)客戶機(jī)定義的規(guī)則連接它們。雖然上下文路徑的自動(dòng)和按需創(chuàng)建具有許多明顯優(yōu)點(diǎn),比如保持上下文客戶機(jī)的結(jié)構(gòu)簡(jiǎn)單、在客戶機(jī)和服務(wù)器端均提供靈活性以及維護(hù)簡(jiǎn)便,但是目前沒有自動(dòng)創(chuàng)建上下文路徑的機(jī)制。
具體地說,上述目的通過如下系統(tǒng)來實(shí)現(xiàn),該系統(tǒng)通過如下幾部分來應(yīng)請(qǐng)求提供上下文信息上下文屬性,為表示對(duì)上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄指定類型、格式和焦點(diǎn)實(shí)體;至少一個(gè)上下文源,為上下文信息的請(qǐng)求提供相關(guān)的上下文數(shù)據(jù);至少一個(gè)上下文解釋器,用于建立上下文屬性與上下文源之間的互連;以及配置裝置,用于設(shè)置動(dòng)態(tài)上下文圖形配置,以便根據(jù)實(shí)際可用性和適用性組合上下文源和上下文解釋器,從而提供數(shù)據(jù)記錄。
此外,上述目的由軟件產(chǎn)品實(shí)現(xiàn),該產(chǎn)品在由數(shù)據(jù)處理設(shè)備的處理裝置執(zhí)行時(shí),用于在該數(shù)據(jù)處理設(shè)備上實(shí)現(xiàn)本發(fā)明的應(yīng)請(qǐng)求提供上下文信息的系統(tǒng)。
上述目的還通過一種方法實(shí)現(xiàn),該方法通過如下步驟來應(yīng)請(qǐng)求提供上下文信息為表示對(duì)上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄指定類型、格式和焦點(diǎn)實(shí)體;定位為上下文信息的請(qǐng)求提供相關(guān)的上下文數(shù)據(jù)的一個(gè)或多個(gè)上下文源;定位一個(gè)或多個(gè)上下文解釋器,用于將提供的與焦點(diǎn)實(shí)體相關(guān)的上下文數(shù)據(jù)處理成為數(shù)據(jù)記錄指定的類型和格式;以及設(shè)定動(dòng)態(tài)上下文圖形配置,以便根據(jù)上下文源和上下文解釋器的實(shí)際可用性和適用性將其組合,從而提供數(shù)據(jù)記錄。
用于應(yīng)請(qǐng)求提供上下文信息的所建議系統(tǒng)允許按需創(chuàng)建上下文路徑,以便分別為上下文客戶機(jī)或上下文認(rèn)識(shí)裝置可靠地提供所請(qǐng)求的信息。本發(fā)明還允許使上下文認(rèn)識(shí)裝置或上下文客戶機(jī)的結(jié)構(gòu)保持很簡(jiǎn)單,特別是與其中客戶機(jī)必須自己注意傳感器配置的系統(tǒng)相比時(shí)。由于上下文路徑的設(shè)置不需要預(yù)定義部分,所以在客戶機(jī)和服務(wù)器端均實(shí)現(xiàn)高的靈活性。按照需要?jiǎng)?chuàng)建所需的功能性。通過使上下文路徑動(dòng)態(tài)地適應(yīng)該路徑中使用的要素的可用性和適用性的變化,顯著減少了系統(tǒng)的維護(hù)工作。
有利的是,配置裝置通過如下步驟生成上下文圖形配置將具有與上下文屬性的輸入連接器相匹配的輸出連接器的第一上下文解釋器連接到上下文屬性,或者將具有與上下文屬性的輸入連接器相匹配的輸出連接器的上下文源連接到上下文屬性;在使用第一上下文解釋器時(shí),將第一上下文解釋器的每個(gè)輸入連接器連接到與各個(gè)輸入連接器相匹配的上下文解釋器的輸出,或者連接到具有與各個(gè)輸入連接器相匹配的輸出連接器的上下文源;以及把尚未連接到上下文源的輸出連接器或上下文解釋器的輸出連接器的、上下文源的每個(gè)輸入連接器連接到與各個(gè)輸入連接器相匹配的上下文解釋器的輸出,或者連接到具有與各個(gè)輸入連接器相匹配的輸出連接器的上下文源。這意味著,上下文路徑的構(gòu)建是從上下文屬性的輸入連接器開始,通過上下文解釋器到一個(gè)或多個(gè)上下文源,因而,設(shè)置在上下文屬性與上下文源之間的每個(gè)上下文解釋器將構(gòu)成上下文信息的數(shù)據(jù)的至少一部分轉(zhuǎn)換成離上下文屬性最近的上下文解釋器所理解的、并且最終上下文屬性自身也理解的類型和格式。
在此要說明的是,如果上下文源的輸出連接器與上下文屬性的輸入連接器匹配,則該上下文源可直接連接到該上下文屬性。但是通常,需要許多接觸源來提供請(qǐng)求的信息,使得從多個(gè)接觸源提供的數(shù)據(jù)必須由多個(gè)上下文解釋器來處理,以便轉(zhuǎn)換成上下文屬性所指定的相應(yīng)類型和格式。
更有利的是,通過將上下文解釋器的輸入連接器連接到不同上下文解釋器的輸出連接器,而該輸出連接器又已經(jīng)連接到上下文圖形配置中存在的另一上下文解釋器的輸入連接器或上下文屬性的輸入,建立反饋功能。對(duì)于采用不同處理階段的中間結(jié)果的數(shù)據(jù)處理要求,反饋功能特別有用。
創(chuàng)建反饋功能的條件最好由為上下文解釋器定義的約束指定,并且反饋功能的實(shí)現(xiàn)由為上下文解釋器定義的相應(yīng)的約束事件指定,從而使反饋功能在上下文圖形配置中易于處理和實(shí)現(xiàn)。
包含多個(gè)可用上下文解釋器和上下文源的儲(chǔ)存庫有利地向配置裝置提供上下文解釋器和上下文源,以便輕松獲得與上下文圖形創(chuàng)建一起使用的要素。
有利的是,上下文源訪問提供物理數(shù)據(jù)和/或信息數(shù)據(jù)的傳感器,并且更有利的是,上下文圖形配置被有利地遵照預(yù)定義的優(yōu)化規(guī)則建立。在本發(fā)明的優(yōu)選實(shí)施例中,圖形高速緩存提供預(yù)配置的上下文圖形配置以供配置裝置使用,因此可在短時(shí)間內(nèi)建立上下文圖形。
要在上下文圖形創(chuàng)建中獲得高度靈活性,則為提供的用于上下文圖形內(nèi)的上下文解釋器或上下文源的輸入連接器和/或輸出連接器而定義的焦點(diǎn)身份最好以變量來實(shí)現(xiàn),該變量在上下文圖形初始化后被約束到一個(gè)實(shí)值。要在上下文圖形適應(yīng)其環(huán)境變化方面提供更大的靈活性,上下文解釋器根據(jù)請(qǐng)求和/或接收的數(shù)據(jù)的可用性或特性的變化,有利地修改其輸入連接器的類型和/或其輸出連接器的類型。
在本發(fā)明的另一優(yōu)選實(shí)施例中,配置裝置包括上下文圖形創(chuàng)建裝置和/或更改管理裝置,上下文圖形創(chuàng)建裝置自動(dòng)為給定的上下文屬性組合上下文圖形,而更改管理裝置隨上下文圖形內(nèi)要素的可用性和/或適用性的變化而控制上下文圖形的重新配置。
此外,配置裝置有利地包括上下文圖形優(yōu)化裝置,用于根據(jù)規(guī)則體系控制上下文圖形的建立。這可以影響獲得和處理用于所需信息的數(shù)據(jù)的方式。為確保創(chuàng)建的上下文圖形的可操作性,配置裝置可有利地包括上下文圖形確認(rèn)裝置,用于驗(yàn)證上下文圖形的一致性和上下文圖形內(nèi)所用組件的可用性。配置裝置最好還包括上下文圖形建立裝置,用于例示上下文圖形中的上下文解釋器和上下文源,從而從上下文圖形類中構(gòu)建完全實(shí)用的上下文圖形。
有利的是,配置裝置包括預(yù)選擇裝置和/或傳感器預(yù)選擇裝置,預(yù)選擇裝置用于選擇適合為給定的上下文屬性創(chuàng)建上下文圖形的上下文源和上下文解釋器,而傳感器預(yù)選擇裝置用于選擇與適合為給定上下文屬性創(chuàng)建上下文圖形的上下文源一起使用的傳感器,從而進(jìn)一步加快上下文圖形的創(chuàng)建。
每個(gè)上下文源和/或每個(gè)上下文解釋器的可用性和適用性有利地被不斷監(jiān)視。
此外,配置裝置最好包括傳感器管理裝置,用以監(jiān)控用于上下文圖形的每個(gè)傳感器的可用性狀態(tài),并將結(jié)果轉(zhuǎn)發(fā)到更改管理裝置,從而使上下文圖形可在線適應(yīng)改變的條件。
根據(jù)有利的進(jìn)展,如果檢測(cè)到某個(gè)上下文源和/或上下文解釋器故障,不再可用和/或不適用于提供或處理上下文數(shù)據(jù),則由出故障的上下文源或上下文解釋器及連接到其輸入連接器的上下文源和/或上下文解釋器構(gòu)成的上下文圖形配置的部分會(huì)失效并被重建。
為避免信息數(shù)據(jù)的誤用并加強(qiáng)數(shù)據(jù)的保密性,配置裝置最好包括訪問控制裝置,用以加強(qiáng)在上下文圖形中組件的使用上施加的訪問限制。
為了計(jì)費(fèi),配置裝置還可與核算裝置一起實(shí)現(xiàn),用于就上下文圖形所用的傳感器和要素的使用向焦點(diǎn)實(shí)體收費(fèi)。根據(jù)有利的進(jìn)展,至少一個(gè)預(yù)定義的上下文圖形鏈接到正建立的上下文圖形,從而允許更多的動(dòng)態(tài)傳感器配置。
例如,建議的系統(tǒng)和軟件可以在上下文服務(wù)器中實(shí)現(xiàn),以便為上下文信息請(qǐng)求創(chuàng)建靈活和動(dòng)態(tài)的上下文圖形。根據(jù)本發(fā)明,圖形創(chuàng)建機(jī)制還可直接適用于業(yè)務(wù)聚集領(lǐng)域,將相對(duì)簡(jiǎn)單的原子業(yè)務(wù)組合成更復(fù)雜的聚集業(yè)務(wù)。
此外,網(wǎng)絡(luò)監(jiān)控利用有關(guān)網(wǎng)絡(luò)的特殊上下文信息;因此,根據(jù)本發(fā)明的上下文信息提供系統(tǒng)也可用于進(jìn)一步使該領(lǐng)域中收集信息和評(píng)估的過程自動(dòng)化。例如,根據(jù)基本網(wǎng)絡(luò)狀態(tài)信息的多個(gè)給定的算子,可以得到更完整描述網(wǎng)絡(luò)狀態(tài)的復(fù)雜信息。另一個(gè)應(yīng)用領(lǐng)域是格式自適應(yīng)領(lǐng)域。已經(jīng)有一些系統(tǒng)允許文檔從一種格式即時(shí)變換到另一種格式。通常,動(dòng)態(tài)創(chuàng)建的路徑用于將源格式轉(zhuǎn)變成所需的目標(biāo)格式。通過實(shí)現(xiàn)轉(zhuǎn)換步驟,其中同時(shí)創(chuàng)建并在以后合并多個(gè)文件,根據(jù)本發(fā)明的圖形創(chuàng)建技術(shù)因而可用于進(jìn)一步增強(qiáng)那些系統(tǒng)。這可以實(shí)現(xiàn)比現(xiàn)存那些機(jī)制功能更強(qiáng)大的格式轉(zhuǎn)換機(jī)制。
因?yàn)楦鶕?jù)本發(fā)明的上下文信息提供系統(tǒng)一般專長(zhǎng)于信息處理,所以無論何時(shí)必須自動(dòng)建立信息評(píng)估邏輯,就可容易地使用本發(fā)明。
圖1示意地表示提供上下文信息的先有技術(shù)系統(tǒng);圖2a表示線性上下文路徑的示例;圖2b表示帶有樹形結(jié)構(gòu)的上下文路徑的示例;圖2c表示帶有根據(jù)本發(fā)明的上下文圖形結(jié)構(gòu)的上下文路徑的示例;圖2d表示通過反饋功能性增強(qiáng)的圖2c的上下文圖形結(jié)構(gòu);圖3表示用于組合線性上下文路徑的搜索樹的創(chuàng)建;圖4表示在創(chuàng)建根據(jù)本發(fā)明的上下文圖形的不同階段采用的不同步驟;圖5是流程圖,表示根據(jù)本發(fā)明的上下文圖形的進(jìn)程步驟;圖6表示反饋功能的創(chuàng)建;圖7表示上下文圖形內(nèi)的賦值;圖8表示上下文圖形創(chuàng)建系統(tǒng)的體系結(jié)構(gòu);圖9表示上下文圖形的聚集的示例;以及圖10表示根據(jù)本發(fā)明的本地分支置換。
圖2a和圖2b中給出根據(jù)先有技術(shù)的上下文路徑的示例。如圖2a所示的線性上下文路徑通過上下文解釋器108的鏈,將上下文源109連接到上下文屬性106,由此,每個(gè)上下文解釋器108正好包括一個(gè)輸入連接器和一個(gè)輸出連接器,從而實(shí)現(xiàn)了上下文路徑的線性配置。圖2a的這種概念僅允許為上下文屬性106使用一個(gè)上下文源109。
帶有不止一個(gè)輸入連接器的一個(gè)或多個(gè)上下文解釋器108的使用使得可以編輯不止一個(gè)上下文源提供的上下文數(shù)據(jù),從而創(chuàng)建上下文屬性106指定的、表示對(duì)上下文客戶機(jī)101的上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄。上下文解釋器108由此通過如圖2b所示的上下文路徑的樹結(jié)構(gòu)中的不同處理階段,轉(zhuǎn)變來自不同上下文源109的上下文數(shù)據(jù)。
在允許不同的傳感器或上下文源109分別與上下文解釋器108同時(shí)向多個(gè)其它上下文解釋器108提供數(shù)據(jù)時(shí),結(jié)果組成的是如圖2c所示的圖形結(jié)構(gòu)。下面,具有圖形結(jié)構(gòu)的上下文路徑稱為上下文圖形。
在圖2b所示的樹形結(jié)構(gòu)中,在樹的不同分支中按層次結(jié)構(gòu)排列了上下文路徑的要素、即上下文源109和上下文解釋器108,與該樹形結(jié)構(gòu)不同,上下文圖形通過允許一個(gè)分支內(nèi)的要素之間及不同分支的要素之間進(jìn)行互連,打破了層次結(jié)構(gòu)。圖2d表示根據(jù)本發(fā)明的具有完整特征的上下文圖形的示例,它包括反饋功能,比如由上下文解釋器6與上下文解釋器3之間的互連實(shí)現(xiàn)的反饋功能。反饋功能增加了復(fù)雜性。不過,一旦創(chuàng)建了上下文圖形,它們就可以被容易地處理而無任何限制。
上下文圖形創(chuàng)建基本上是從上下文屬性開始的。上下文屬性106指定所請(qǐng)求的上下文信息的類型、格式和焦點(diǎn)實(shí)體。每個(gè)上下文屬性106具有接口,它通過該接口可以接收所定義的數(shù)據(jù)記錄。此接口稱為輸入連接器。把數(shù)據(jù)提供到此輸入連接器只能通過具有用于輸送正好為數(shù)據(jù)記錄指定的類型的數(shù)據(jù)的接口的上下文圖形的另一要素。為接口指定的數(shù)據(jù)類型也指定接口本身的類型。通過將某種類型的一個(gè)要素的輸入連接器連接到上下文圖形中相同類型的不同要素的輸出連接器,建立上下文圖形的不同要素之間的連接。
圖3說明根據(jù)本發(fā)明的作為上下文圖形創(chuàng)建的自動(dòng)建立的基礎(chǔ)的基本方法和技術(shù)。為提供上下文圖形創(chuàng)建進(jìn)程的簡(jiǎn)明范例,在圖3的示例中,僅使用只具有一個(gè)輸入和一個(gè)輸出連接器的上下文解釋器。即使通過此示例僅可創(chuàng)建線性上下文路徑,此處所描述的技術(shù)也與說明書后面所述的創(chuàng)建更復(fù)雜上下文圖形的基本技術(shù)相同。
在圖3a中,表示上下文屬性106和可用于上下文圖形創(chuàng)建的要素,更具體地說,是可用的上下文解釋器108和上下文源109。上下文屬性106具有類型x的輸入連接器。三個(gè)不同的上下文源可用,每個(gè)具有一個(gè)不同類型的輸出連接器。輸入和輸出連接器的類型由字母標(biāo)識(shí)。在輸入連接器與輸出連接器為同一類型時(shí),一個(gè)輸入連接器僅與一個(gè)輸出連接器相配;在圖3a的示例中,這表示標(biāo)識(shí)連接器類型的字母對(duì)于相應(yīng)的輸入和輸出連接器是相同的。圖3a的上下文解釋器表示出輸入和輸出連接器的不同組合。
要?jiǎng)?chuàng)建上下文圖形,首先要建立搜索樹。上下文屬性106形成搜索樹310的根節(jié)點(diǎn)。圖3a的列表300搜索具有與上下文屬性的輸入連接器相配的輸出連接器的要素。這些要素用于搜索樹310的第一層。在圖3b的示例中,兩個(gè)上下文解釋器滿足了具有x類型的輸出連接器的條件,左側(cè)的解釋器具有y類型的輸入連接器,右側(cè)解釋器具有w類型的輸入連接器。接著,從列表300中取出具有y類型的輸出連接器的要素,并在搜索樹3 10的下一層中添加到具有y類型的輸入連接器的上下文解釋器以下的分支。具有w類型的輸出連接器的要素添加到具有w類型的輸入連接器的上下文解釋器的分支。該進(jìn)程會(huì)繼續(xù),直至上下文源可以添加到此搜索樹。最后,通過沿搜索樹310的連接的上下文解釋器,創(chuàng)建從上下文屬性106到上下文源109的路徑,從而形成上下文圖形。粗箭頭表示圖3b中創(chuàng)建的線性上下文路徑。上下文路徑用于依據(jù)由上下文源109提供的上下文數(shù)據(jù),向上下文屬性106提供具有指定類型、格式和焦點(diǎn)身份的數(shù)據(jù)記錄,并且由一系列的上下文解釋器108轉(zhuǎn)變成上下文屬性所理解的格式和類型。
應(yīng)當(dāng)指出,在搜索樹與上下文圖形之間有一個(gè)主要的區(qū)別。前者是用于為路徑創(chuàng)建構(gòu)筑搜索空間,而后者是用于描述上下文屬性、上下文解釋器、上下文源之間關(guān)系的結(jié)構(gòu),并且由上下文源及傳感器調(diào)解。
圖3c的流程圖說明為如圖3b所示線性上下文路徑創(chuàng)建搜索樹的處理步驟。在步驟S11中,上下文屬性用作路徑創(chuàng)建的起始點(diǎn)。此上下文屬性在步驟S12中被插入當(dāng)前節(jié)點(diǎn)陣列,并在步驟S13中被設(shè)為當(dāng)前節(jié)點(diǎn)。接著,在步驟S14中,從當(dāng)前節(jié)點(diǎn)列表中取出下一節(jié)點(diǎn)。在步驟S15中檢查輸入連接器是否與當(dāng)前節(jié)點(diǎn)的輸出連接器匹配,當(dāng)前節(jié)點(diǎn)在搜索樹創(chuàng)建的這個(gè)第一階段是上下文屬性。在后面階段中,當(dāng)前節(jié)點(diǎn)是前面已經(jīng)添加到樹形結(jié)構(gòu)中的上下文解釋器之一。如果下一節(jié)點(diǎn)的輸出與當(dāng)前節(jié)點(diǎn)的輸入連接器不匹配,則搜索返回到步驟S14,從當(dāng)前節(jié)點(diǎn)列表中獲得另一隨后的節(jié)點(diǎn)。如果當(dāng)前節(jié)點(diǎn)與下一節(jié)點(diǎn)的連接器在步驟S15中匹配,則下一節(jié)點(diǎn)的副本會(huì)添加到樹中,并且也會(huì)在S19添加到新節(jié)點(diǎn)列表中,由此由下一節(jié)點(diǎn)與步驟S17中的正確父節(jié)點(diǎn)和步驟S18中的正確子節(jié)點(diǎn)構(gòu)成副本來定義關(guān)系。如果在步驟S20中發(fā)現(xiàn)新節(jié)點(diǎn)是上下文源,則樹創(chuàng)建結(jié)束,并且在步驟S22中會(huì)組合路徑。如果新節(jié)點(diǎn)不是上下文源,則檢查是否已經(jīng)達(dá)到最大搜索步驟,如果是,則會(huì)生成錯(cuò)誤并在步驟S22結(jié)束樹創(chuàng)建。只要在步驟S21中未達(dá)到定義搜索樹的允許層數(shù)的最大搜索深度,就再次從步驟S14中的當(dāng)前節(jié)點(diǎn)列表中取出下一節(jié)點(diǎn),并且重復(fù)步驟S15到S21,直至在步驟S22可以成功地結(jié)束樹創(chuàng)建,或因錯(cuò)誤而結(jié)束樹創(chuàng)建。
在圖4a到圖4d的圖示中,表示了根據(jù)本發(fā)明的創(chuàng)建上下文圖形的基本概念。為便于精確說明,如下所述的上下文圖形創(chuàng)建方法使用僅帶有一個(gè)輸入連接器的上下文屬性。但應(yīng)當(dāng)指出,根據(jù)本發(fā)明的圖形創(chuàng)建并不限于僅帶有一個(gè)輸入連接器的上下文屬性,而且本說明書中所述的方法也可應(yīng)用到相應(yīng)的上下文屬性的第二或更多的輸入連接器。
如圖4a所示,通過嘗試組合從上下文屬性106到上下文源109的線性上下文路徑,開始上下文圖形創(chuàng)建。為此,把具有一個(gè)輸入和一個(gè)輸出連接器的上下文解釋器108接到上下文屬性。必要時(shí),具有一個(gè)輸入連接器和一個(gè)輸出連接器的另一上下文解釋器108可接到此上下文解釋器108,依此類推,直至通過上下文解釋器108鏈從上下文屬性106到上下文源109的線性互連建立為止。
如果此線性路徑創(chuàng)建失敗,通常是由于沒有適當(dāng)?shù)纳舷挛慕忉屍骱?或上下文源可用,則將所述上下文解釋器鏈中的第一個(gè)上下文解釋器108替換為帶有兩個(gè)輸入連接器的上下文解釋器401。省略圖4a的鏈中連接到第一上下文解釋器108的輸入連接器的其它上下文解釋器108。
接著,對(duì)于上下文解釋器401的每個(gè)輸入連接器,嘗試創(chuàng)建如圖4b所示的到適當(dāng)上下文源109的線性路徑。同樣,如圖4c所示,如果對(duì)兩個(gè)同屬輸入連接器之一,線性路徑創(chuàng)建失敗,則對(duì)于剩下的同屬輸入連接器,把連接到所述同屬連接器的上下文解釋器108替換為帶有兩個(gè)輸入連接器的另一上下文解釋器401。每次對(duì)于上下文解釋器401的同屬輸出連接器,線性路徑創(chuàng)建失敗時(shí),連接到相應(yīng)同屬輸出連接器的第一上下文解釋器108被替換為帶有兩個(gè)輸入連接器的上下文解釋器401,直至在路徑線的末端連接到上下文源109。上下文解釋器和/或上下文源可同時(shí)用于配置的不同分支,從而結(jié)構(gòu)最終產(chǎn)生如圖4d所示的圖形。圖5的流程圖表示了根據(jù)圖4d創(chuàng)建上下文圖形的基本步驟。在步驟S51中調(diào)用圖形創(chuàng)建。為避免無止境的上下文路徑創(chuàng)建,設(shè)置了圖形可以展開深度的最大值。在步驟S52中檢查此值,如果達(dá)到最大深度,則在步驟S59停止圖形創(chuàng)建,并給出錯(cuò)誤消息。只要未超出最大深度,就在步驟S53中檢查當(dāng)前上下文源是否確實(shí)具有一個(gè)輸入連接器。如果是,則在步驟S54嘗試根據(jù)上述方法創(chuàng)建到上下文源的線性路徑。在步驟S55,檢查線性路徑創(chuàng)建是否成功,如果成功,則結(jié)束圖形創(chuàng)建。如果不成功,則在步驟S56中對(duì)上下文解釋器和上下文源的每種可能組合的輸入循環(huán)應(yīng)用上述圖形創(chuàng)建過程。在步驟S57中,檢查對(duì)每個(gè)輸入連接器,圖形創(chuàng)建是否成功,并且對(duì)于肯定結(jié)果,在步驟S58中成功結(jié)束圖形創(chuàng)建,或者對(duì)于否定結(jié)果,在步驟S59中結(jié)束圖形創(chuàng)建,并給出錯(cuò)誤消息。
大體上,對(duì)于上下文圖形創(chuàng)建,先嘗試組合線性路徑,如果該嘗試失敗,才生成子樹。這對(duì)目前添加到圖形的所有節(jié)點(diǎn)(上下文解釋器)會(huì)循環(huán)重復(fù)。由于復(fù)雜性會(huì)隨要素?cái)?shù)量和上下文圖形最大深度的增加而增加,因此要限制搜索深度。
至此所述的圖形創(chuàng)建中,無法處理反饋功能。為實(shí)現(xiàn)反饋功能,要對(duì)上下文圖形中使用的每個(gè)要素定義約束和約束事件。僅在給定環(huán)境允許這樣做時(shí),才可以使用帶有定義約束的上下文圖形要素。只要可以履行約束,便可執(zhí)行與相應(yīng)的約束事件相關(guān)的功能。約束定義了上下文圖形內(nèi)上下文解釋器或上下文源使用的一定條件。約束事件定義了在為約束定義的條件有效時(shí)要執(zhí)行的一定操作。例如,約束可能如同“如果x類型的上下文解釋器已用在上下文圖形內(nèi),則僅使用此上下文解釋器”,而相應(yīng)的約束事件如同“把我連接到x”。
此機(jī)制的處理和執(zhí)行可以集成到上述上下文圖形創(chuàng)建中而無任何限制。約束還能以其它方式使用,如僅在有足夠的計(jì)算能力或者在某些傳感器可用時(shí),才可以使用約束。應(yīng)當(dāng)指出,可以不僅為上下文解釋器,而且為上下文源和傳感器定義約束。
圖6提供了如何由約束處理反饋功能的示例。必須采用y類型的上下文解釋器,即帶有連接到x類型上下文解釋器601的約束的上下文解釋器。在圖6的示例中滿足此約束,因此可以使用y類型的相應(yīng)上下文解釋器602。約束事件隨后可用于真正實(shí)現(xiàn)反饋功能,即將y類型的上下文解釋器602連接到x類型的上下文解釋器601。
所述上下文圖形創(chuàng)建機(jī)制可進(jìn)一步優(yōu)化以提高其性能。首先,上下文圖形創(chuàng)建所用的要素可根據(jù)內(nèi)部?jī)?yōu)化規(guī)則分類。例如,可把較少使用的要素移到可用要素列表300的結(jié)尾,或者把具有較少輸入連接器的要素放到列表的開頭。由于該機(jī)制只是從第一個(gè)要素到最后一個(gè)要素穿過列表,所以這增加了使用一個(gè)優(yōu)選要素的可能性?;蛘?,可把例如已使用的上下文解釋器或上下文源移到列表300的開頭,這樣提供在用過的不同要素的數(shù)目上的更少冗余。
當(dāng)進(jìn)一步優(yōu)化圖形創(chuàng)建時(shí),為給定的上下文屬性106創(chuàng)建不僅僅一個(gè)上下文圖形,而是多個(gè)不同的上下文圖形。然后,根據(jù)比如最少葉數(shù)、最低存儲(chǔ)器使用量之類的優(yōu)化標(biāo)準(zhǔn)檢查每個(gè)圖形,表現(xiàn)出符合優(yōu)化標(biāo)準(zhǔn)的最佳結(jié)果的圖形則被用于給定的上下文屬性。另外,優(yōu)化標(biāo)準(zhǔn)可以在圖形創(chuàng)建期間用于選擇另外的上下文解釋器或上下文源,而不是從列表300的開頭到結(jié)尾搜索下面的上下文解釋器或上下文源。經(jīng)常使用的上下文圖形還可以被保存在上下文圖形高速緩存中以便查找,從而提高性能,特別是在經(jīng)常采用相對(duì)較小數(shù)量的不同圖形時(shí)。子圖也可以存儲(chǔ)在高速緩存中,這意味著不僅完整的圖形、而且經(jīng)常使用的圖形部分都被高速緩存。為提高系統(tǒng)的整體性能,可以在系統(tǒng)低負(fù)荷時(shí)預(yù)計(jì)算圖形。
為簡(jiǎn)化問題,至此仍未對(duì)上下文圖形中使用的要素的類與實(shí)例進(jìn)行區(qū)分。所述上下文圖形創(chuàng)建只使用了一些要素的特征,并創(chuàng)建了表示它們之間關(guān)系的結(jié)構(gòu)。不過,上下文圖形還必須被例示,即必須創(chuàng)建要素類的實(shí)例并將其鏈接,從而構(gòu)建完全實(shí)用的上下文圖形。因此,上下文圖形創(chuàng)建之后的另一步驟、上下文圖形建立是必需的。在此步驟中,創(chuàng)建上下文圖形的必需要素的實(shí)例。盡可能使用現(xiàn)存的且在運(yùn)行的實(shí)例。最后,所有實(shí)例相互連接,從而建立完整的完全實(shí)用的上下文圖形。
在選擇上下文解釋器和上下文源以形成上下文圖形的要素時(shí),必須檢查要素的輸入與輸出值是否可以互相映射。只要未指定焦點(diǎn)實(shí)體,就未完全定義上下文圖形的要素的輸入和輸出值。圖7a表示的上下文解釋器108通過將某人X的物理位置考慮在內(nèi)而得出其房間號(hào)。只要未使用上下文解釋器108,X的值就未指定且在圖形初始化后必定被約束到適當(dāng)值,從而定義上下文解釋器之間的有效關(guān)系。例如,如果圖7a中的上下文解釋器108連到與焦點(diǎn)實(shí)體“John Doe”相關(guān)的上下文屬性106,則此值必須被映射到變量“X”。這在圖7b中表示。
使X的虛值約束到上下文圖形內(nèi)的實(shí)值是通過標(biāo)準(zhǔn)一致方案來完成的。在上述示例中,上下文解釋器108可以子句的形式由輸入和輸出值描述{output_room(X)^input_location(X)}CI當(dāng)上下文解釋器108連到上下文屬性時(shí),上下文屬性的子句必須與上下文解釋器的子句一致,即必須為兼容性檢查約束(以及可能的無約束值),并且在任何可能之處都約束變量。因此,通過在X的所有出現(xiàn)值中,使X約束到“John Doe”,{input_room(X)|X=“John Doe”}CI;{output_room(X)^input_room(X)}CI產(chǎn)生了{(lán)input_room(X)|X=“John Doe”}CI;{output_room(X)|X=“JohnDoe”^input_room(X)|X=“John Doe”}CI如果兩個(gè)子句無法一致,則兩個(gè)組件不兼容。此外,如果在上下文圖形創(chuàng)建結(jié)束時(shí)留有任何無約束變量,則產(chǎn)生的上下文圖形無效,且新的上下文圖形創(chuàng)建必須初始化。要闡明的是,焦點(diǎn)實(shí)體只是要受約束的輸入和輸出連接器的可能值之一。在上下文圖形創(chuàng)建期間,可能受約束的值可以是類型、格式或焦點(diǎn)實(shí)體,視上下文屬性、上下文解釋器和上下文源的特征而定。
圖8表示根據(jù)本發(fā)明的上下文信息提供系統(tǒng)800。上下文圖形802的動(dòng)態(tài)建立由配置裝置801完成,而該裝置本身由若干組件構(gòu)成。
配置裝置801將表示對(duì)上下文屬性所定義的上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄的規(guī)格作為創(chuàng)建上下文圖形的基礎(chǔ)。它返回連接到上下文屬性的上下文圖形,并且在連接到傳感器的上下文源端提供必需的上下文數(shù)據(jù)。配置裝置連接到上下文解釋器和上下文源的儲(chǔ)存庫804,在本發(fā)明的具體實(shí)施例中,還連接到計(jì)費(fèi)和核算裝置805,并且在本發(fā)明的另一實(shí)施例中,還連接到傳感器目錄806。
配置裝置801集成在上下文服務(wù)器103中,上下文服務(wù)器103向上下文客戶機(jī)提供該客戶機(jī)請(qǐng)求的上下文信息。上下文圖形創(chuàng)建裝置807將有關(guān)焦點(diǎn)實(shí)體的信息傳遞給CI/CS預(yù)選裝置812和傳感器預(yù)選裝置813,其中檢查使用約束以確定要使用的組件。然后上下文圖形創(chuàng)建裝置807嘗試依據(jù)提供的上下文解釋器、上下文源和傳感器組合上下文圖形。配置裝置801在上下文客戶機(jī)內(nèi)負(fù)責(zé)即時(shí)建立動(dòng)態(tài)上下文圖形配置,該配置向上下文屬性提供該上下文屬性指定的、表示對(duì)上下文客戶機(jī)請(qǐng)求的上下文信息的響應(yīng)的數(shù)據(jù)記錄。
因此,上下文圖形創(chuàng)建從上下文客戶機(jī)101的請(qǐng)求開始,請(qǐng)求被傳遞到上下文服務(wù)器103。請(qǐng)求使上下文服務(wù)器103檢查是否有適當(dāng)?shù)纳舷挛膶傩?06可滿足該上下文請(qǐng)求。如果沒有適當(dāng)?shù)纳舷挛膶傩?06,則創(chuàng)建新的上下文屬性,并將圖形創(chuàng)建初始化。上下文圖形創(chuàng)建由配置裝置801的上下文圖形創(chuàng)建裝置807處理。它根據(jù)上述方法,自動(dòng)組合上下文圖形結(jié)構(gòu)以饋送給定的上下文屬性106??梢远x復(fù)雜的優(yōu)化規(guī)則來優(yōu)化上下文圖形創(chuàng)建裝置807進(jìn)行的圖形創(chuàng)建。此類優(yōu)化規(guī)則可以是例如優(yōu)選焦點(diǎn)實(shí)體擁有的傳感器,或功耗小于其它傳感器的傳感器,或者成本標(biāo)準(zhǔn),等等。上下文圖形配置的進(jìn)一步優(yōu)化由配置裝置801的上下文圖形優(yōu)化裝置808執(zhí)行。如果圖形創(chuàng)建失敗,則錯(cuò)誤會(huì)傳遞到上下文服務(wù)器103,而該服務(wù)器隨后再將錯(cuò)誤傳遞到上下文客戶機(jī)101。
CI/CS預(yù)選裝置812檢查可用于當(dāng)前上下文屬性106的上下文解釋器108和上下文源109。這也包括對(duì)約束的第一次評(píng)估,從而確定無論如何是否可滿足它們。如果例如約束指定要使用某些傳感器,則會(huì)檢查那些傳感器的可用性,如果它們不可用,則相應(yīng)的上下文解釋器或上下文源被從為當(dāng)前上下文圖形提供的有效上下文解釋器和上下文源的列表中刪除。CI/CS預(yù)選裝置812通過檢查例如是否允許上下文屬性的焦點(diǎn)實(shí)體使用某些上下文解釋器和/或上下文源,進(jìn)一步處理安全限制的確認(rèn)。如果例如上下文屬性引用某個(gè)用戶的焦點(diǎn)實(shí)體,而由于未經(jīng)許可,不允許該用戶使用還包括一些大加密例程的上下文解釋器,則它會(huì)在預(yù)選過程中被刪除。
傳感器預(yù)選裝置813實(shí)現(xiàn)非常類似的功能性,驗(yàn)證只使用有效傳感器。有效傳感器是指上下文屬性的焦點(diǎn)實(shí)體被允許訪問的那些傳感器。如果例如焦點(diǎn)實(shí)體是用戶而所需信息是某種位置,則傳感器預(yù)選裝置813注意僅使用用戶自身的位置傳感器。傳感器預(yù)選裝置813還檢查傳感器所需的上下文解釋器和上下文源是否是可用的。
把圖形規(guī)格傳到上下文圖形優(yōu)化裝置808,其中嘗試進(jìn)一步優(yōu)化由上下文圖形創(chuàng)建裝置807建立的上下文圖形配置。上下文圖形優(yōu)化裝置將更完善的優(yōu)化規(guī)則應(yīng)用到上下文圖形配置,隨后在上下文圖形創(chuàng)建裝置807中完成。根據(jù)應(yīng)用的這些優(yōu)化規(guī)則,上下文圖形優(yōu)化裝置808可重新配置上下文圖形,并調(diào)換上下文圖形配置中使用的組件。為了進(jìn)一步優(yōu)化上下文圖形配置,還使用了來自CI/CS預(yù)選裝置812和傳感器預(yù)選裝置813的信息。
然后把優(yōu)化的上下文圖形配置交給上下文圖形確認(rèn)裝置809,該裝置驗(yàn)證其有效性。上下文圖形確認(rèn)裝置809檢查圖形中使用的上下文圖形配置的一致性以及所有傳感器、上下文源和上下文解釋器的可用性。然后把經(jīng)過這樣驗(yàn)證的上下文圖形配置傳遞到上下文圖形建立裝置810,該裝置最終例示圖形,從而實(shí)現(xiàn)從傳感器803到上下文屬性106的上下文路徑。通過適當(dāng)?shù)乩舅猩舷挛慕忉屍骱蜕舷挛脑?,并建立它們之間的輸入和輸出關(guān)系,從而例示上下文圖形配置。如果建立失敗,則錯(cuò)誤會(huì)傳遞到上下文圖形創(chuàng)建裝置807,從而開始新的上下文圖形配置的創(chuàng)建。例示分兩步實(shí)施。第一步是檢查哪些實(shí)例已經(jīng)在運(yùn)行,可以采用哪些實(shí)例,并且隨后例示未在運(yùn)行的要素。在第二步中,將上下文圖形要素、傳感器803和上下文屬性106連接到上下文圖形結(jié)構(gòu),從而完成例示進(jìn)程。大體上,如果其中一個(gè)裝置實(shí)現(xiàn)的用于圖形優(yōu)化、確認(rèn)或建立的任一進(jìn)程失敗,則相應(yīng)的裝置產(chǎn)生錯(cuò)誤,該錯(cuò)誤被回傳到圖形創(chuàng)建裝置807,從而開始生成新的上下文圖形配置。
上下文描述如上述定義的焦點(diǎn)實(shí)體的情況時(shí),上下文信息的提供是動(dòng)態(tài)而不是靜態(tài)進(jìn)程。由于上下文屬性106必須提供有效數(shù)據(jù)記錄,表示對(duì)上下文客戶機(jī)101發(fā)出的上下文信息請(qǐng)求的響應(yīng),因此必須把形成上下文的情況中的修改考慮在內(nèi)。從上下文自身的更改開始,要修改上下文圖形以反映焦點(diǎn)實(shí)體的上下文中的變化。修改由配置裝置801的更改管理裝置811負(fù)責(zé)。更改管理裝置811使用來自傳感器管理815、傳感器預(yù)選813、CI/CS管理814、CI/CS預(yù)選812以及上下文圖形802自身的信息,用于檢查圖形是否仍有效。
因?yàn)樯舷挛膱D形的確認(rèn)是動(dòng)態(tài)進(jìn)程,所以它必須被再三重復(fù)。在幾種情況下,圖形必須重新配置。一種情況是出現(xiàn)上下文解釋器和上下文源的可用性、尤其是傳感器的可用性的變化。通過CI/CS管理裝置814和傳感器管理裝置815檢查,可以確定上下文圖形的組件的可用性。如果上下文圖形的使用組件之一不能再使用,則上下文解釋器和上下文源的預(yù)選會(huì)再次啟動(dòng)以查找可能的替代者。
CI/CS管理裝置814通過定期檢查外部資源,并將新的可用上下文解釋器類和上下文源類下載到儲(chǔ)存庫804,對(duì)儲(chǔ)存庫804中的上下文解釋器和上下文源進(jìn)行刪除和添加處理。它還檢查哪些上下文解釋器和上下文源長(zhǎng)期未被使用,并在存儲(chǔ)空間不足時(shí),將它們刪除。
傳感器管理裝置815始終監(jiān)視所有可用的傳感器,并不斷檢查傳感器的狀態(tài)。此信息可被查詢并用于上下文圖形創(chuàng)建進(jìn)程。如果某個(gè)傳感器出現(xiàn)故障或者不再可訪問,則相應(yīng)的信息會(huì)傳播到更改管理811,更改管理811則將嘗試替換相應(yīng)的傳感器。傳感器管理裝置815還根據(jù)配置裝置801的其它裝置的請(qǐng)求,嘗試查找新的傳感器。它將請(qǐng)求傳遞到外部源、例如傳感器目錄806。
更改管理811還將上下文圖形802中使用的如上下文解釋器、上下文源或傳感器這些要素替換為新要素,從而進(jìn)一步優(yōu)化上下文圖形802,例如,使用不同的定位系統(tǒng)獲得更精確的位置信息。優(yōu)化標(biāo)準(zhǔn)可能很復(fù)雜,并可利用清算機(jī)構(gòu)裝置816提供的信息。
關(guān)于計(jì)費(fèi)和核算問題,可以在配置裝置801中實(shí)現(xiàn)清算機(jī)構(gòu)裝置816。清算機(jī)構(gòu)允許對(duì)使用外部傳感器和訪問內(nèi)部傳感器計(jì)費(fèi)。它也檢查訪問限制,并負(fù)責(zé)將這些限制反映在系統(tǒng)的其它部分。清算機(jī)構(gòu)裝置816提供的信息可用于就上下文圖形創(chuàng)建裝置807和/或上下文圖形優(yōu)化裝置808內(nèi)的使用成本對(duì)上下文圖形配置進(jìn)行優(yōu)化。清算機(jī)構(gòu)裝置816還允許在不同設(shè)備之間交換傳感器訪問,從而允許上下文服務(wù)器之間更復(fù)雜的相關(guān)性。例如,進(jìn)入購物中心的用戶可以交換一些他的簡(jiǎn)檔信息以獲得對(duì)室內(nèi)位置傳感器系統(tǒng)的訪問。
用于上下文圖形802的傳感器803可分布在不同的節(jié)點(diǎn),并可從遠(yuǎn)程訪問。大體上有兩種類型的傳感器,即物理傳感器和邏輯傳感器。物理傳感器檢測(cè)各種物理數(shù)據(jù),而邏輯傳感器收集如用戶簡(jiǎn)檔之類的信息。
本身可訪問許多其它上下文屬性106以獲得傳感器信息的傳感器是用于更多動(dòng)態(tài)傳感器配置的一種資源。用于此目的的上下文屬性可以根據(jù)傳感器的客觀目標(biāo)需要來更改。這種外部上下文屬性106的再用產(chǎn)生了上下文圖形的聚集,圖9示出其中一個(gè)例子。在適當(dāng)?shù)淖由舷挛膱D形位于不同的上下文服務(wù)器上時(shí),最好使用聚集的上下文圖形。在子上下文圖形全部位于單個(gè)上下文服務(wù)器上時(shí),通過繞過上下文屬性、從而直接將傳感器連接到子圖的第一層上下文解釋器,可以將它們合并成單個(gè)圖形。另外,對(duì)于傳感器,上下文解釋器也可以通過遠(yuǎn)程上下文服務(wù)器,訪問外部上下文屬性以檢索可訪問的信息。同樣,在這種情況下,不同的獨(dú)立上下文圖形被聚集成超上下文圖形結(jié)構(gòu),該結(jié)構(gòu)類似于下面進(jìn)一步描述的、通過動(dòng)態(tài)傳感器配置獲得的結(jié)構(gòu)。
對(duì)于特定情況,手動(dòng)建立上下文圖形配置將優(yōu)于非自動(dòng)建立。通過指定要使用的上下文解釋器和上下文源或傳感器,或者為配置裝置801提供部分或完整的上下文圖形以供使用,這便可以實(shí)現(xiàn)。
對(duì)于手動(dòng)指定上下文解釋器或上下文源及傳感器,通過定義某些過濾規(guī)則,或者傳遞指定最好或明確要使用的上下文解釋器、上下文源和/或上下文傳感器的列表,從而影響用于傳感器的預(yù)選裝置814和/或用于上下文解釋器和上下文源的預(yù)選裝置812。手動(dòng)干預(yù)可以延伸到不僅指定用于上下文圖形創(chuàng)建的要素,而且還指定那些要素之間的互連,從而將完整的子上下文圖形傳遞到配置裝置801。因此,可以指定手動(dòng)建立的上下文圖形或上下文子圖形是否是專用的或者僅最好用于某一上下文圖形配置。當(dāng)手動(dòng)創(chuàng)建的完整上下文圖形傳遞到配置裝置801時(shí),配置裝置801僅要處理圖形的確認(rèn)和例示。然后,通過減少其錯(cuò)誤控制功能性,并將可能的錯(cuò)誤直接傳遞到上下文客戶機(jī)101,而不嘗試重新配置上下文圖形以補(bǔ)償錯(cuò)誤,圖形維護(hù)被禁用。
上下文圖形對(duì)形成上下文信息的情況變化的動(dòng)態(tài)自適應(yīng)產(chǎn)生了對(duì)不同傳感器、上下文源和上下文解釋器的要求,這種動(dòng)態(tài)自適應(yīng)由更改管理裝置811處理。更改管理裝置811使用本地分支置換修改上下文圖形,并使其適于新情況。假定上下文圖形內(nèi)的傳感器或任一其它要素出現(xiàn)故障,則直至該故障位置的上下文圖形會(huì)變得無效。由此產(chǎn)生的錯(cuò)誤通過整個(gè)路徑向上傳播到上下文圖形內(nèi)的下一要素。在圖10中,例如上下文源15出現(xiàn)故障。此錯(cuò)誤傳播到上下文解釋器8,從該解釋器處將新的子圖創(chuàng)建初始化。如果此圖形創(chuàng)建失敗,則上下文解釋器8也變?yōu)闊o效,且新子圖創(chuàng)建會(huì)從上下文解釋器第3號(hào)的位置開始。假定錯(cuò)誤向上傳播到上下文解釋器1,則上下文解釋器1下方的整個(gè)分支必須重建。因此,本地分支置換指的是僅僅重組受情況變化影響的那些部分。只要錯(cuò)誤不會(huì)使整個(gè)上下文圖形變?yōu)闊o效,則從上下文解釋器第2號(hào)開始的分支將保持不變。本地分支置換盡可能使分支重建保持在本地。
迄今解釋器只是被視為具有給定種類的輸入和一個(gè)輸出的靜態(tài)組件。動(dòng)態(tài)上下文解釋器實(shí)現(xiàn)更增強(qiáng)的功能。它們能夠根據(jù)外部和/或內(nèi)部條件,更改其輸入和/或輸出連接器的類型。
例如,在發(fā)現(xiàn)GSM系統(tǒng)提供的信息不夠精確時(shí),動(dòng)態(tài)上下文解釋器會(huì)將其輸入連接器類型從GSM更改為GPS位置信息類型。這種情況下,如圖10所示,它會(huì)使上下文圖形內(nèi)其適當(dāng)?shù)淖訕錈o效,從而導(dǎo)致相應(yīng)的分支重新配置。
在本發(fā)明的特定實(shí)施例中,上下文圖形的更改管理的性能通過動(dòng)態(tài)上下文解釋器進(jìn)一步提高。在給定的傳感器出現(xiàn)故障或變得不可用時(shí),動(dòng)態(tài)上下文解釋器將自己在更改管理裝置811處登記為事件處理器。在用于描述某個(gè)用戶的上下文的傳感器要永久性更改時(shí),如在用戶四處移動(dòng)時(shí)要檢測(cè)用戶周圍的環(huán)境溫度時(shí),這就特別有利。當(dāng)要調(diào)換傳感器時(shí),動(dòng)態(tài)上下文解釋器將創(chuàng)建帶有現(xiàn)在無效分支的屬性的偽上下文屬性,并采用上述上下文圖形創(chuàng)建機(jī)制為偽上下文屬性的上下文圖形創(chuàng)建初始化。在上下文圖形例示時(shí),此上下文圖形聯(lián)接在偽上下文屬性上,從而連接到動(dòng)態(tài)上下文解釋器。這樣,在用戶四處移動(dòng)或因?yàn)閭鞲衅髦挥行》秶鷷r(shí),避免了大量的重新配置步驟。
或者,通過查詢可用傳感器并選擇適當(dāng)?shù)膫鞲衅鳎瑒?dòng)態(tài)上下文解釋器可以自己選擇新的傳感器。在如上述監(jiān)控用戶環(huán)境溫度的示例的簡(jiǎn)單情況中,這種替代方法更加有效,也節(jié)省資源。在上下文圖形重新配置僅要使用某些傳感器和/或上下文解釋器和/或上下文源時(shí),動(dòng)態(tài)上下文解釋器還可影響上下文解釋器/上下文源預(yù)選與傳感器預(yù)選。
要決定傳感器是否適用于某個(gè)上下文圖形,傳感器管理裝置815查詢傳感器目錄儲(chǔ)存庫806中保存的傳感器目錄。傳感器目錄是提供對(duì)分層結(jié)構(gòu)數(shù)據(jù)的訪問的服務(wù)器。每個(gè)信息附帶有屬性。傳感器目錄的主要目的是提供傳感器參考。傳感器目錄可以兩種不同的方式組織,第一種方式是將多個(gè)傳感器目錄分組到傳感器目錄聯(lián)邦(SDF)。每二種方式是將傳感器目錄構(gòu)建為分層結(jié)構(gòu)(SDH)。
SDF是多個(gè)獨(dú)立的傳感器目錄,具有非復(fù)制、非冗余信息數(shù)據(jù)庫。請(qǐng)求傳遞到SDF的某個(gè)成員時(shí),請(qǐng)求也同時(shí)暗自發(fā)送到聯(lián)邦的每個(gè)其它成員,從而形成了一種虛擬服務(wù)器。形成傳感器共用池的建筑某層內(nèi)的傳感器目錄是傳感器目錄聯(lián)邦的示例。如果查詢此層的一個(gè)傳感器目錄,則也會(huì)嘗試使用其它傳感器目錄的信息。
傳感器目錄分層結(jié)構(gòu)內(nèi)的傳感器目錄也是非復(fù)制、非冗余的。與SDF不同,在請(qǐng)求發(fā)送到SDH內(nèi)的某個(gè)傳感器目錄時(shí),先嘗試在本地解決請(qǐng)求。如果該傳感器目錄無法解決請(qǐng)求,則它將請(qǐng)求交給其父?jìng)鞲衅髂夸?。該目錄隨后嘗試自己解決請(qǐng)求,或者將請(qǐng)求傳遞給另一子傳感器目錄或甚至傳遞給它自己的父?jìng)鞲衅髂夸洝楂@得提高的性能,信息會(huì)高速緩存在分層結(jié)構(gòu)中的不同層上??梢栽O(shè)置查詢的壽命期,以免其向上進(jìn)一步傳播到分層結(jié)構(gòu)的給定層。應(yīng)當(dāng)指出,SDH并非必須由單個(gè)傳感器目錄組成,而是也可以包含SDF。
如果傳感器管理裝置815檢測(cè)到傳感器本地不再可訪問,但在傳感器目錄中仍可用,則它會(huì)將此傳感器標(biāo)記為暫時(shí)不可用,并在一段時(shí)間后將其徹底刪除。如果傳感器即不可訪問,在傳感器目錄中也不再可用,則傳感器管理裝置815將立即將它從可用傳感器列表中刪除。
權(quán)利要求
1.應(yīng)請(qǐng)求提供上下文信息的系統(tǒng)(800),它包括上下文屬性(106),為表示對(duì)上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄指定類型、格式和焦點(diǎn)實(shí)體;至少一個(gè)上下文源(109),為所述上下文信息請(qǐng)求提供相關(guān)的上下文數(shù)據(jù);至少一個(gè)上下文解釋器(108、401、601、602),用于建立所述上下文屬性與所述上下文源之間的互連;以及配置裝置(801),用于建立動(dòng)態(tài)上下文圖形配置,以便根據(jù)上下文源和上下文解釋器的實(shí)際可用性和適用性組合它們以提供所述數(shù)據(jù)記錄。
2.如權(quán)利要求1所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)通過以下步驟生成所述上下文圖形配置將第一上下文解釋器(108、401、601、602)或者上下文源連接到上下文屬性(106),所述第一上下文解釋器具有與所述上下文屬性的輸入連接器相匹配的輸出連接器,所述上下文源具有與所述上下文屬性的輸入連接器相匹配的輸出連接器;在使用第一上下文解釋器時(shí),將所述第一上下文解釋器(108、401、601、602)的每個(gè)輸入連接器連接到與所述各個(gè)輸入連接器相匹配的上下文解釋器(108、401、601、602)的輸出,或者連接到具有與所述各個(gè)輸入連接器相匹配的輸出連接器的上下文源(109);以及將尚未連接到上下文源(109)的輸出連接器或上下文解釋器(108、401、601、602)的輸出連接器的、上下文解釋器(108、401、601、602)的每個(gè)輸入連接器連接到與所述各個(gè)輸入連接器相匹配的上下文解釋器(108、401、601、602)的輸出,或者連接到具有與所述各個(gè)輸入連接器相匹配的輸出連接器的上下文源(109)。
3.如權(quán)利要求2所述的提供上下文信息的系統(tǒng)(800),其特征在于,通過將上下文解釋器(108、401、601、602)的輸入連接器連接到不同上下文解釋器(108、401、601、602)的輸出連接器,而輸出連接器又已經(jīng)連接到所述上下文圖形配置中存在的另一上下文解釋器(108、401、601、602)的輸入連接器或上下文屬性(106)的輸入,從而建立反饋功能。
4.如權(quán)利要求3所述的提供上下文信息的系統(tǒng)(800),其特征在于,建立所述反饋功能的條件由為所述上下文解釋器(601、602)定義的約束來指定,并且所述反饋功能的實(shí)現(xiàn)由為所述上下文解釋器(601、602)定義的相應(yīng)的約束事件來指定。
5.如權(quán)利要求1到4之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,包含多個(gè)可用上下文解釋器(108、401、601、602)和上下文源(109)的儲(chǔ)存庫(804)向所述配置裝置提供上下文解釋器(108、401、601、602)和上下文源。
6.如權(quán)利要求1到5之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述上下文源(109)訪問提供物理數(shù)據(jù)和/或信息數(shù)據(jù)的傳感器(803)。
7.如權(quán)利要求1到6之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述上下文圖形配置是按照預(yù)定義的優(yōu)化規(guī)則建立的。
8.如權(quán)利要求1到7之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,圖形高速緩存提供預(yù)配置的上下文圖形配置以供所述配置裝置(801)使用。
9.如權(quán)利要求1到8之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,為所提供的用于上下文圖形內(nèi)的上下文解釋器(108、401、601、602)或上下文源(109)的輸入連接器和/或輸出連接器定義的所述焦點(diǎn)實(shí)體是以變量來實(shí)現(xiàn)的,所述變量在所述上下文圖形初始化后被約束到一個(gè)實(shí)值。
10.如權(quán)利要求1到9之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,上下文解釋器(108、401、601、602)根據(jù)請(qǐng)求和/或接收的數(shù)據(jù)的可用性或特性的變化,修改其輸入連接器的類型和/或其輸出連接器的類型。
11.如權(quán)利要求1到10之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括自動(dòng)為給定的上下文屬性(106)組合上下文圖形(802)的上下文圖形創(chuàng)建裝置(807)。
12.如權(quán)利要求1到11之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括更改管理裝置(811),用于根據(jù)所述上下文圖形內(nèi)的要素(108、109、401、601、602)的可用性和/或適用性的變化,控制上下文圖形(802)的重新配置。
13.如權(quán)利要求1到12之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括上下文圖形優(yōu)化裝置(808),用以根據(jù)規(guī)則體系控制上下文圖形(802)的建立。
14.如權(quán)利要求1到13之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括上下文圖形確認(rèn)裝置,用以驗(yàn)證上下文圖形(802)的一致性和所述上下文圖形內(nèi)使用的所述要素(108、109、401、601、602)的可用性。
15.如權(quán)利要求1到14之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括上下文圖形建立裝置(810),用以在上下文圖形(802)中例示所述上下文解釋器(108、401、601、602)和上下文源(109)。
16.如權(quán)利要求1到15之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括預(yù)選裝置,用于選擇適用于為給定的上下文屬性(106)創(chuàng)建上下文圖形(802)的上下文源(109)和上下文解釋器(108、401、601、602)。
17.如權(quán)利要求1到16之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括傳感器預(yù)選裝置(813),用于選擇與適合于為給定的上下文屬性(106)創(chuàng)建上下文圖形(802)的上下文源(109)一起使用的傳感器(803)。
18.如權(quán)利要求12到17之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括傳感器管理裝置(815),用以監(jiān)控用于上下文圖形(802)的每個(gè)傳感器(803)的狀態(tài)和可用性,并將結(jié)果轉(zhuǎn)發(fā)到所述更改管理裝置(811)。
19.如權(quán)利要求1到18之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括訪問控制裝置(816),用以加強(qiáng)在所述上下文圖形中組件的使用上施加的訪問限制。
20.如權(quán)利要求1到19之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,所述配置裝置(801)包括核算裝置(816),用于就上下文圖形(802)所用的傳感器(803)和要素(108、109、401、601、602)的使用向焦點(diǎn)實(shí)體收費(fèi)。
21.如權(quán)利要求1到20之一所述的提供上下文信息的系統(tǒng)(800),其特征在于,至少一個(gè)預(yù)定義的上下文圖形被鏈接到正建立的上下文圖形(802)。
22.軟件產(chǎn)品,它在由數(shù)據(jù)處理設(shè)備的處理裝置執(zhí)行時(shí),適合于在所述數(shù)據(jù)處理設(shè)備上實(shí)現(xiàn)如權(quán)利要求1到21之一所述的應(yīng)請(qǐng)求提供上下文信息的系統(tǒng)(800)。
23.應(yīng)請(qǐng)求提供上下文信息的方法,它具有以下步驟為表示對(duì)上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄指定類型、格式和焦點(diǎn)實(shí)體;定位為所述上下文信息請(qǐng)求提供相關(guān)上下文數(shù)據(jù)的一個(gè)或多個(gè)上下文源(109);定位一個(gè)或多個(gè)上下文解釋器(108、401、601、602),用以將所述提供的與所述焦點(diǎn)實(shí)體相關(guān)的上下文數(shù)據(jù)處理成為所述數(shù)據(jù)記錄指定的類型和格式;以及建立動(dòng)態(tài)上下文圖形配置,用以根據(jù)上下文源(109)和上下文解釋器(108、401、601、602)的實(shí)際可用性和適用性將其組合,從而提供所述數(shù)據(jù)記錄。
24.如權(quán)利要求23所述的方法,其特征在于,每個(gè)上下文源(109)和/或每個(gè)上下文解釋器(108、401、601、602)的可用性和適用性不斷地受到監(jiān)視。
25.如權(quán)利要求24所述的方法,其特征在于,如果檢測(cè)到上下文源(109)和/或上下文解釋器(108、401、601、602)出現(xiàn)故障而不再可用和/或不適用于提供或處理上下文數(shù)據(jù),則由所述故障上下文源(109)或上下文解釋器(108、401、601、602)及連接至其輸入連接器的上下文源(109)和/或上下文解釋器(108、401、601、602)構(gòu)成的上下文圖形配置的部分會(huì)失效并被重建。
全文摘要
本發(fā)明提供一種應(yīng)請(qǐng)求向上下文認(rèn)識(shí)裝置提供上下文信息的系統(tǒng),它包括上下文屬性(106),為表示對(duì)上下文信息請(qǐng)求的響應(yīng)的數(shù)據(jù)記錄指定類型、格式和焦點(diǎn)實(shí)體;至少一個(gè)上下文源(109),為上下文信息請(qǐng)求提供相關(guān)的上下文數(shù)據(jù);至少一個(gè)上下文解釋器(108、401、601、602),用于建立上下文屬性(106)與上下文源(109)之間的互連;以及配置裝置(801),用于建立動(dòng)態(tài)上下文圖形配置,以便根據(jù)上下文源和上下文解釋器的實(shí)際可用性和適用性將其組合,從而提供數(shù)據(jù)記錄。
文檔編號(hào)G06F9/46GK1410914SQ0214425
公開日2003年4月16日 申請(qǐng)日期2002年9月28日 優(yōu)先權(quán)日2001年9月28日
發(fā)明者A·哈姆丹 申請(qǐng)人:索尼國(guó)際(歐洲)股份有限公司