專利名稱:體系結構、編程模型和api的制作方法
技術領域:
本發明一般涉及射頻識別(RFID),尤其涉及一種生成創建和/或執行RFID應用程序的框架的系統和/或方法。
背景技術:
許多零售、制造和分配機構正在應用不同的、創新的操作方法,以提高效率。這些機構可以監視監視商店存貨,以便于優化涉及消費者的供給和需求。使利潤最大化的一個方面取決于適當地備有存貨,以便結合貨物和/或產品的耗盡來進行補給。例如,出售計算機和/或VCR的零售商必須根據其消費者銷售額來供應計算機,并根據其消費者銷售額來供應VCR。這樣,如果計算機比VCR的銷路更好(例如,被出售更多單位),那么,該零售商可以更頻繁地供應計算機,以便優化供給和需求,且進而可優化利潤。監視監視存貨和相關聯的銷售額會是一項復雜的任務,其中,產品活動類似黑匣子,因為內部工作是未知的;然而,監視監視產品是存貨/產品效率中的具有決定性的要素。
自動識別與數據捕捉(AIDC)技術,尤其是射頻識別(RFID)至少已基于消除監視監視系統和/或方法(例如,條形碼閱讀器、條形碼和/或UPC)的以上各個不足之處的需要來加以開發。RFID是利用RFID標簽來遠程地存儲和檢索數據的技術。由于RFID系統基于無線電頻率和相關聯的信號,因此,在監視監視產品方面,有眾多好處和/或優點領先于傳統技術。RFID技術不要求瞄準線來監視監視產品和/或從RFID標簽那里接收信號。這樣,不必要進行要求掃描儀很接近目標(例如,產品)的手動掃描。然而,根據無線電頻率、RFID標簽尺寸和相關聯的電源,在RFID中,范圍受到限制。此外,RFID系統允許在幾秒鐘內進行多次讀取,從而提供迅速的掃描和識別。換言之,當這些標簽在RFID閱讀器的范圍內時,RFID系統允許多個標簽被讀取和/或被識別。RFID系統中的多次讀取的能力由于為每個單獨的產品提供包含唯一識別碼的信息標簽的能力而受到稱贊。
而且,RFID系統和/或方法提供與所標記的項目相關聯的實時數據。實時數據流允許零售商、批發商和/或制造商有能力精確地監視監視存貨和/或產品。通過利用RFID,可以進一步便于在前端分配(例如,零售商至消費者)和后端分配(例如,批發商/制造商至零售商)方面供給產品。批發商和/或制造商可以監視監視貨物發貨、質量、數量、發貨時間等。此外,零售商可以跟蹤被接收的存貨數量、這類存貨的位置、質量、貨架期等。這些所描述的好處表明RFID技術跨越多個領域(例如,前端供給、后端供給、分配鏈、制造、零售、自動化等)來發揮作用的靈活性。
RFID系統至少包括RFID標簽和RFID收發器。RFID標簽可以包含天線,該天線為來自RFID收發器的射頻查詢提供接收和/或傳輸。RFID標簽可以是小物體(例如,膠粘標簽、靈活標簽與集成芯片等)。這些RFID標簽通常利用四種不同的頻率低頻標簽(125與134千赫之間)、高頻標簽(13.56兆赫)、UHF標簽(868~956兆赫)和微波標簽(2.45千兆赫)。
一般而言,RFID系統可以包括多個組件標簽、標簽閱讀器(例如,標簽收發器)、標簽編程站、循環閱讀器、分類設備、標簽存貨條形碼讀入器等。而且,各種構造、模型、類型和/或應用可以與相應的組件(例如,標簽、標簽閱讀器、標簽編程站、循環閱讀器、分類設備、標簽存貨條形碼讀入器、……)相關聯,這會使RFID系統內和其他RFID系統內的發現、配置、設置、通信、維護、安全和/或兼容性復雜化。鑒于以上內容,需要提供一種根據制造者和相關聯的規格來發現、配置、設置和與RFID設備通信的統一方法。
發明內容
以下呈現了本發明的簡化概述,以便提供對本發明的一些方面的基本理解。這個概述不是本發明的廣泛縱覽。它既不意在標識本發明的關鍵或緊要的要素,也不意在描繪本發明的范圍。其唯一的目的是以簡化的形式來呈現本發明的一些概念,作為以后更詳細的說明的序言。
本發明涉及便于實現可用來在設計時創建RFID過程并在運行時執行該RFID過程的模型的系統和/或方法。接收器組件可以接收數據,其中,模型組件可以至少部分地根據所被接收的數據來創建模型,該模型便于在設計時創建RFID應用程序并在運行時執行該RFID應用程序。該接收器組件可以獲得諸如(但不局限于)外部輸入(例如,最終用戶輸入、應用程序開發者輸入等)、設備相關數據(例如,天線數據、配置數據、標識、地址、版本、……)、供應者相關數據、標簽數據、設備收集、過濾器策略、報警策略、邏輯源(例如,其中,邏輯源可以包括設備收集、可任選的過濾器和/或報警策略、和/或可任選的事件處理程序)、事件處理程序、事件……等數據。由該模型組件創建的模型可以用來便于創建、部署、執行和/或者維持RFID過程。另外,該模型組件可以利用事件處理管道,其中,管道事件可以利用處理節點。這些管道事件處理節點可以是過濾器(例如,無效標簽、重復標簽、已移除的標簽等)、報警(例如,盜竊檢測、空白標簽等)、以及事件處理程序(例如,內部運動、商業環境等)中的至少一項。隨著事件行進通過管道,它可以用數據來豐富和/或填充。
根據本發明的一個方面,該模型組件可以利用便于創建和執行RFID過程的框架(它可以是(但不局限于)實體(例如,設備、邏輯源、過濾器策略、報警策略、事件處理程序、跟蹤器、寫處理程序、RFID過程對象、存儲等)、框架類、至少一個類的分層框架、接口、異常、組件體系結構、模式、對象模型、應用程序編程接口(API)、……)。邏輯源可以表示來自服務器上將實體集合在一起的物理設備的讀取流,并可以表示在該RFID過程內處理標簽數據。將會理解,該模型組件可以包含以下的設備管理、供應者管理、存儲管理、健康監視、過程設計、過程部署和運行時環境中的至少一項。
根據本發明的另一個方面,該模型組件可以創建和/或執行各種RFID應用程序,例如(但不局限于),制造過程(例如,寫到離開制造的產品上的標簽、等等)、出站過程(例如,明確標記的產品的選擇、明確標記的產品的組合選擇、明確標記的產品的選擇的發貨、接收明確標記的產品、等等)、商業關聯過程、類屬操作、……。
根據本發明的另一個方面,該模型組件可以包括一對象模型組件,它創建對象模型和/或應用程序編程接口(API),以便于利用基于框架的模型。該模型組件可以調用該對象模型,它可以是(但不局限于)RFID過程OM、RFID過程執行OM、服務器管理器OM、發現OM、存儲OM和授權OM。將會認識和理解,該模型組件可以包含以下的設備管理、供應者管理、存儲器管理、健康監視、過程設計、過程部署和運行時環境中的至少一項。所創建的OM可以用來分別促進設計時和運行時期間的RFID過程的創建和/或執行。
根據本發明的另一個方面,一種方法提供框架的例示,以允許在設計時創建RFID過程并在運行時執行該RFID過程。這樣,可以利用該模型來實現RFID過程的例示、創建和執行。此外,本發明使用一種方法來便于按統一方式創建、部署和管理邏輯RFID過程以及物理設備。而且,本申請提供的了包含RFID過程生命周期的方法和/或系統。
以下描述和附圖詳細地陳述本發明的某些說明性方面。但是,這些方面只表現出可以使用本發明的原理的各種方法中的一些;并且,本發明意在包括所有這類方面及其等效技術方案。通過結合這些附圖來考慮本發明的以下詳細描述,本發明的其他優點和新穎特征將變得一目了然。
圖1示出了便于使用模型來創建和/或執行RFID應用程序的示例性系統的框圖。
圖2示出了便于利用模型來實現RFID過程的示例性系統的框圖。
圖3示出了便于利用邏輯源的示例性系統的框圖。
圖4示出了便于開發和創建RFID過程的示例性系統的框圖。
圖5示出了便于利用對象模型來創建RFID應用程序的示例性系統的框圖。
圖6示出了便于使用利用接口、服務API、異常和安全性的模型的示例性系統的框圖。
圖7示出了便于使用模型來創建和利用RFID過程的示例性系統的框圖。
圖8示出了便于在設計時期間利用模型的示例性系統的框圖。
圖9示出了便于在運行時期間利用模型的示例性系統的框圖。
圖10示出了便于基于模型來實現類的分層框架,以創建RFID應用程序的示例性系統的框圖。
圖11示出了便于基于模型來實現類的分層框架,以創建RFID應用程序的示例性系統的框圖。
圖12示出了用于使用模型框架來開發和創建RFID過程的示例性流程圖。
圖13示出了用于創建RFID過程的示例性流程圖。
圖14示出了其中可以使用本發明的這些新穎的方面的示例性聯網環境。
圖15示出了可以根據本發明來加以使用的示例性操作環境。
具體實施例方式
如本申請中所利用的,術語“組件”、“系統”等意在指計算機相關實體,或者是硬件、軟件(例如,在執行中)和/或固件。例如,組件可以是在處理器上運行的進程、處理器、對象、可執行碼、程序和/或計算機。舉例說明來講,在服務器上運行的應用程序和該服務器都可以是組件。一個或多個組件可以駐留在進程內,組件可以被定位在一臺計算機上和/或被分布在兩臺或更多的計算機之間。
參照這些附圖來描述本發明;貫穿附圖,相同的參考標號指相同的元件。在下文中,出于解釋的目的,陳述眾多具體細節,以便提供對本發明的徹底的理解。但是,顯而易見的是,可以在不具備這些具體細節的條件下實踐本發明。在其他實例中,以框圖形式來示出眾所周知的結構和設備,以便于描述本發明。
現在參考這些附圖,圖1示出了便于至少基于可用于構建RFID應用程序的框架來使用模型的系統100。接收器組件102可以接收數據,并將該數據傳達給模型組件104,它可以至少部分地基于該數據來創建模型106。模型106可以用來便于創建RFID應用程序。接收器組件102可以獲得諸如(但不局限于)外部輸入(例如,最終用戶輸入、應用程序開發者輸入等)、設備相關數據(例如,天線數據、配置數據、標識、地址、版本、……)、供應者相關數據、標簽數據、設備收集、過濾器策略、報警策略、邏輯源(例如,其中邏輯源可以包括設備收集、可任選的過濾器和/或報警策略、和/或可任選的事件處理程序)、事件處理程序、事件、……等數據。雖然所描繪的接收器組件102被示作單獨的組件,但是,將會理解,接收器組件102可以被并入模型組件104,并且,這類舉例說明(例如,雖然被并入另一個組件或獨立組件)不應該被視作限制。
模型106可以用來創建提供類屬操作和/或商業特定情景的RFID應用程序。例如,可以至少基于模型106來創建各種RFID應用程序,例如(但不局限于),制造過程(例如,寫到離開制造的產品上的標簽、等等)、出站過程(例如,明確標記的產品的選擇、明確標記的產品的組合選擇、明確標記的產品的選擇的發貨、接收明確標記的產品、等等)、商業關聯過程、……。將會理解,模型組件104可以創建具有涉及所接收的數據的各種特征和/或規格的多個RFID應用程序。另外,模型組件104可以在該OM上面構建這些RFID應用程序(例如,利用該框架所展示的OM),以滿足其功能。
另外,模型組件104可以創建模型106(例如,至少一個框架),它可以用來構建至少一個RFID應用程序。將會理解,該框架可以包括(但不局限于)實體(例如,設備、邏輯源(例如,其中邏輯源可以包括設備收集、任選的過濾器和/或報警策略、和/或可任選的事件處理程序)、過濾器策略、報警策略、事件處理程序、跟蹤器、寫處理程序、RFID過程對象、存儲器等)、框架類、至少一個類的分層框架、接口、異常、組件結構、模式、對象模型、應用程序編程接口(API)、……。例如,接收器組件102可以接收涉及至少一個設備的數據。這個設備可以是RFID閱讀器、RFID書寫器、RFID觸發器、RFID接收器、傳感器、實時事件、RFID信號、……。換言之,設備可以是能夠接收實時事件的任何合適的組件,其中,該設備不需要是RFID相關的實體。接收器組件102可以將數據提供給模型組件104。模型組件102可以至少部分地基于所接收的數據來生成模型106。將會理解,模型106可以用來創建至少一個RFID過程,它可以與至少一個設備結合來提供類屬操作和/或商業特定情景。換言之,模型組件104至少部分地基于設備信息來創建模型106。在另一個例子中,RFID應用程序可以是制造過程應用程序。設備(例如,RFID閱讀器/書寫器)可以寫到貨盤(準備好發貨給消費者)上的標簽。通過利用模型106,例如,一檢測到標簽閱讀事件、外部事件刺激等,RFID應用程序就寫到貨盤上的標簽。將會認識和理解,該框架可以提供處理可表示邏輯過程的邏輯布局的定義,其中,該邏輯過程可以在運行時被綁定到物理設備,以提供邏輯模型和物理模型的清晰分離。換言之,開發者和/或用戶可以寫一次,并在任何地方部署。
另外,模型組件104可以利用事件處理管道,其中,管道事件可以利用處理節點。這些管道事件處理節點可以是過濾器(例如,無效標簽、重復標簽、已移除的標簽等)、報警(例如,盜竊檢測、空白標簽等)和事件處理程序(例如,內部運動、商業上下文等)中的至少一項。隨著事件行進通過管道,它可以用數據來豐富和/或填充。例如,可以由規則引擎(RE)(未示出)來接收來源,其中,RE可以執行過濾器和/或報警策略。然后,RE可以將該來源交給N個數量的組件(例如,EventHandler 1、EventHandler 2、…EventHandler N),其中N是比1大的整數。事件處理管道中的最后一個組件可以提供被填充和/或豐富的輸出。
將會理解,模型組件104可以是利用RFID過程生命周期的模型。首先,創建具有設備收集、事件策略和事件處理程序中的至少一項的邏輯源。接下來,可以實現諸如策略和/或事件處理程序等自定義組件。然后,邏輯源可以被連接起來,以便利用跟蹤器和/或安全選項來創建過程。設備可以被加以配置,閱讀器收集可以在該過程中被綁定到物理設備,然后被加以部署。可以從這個/這些執行過程、被管理的設備和/或過程中檢索該信息。而且,可以利用動態策略變形(morph)來重新配置這些過程(例如,在過程的運行期間)。
圖2示出了便于利用模型來創建和執行RFID應用程序的系統200。可以使用模型組件202,該模型組件202創建便于構建RFID應用程序來提供類屬操作和/或商業專用情景的模型(未示出)。模型組件202可以包括便于構建和執行RFID應用程序/過程的至少一個實體。將會理解,模型組件202可以實質上類似于如圖1中所描繪的模型組件102。而且,接收器組件(未示出)可以接收可協助創建RFID應用程序/過程的數據。雖然未描繪,但是,接收器組件可以是(但不局限于),模型組件202內的并入組件、獨立單元和/或其組合。
模型組件202可以包括設備組件204。設備組件204可以是(但不局限于)RFID閱讀器、RFID書寫器、RFID發送器、RFID接收器、RFID打印機、發送應答器、收發器……。將會理解,多個設備組件204可以被并入模型組件202中,但為簡潔起見,只示出了一個設備組件。設備組件204可以經由無線電波來與標簽進行通信,和/或將數字形式的信息傳遞到主機。另外,設備組件204可以編寫和/或編程至少一個標簽(例如,如果標簽與這類功能兼容)。設備組件204可以被發現和/或被配置,以便聯合RFID應用程序/過程來執行功能。此外,通過設置設備標識、以參考命名、讀觸發和/或其他執行專用參數、寫觸發和/或其他執行專用參數、……中的一項,來配置設備組件204。
根據本發明的一個方面,設備組件204可以是從該主機那里獲得命令以便在標簽上執行的RFID打印機。對比而言,典型的技術從標簽那里獲得信息,并將該信息傳遞到主機。例如,打印機可以獲得標簽標識以及條形碼,并將它打印在該標簽上。
而且,設備組件204的選擇可以至少根據物理位置而彼此相關聯。彼此相關聯的設備組件204的選擇可以形成邏輯設備集合,和/或可以被指定為邏輯書寫器。將會理解,可以在一個或多個設備組件204上定義公共操作(例如,讀觸發、寫觸發、發送觸發等)。例如,設備組件可以是對接門(dock door)A、對接門B和對接門C處的RFID閱讀器。RFID閱讀器(例如,設備組件204)可以關聯起來,作為設備集合,它可以由“發貨設備集合”來引用。
模型組件202還可以包括邏輯源組件206,它結合設備集合(例如,該設備集合包含一個或多個設備組件204)、過濾器、報警、事件處理程序(以下所討論的)和附加邏輯源中的至少一項。邏輯源組件206可以表示標簽數據和/或在被傳遞到匯點(sink)(以下所定義的)之前該標簽數據如何在RFID過程中加以處理。將會理解,邏輯源組件206的基本形式是設備集合,其中,來自該設備集合的所有讀/寫都被直接發送到匯點。
邏輯源組件206可以利用以下至少一項來利用執行語義集用于產生標簽讀事件和/或平臺事件的設備集合和/或邏輯源;可以消耗標簽讀/寫事件和/或過濾出不需要的讀/寫的可任選過濾器;可以消耗標簽讀/寫事件和/或事件以便評估報警并執行一個或多個動作的可任選報警;可以消耗標簽讀/寫事件并處理實質上類似的標簽讀事件的可任選事件處理程序。將會理解,過濾器、報警和事件處理程序按由來自RFID過程的輸入(例如,經由用戶、應用程序開發者等)所指定的順序來執行。例如,用戶可以指定邏輯源組件206內的組件的以下順序和/或定義,其中,“→”表示“由……來定義”改變政策1(alertpolicy1)→如果在X與Y之間讀取標簽,則將消息(例如,短消息服務(SMS))發送給管理員,其中X與日期和/或時間相關聯,Y與除X以外的后續日期和/或時間相關聯;過濾政策1(filterpolicy1)→利用重復消除技術來除去重復標簽讀取;事件處理程序(eventhandler1)→如果物品滿足條件(例如,灰色的外套),那么,經由寫到該標簽來使豐富該數據;過濾政策2(filterpolicy2)→忽視價格小于$500的外套(例如,這個過濾基于由事件處理程序1增加的數據);改變政策2(alertpolicy2)→檢驗新外套存貨并警告管理員存貨級別(例如,高或低存貨);等等。在前一個例子之后,按由輸入和/或用戶指定的順序來執行報警、過濾和事件處理程序。將會理解,事件處理程序中的最后一個組件的輸出被定義為邏輯源組件206的輸出。
簡要地參考圖3,示出了可以用來創建用于構建RFID應用程序的模型的邏輯源302。具體地,邏輯源302是標簽讀取和/或寫入流。讀取流可以被處理,并導致不同的讀取流。將會理解,邏輯源302可以遞歸地嵌入至少一個其他邏輯源。一組事件和/或標簽讀304可以被發送到規則引擎306,其中可以執行可任選的過濾和/或報警。該組事件和/或標簽讀取304可以是N個邏輯源(其中的N大于或等于一)和/或M個設備集合(其中的M大于或等于一)。在規則引擎306之后,該組事件和/或標簽讀取304可以被傳遞到組件308。可以有N個數量的組件308,其中N大于或等于一。此外,組件308可以是事件處理程序。
回頭參考圖2,模型組件202可以包括策略組件208,策略組件208可以提供可任選的過濾器策略和/或可任選的報警策略。過濾器通常是邏輯構造,它在傳入的原始數據流上執行,并可以經由一組可被組合成策略的邏輯規則(例如,關于傳入標簽讀事件)而在邏輯源組件206上指定。過濾器策略允許有效標簽清單通過,其中,該策略中的規則是不被違反的約束。如果被違反,那么,從該標簽清單中除去違反過該約束的標簽(例如,被稱作“欺詐標簽”)。該結果是已被允許通過該過濾器策略的有效標簽的列表。例如,貨盤/箱子/物品可以是允許某種類型的標簽被設備讀取和/或者除去不需要處理的某些類型的標簽讀取的過濾器。
報警是用于表達用來評估數據流的規則的另一個機制。報警可以被表達為一組組合成策略的邏輯規則,它們對照可以包括該標簽讀/寫事件的多個事件來評估。與這些規則相關聯的動作可以是一個或多個用戶定義/報警。例如,可以建立報警,以便如果邏輯源組件206在下午6點鐘與上午6點鐘之間注冊標簽讀取,那么激活該報警,并可以警告以下之一監督者、安全代理等。而且,報警可以是以下的至少一項可聽信號、文本消息、建筑物上的鎖、電子郵件、燈、視頻、運動、……。將會理解,模型組件202所創建的模型允許用戶經由即插即用技術來將過濾器和/或報警實現到系統中。例如,系統可以利用能夠評估規則/條件和/或根據該評估來對事件采取行動的規則引擎(RE)。
事件處理程序組件210另外還可以被包括在模型組件202內,以管理來自邏輯源組件206的事件。事件處理程序組件210可以用于以下的至少一項在標簽讀事件上實時地應用邏輯,和/或按特定方式來豐富事件;由較高等級的應用程序來消耗事件;當檢測到空白標簽讀事件時寫回標簽;等等。事件處理程序組件210可以指定發生異常(例如(但不局限于),讀錯誤和寫錯誤)時的動作。將要理解,在執行(例如,管理過程專用事件)期間,這些異常可以來自邏輯源組件206。
根據本發明的一個方面,模型組件202所創建的模型允許定義和使用事件處理程序組件210的自定義實現。例如,如果規則引擎(RE)不允許過濾器和/或報警的實現,那么,事件處理程序組件210可以提供這類功能。而且,事件處理程序組件210可以被實現為實質上可以類似于過濾器和/或報警來利用的“捕捉所有(catch-all)”組件。仍然參考圖2,模型組件202可以包括寫處理程序組件212,它允許RFID過程至少根據外部輸入和/或來自邏輯源組件206的事件來將命令發送到設備組件204,其中,事件是標簽讀事件、標簽寫事件和閱讀器健康事件。事件處理程序也可以用來生成具有商業上下文的事件(例如,基于傳入事件流以及外部數據源的自定義邏輯/評估的內部運動、發貨事件)。
模型組件202可以包括RFID過程組件214,它是為模型提供有意義的執行單元的超級(unber)和/或高級對象。例如,RFID過程組件214可以是發貨過程,該發貨過程表示各種對接門處的多個設備,它們一起運作,以執行標簽讀取、過濾、讀豐富、報警評估、以及匯點中的數據存儲,以供主機應用程序檢索/處理。在另一個例子中,RFID過程組件214可以執行制造過程,其中,設備被配置成根據位置來讀、寫。而且,可以在該位置處實現額外的功能,例如,過濾、豐富等。在另一個例子中,RFID過程組件214可以寫到標簽過程,其中,寫處理程序組件212至少根據輸入來實時地寫到標簽。寫過程也可以通過讀取數據并將其傳回到主機檢驗寫入是否獲得成功。
模型組件202可以包括存儲并檢索框架實體(例如,設備、設備配置、RFID過程、從RFID過程中的邏輯實體到物理設備的映射)的數據存儲器216。將會理解,數據存儲216對于用戶而言可以是可插的。另外,數據存儲器216可以是(例如)易失性存儲器或非易失性存儲器,或者可以包括易失性和非易失性存儲器。舉例說明來講(不作限制),非易失性存儲器可以包括只讀存儲器(ROM)、可編程ROM(PROM)、電可編程ROM(EPROM)、電可擦除可編程ROM(EEPROM)、或閃存。易失性存儲器可以包括隨機存取存儲器(RAM),它擔當外部高速緩沖存儲器。舉例說明來講(不作限制),RAM可以通過許多形式可用,例如,靜態RAM(SRAM)、動態RAM(DRAM)、同步DRAM(SDRAM)、雙數據速率SDRAM(DDR SDRAM)、增強型SDRAM(ESDRAM)、同步鏈路DRAM(SLDRAM)、存儲器總線直接RAM(RDRAM)、直接存儲器總線動態RAM(DRDRAM)、以及存儲器總線動態RAM(RDRAM)。本系統和方法的數據存儲器216意在包括(而不局限于)這些和任何其他合適類型的存儲器。此外,將會理解,數據存儲216可以是服務器和/或數據庫。具體地,數據存儲216可以是為客戶機計算機提供對數據庫文件的高效率訪問的計算機。
圖4示出了便于RFID過程的創建和執行的系統400。可以使用模型組件402,它開發編程模型(未示出),從而允許RFID過程的創建和/或執行。將會理解,編程模型可以是基于事件的編程模型。例如,基于事件的編程模型可以創建至少一個邏輯RFID過程,它可以具有事件處理管道的聲明性規范的核心(以上所討論的)。基于事件的編程模型可以利用設計時支持,用于與邏輯設備交互。而且,編程模型可以經由規則(例如(但不局限于),過濾器規則、報警規則、變換規則、……)來支持商業邏輯。此外,基于事件的編程模型可以提供過程終點的聲明性規范和/或用于與物理設備綁定和交互的部署時支持。模型組件402實質上可以類似于圖2中的模型組件202和圖1中的104,其中,可以在整個模型組件402中實現先前組件的以前所描述的功能。將會理解,模型組件402可以被用來創建編程模型,以便于構建與類屬操作和/或商業專用情景相關聯的RFID應用程序/過程。
模型組件402可以包括設置組件404,它設置和/或配置RFID過程,和/或RFID過程定義被加以設置和/或配置。設置組件404啟動設備,設備可以是(但不局限于)RFID設備、RFID閱讀器、RFID書寫器、……。設置組件404通過發現至少一個設備來設置設備。將會理解,這類發現可以是(但不局限于)自動發現、手動發現(例如,利用配置文件)、其組合、……。另外,利用設置組件404的設備發現可以獨立于RFID過程開發。根據本發明的一個方面,設置組件404可以對設備配置自定義屬性。換言之,如果默認屬性與該設備相關聯,那么,直到該設備被映射到設備集合,才應用這一屬性。
設置組件404可以在RFID過程的上下文中創建邏輯設備集合和/或邏輯書寫器。設備集合可以被組合成邏輯源,它可以具有可任選的構造,例如(但不局限于),過濾器、報警、事件處理程序、……。將會理解,可以對邏輯源指定和/或配置這些可任選構造。然后,通過將設備和頂層邏輯源與這類設備相關聯,設置組件404可創建RFID過程。此外,可以指定用于該過程的跟蹤級別和/或執行跟蹤選項/日志級別。
模型組件402也可以包括部署和/或維護至少一個RFID過程的部署/執行組件406。將會理解,部署可以包括讀標簽數據和/或寫標簽數據。通過利用過程中的邏輯實體到網絡中的物理實體的用戶定義的映射,部署/執行組件406部署該RFID過程。邏輯實體可以是(但不局限于)設備集合、邏輯書寫器、書寫器集合、閱讀器集合、……。網絡中的物理實體可以是(但不局限于)設備、閱讀器、書寫器、RFID設備、打印機、……。
根據本發明的一個方面,映射可以是RFID過程內的邏輯設備集合到物理閱讀器設備的映射。例如,映射可以是以下的一項特定閱讀器網際協議(IP)(例如,168.192.38.21、168.192.38.22、168.192.38.23);通配符集合(例如,168.192.38.*),其中*是指定任何合適的匹配字符的通配符;特定ID和通配符的組合(例如,168.192.38.21、168.38.22、168.192.39.*)。將會理解,通配符集合的實現在物理設備的擴展中會更加通用。例如,通過利用通配符,用戶可以分配通配符集合范圍內的IP地址,其中,該映射地址與該現有RFID過程兼容。如果使用特定IP地址,那么,這種新分配的IP將需要被并入該映射。
根據本發明的另一個方面,映射可以是RFID過程內的邏輯書寫器到物理書寫器設備的映射。將會理解,單個邏輯書寫器可以映射到單個物理書寫器。一與邏輯實體(例如,設備集合和/或邏輯書寫器)匹配,就配置不具備自定義屬性的設備。對于具有自定義屬性的設備,應用默認的概況,隨后應用自定義概況。
部署/執行組件406還可以執行RFID過程。RFID過程可以包括被配置成讀取的閱讀器(例如,數據搜集和評估/豐富;數據存儲、以及事件處理)和書寫器(例如,寫入標簽信息和驗證)。部署/執行組件406對RFID過程的執行需要處理來自設備集合(例如,屬于該設備集合的設備)的信息。例如,處理可以是,通過邏輯源中的各種和/或可任選組件(例如,過濾器、報警、事件處理程序、……)來傳遞事件(例如,實際的RFID標簽、或閱讀器向上/向下事件、……)。將會理解,事件處理程序可以經由對外部來源的查找來豐富和/或變換具有額外字段/自定義字段的傳入數據,并且生成額外的實時事件。事件處理程序也可以被配置成當檢測到標簽時寫入標簽信息。而且,所處理的事件被存儲到一匯點中。將會理解,RFID過程的執行會需要向書寫器組件(未示出)發送獨立于標簽讀事件將一些數據寫到標簽的命令。通過分離RFID過程的創建和部署,模型組件402可以創建允許用戶/企業按模塊化的、靈活的方式來構建和部署RFID過程的編程模型。
另外,維護組件408提供至少一個RFID過程的管理。RFID過程管理可以集中于在這類過程的使用壽命期間的在RFID過程執行(以上所討論的)中所定義的過程。可以利用過程管理器(未示出)來開始和停止RFID過程。在一個例子中,RFID過程的使用壽命可以與操作系統服務的開始和/或停止有關。如果RFID過程正在運行,那么,在服務器正運行的同時,它可以被停止、更改和重新開始。
圖5示出了便于利用對象模型來創建RFID應用程序的系統500。模型組件502可以用來通過利用對象模型和/或應用程序編程接口(API)創建和/或執行RFID應用程序。將會理解,模型組件502實質上可以分別類似于圖4、2和1中的模型組件402、202和104。另外,模型組件502可以創建與RFID過程有關的對象模型和/或API,以提供類屬操作和/或商業專用情景。
模型組件502可以包括允許用戶、最終用戶和/或工具創建和/或存儲RFID過程的RFID過程對象模型(OM)組件504。RFID過程可以包括(但不局限于)以下內容至少一個邏輯源(例如,邏輯源是設備的邏輯合成和/或組合);可以用來在執行期間進行跟蹤的;用于與具有寫能力的設備交互(例如,將自定義寫和/或自定義命令發送到設備)的寫處理程序;等等。
模型組件502可以包括獲得設備(不管設備類型如何)的元數據的發現OM組件506。而且,發現OM組件506可以獲得以屬性元數據形式的供應者。將會理解,發現OM組件506可以允許用戶驗證該設備是否有效(例如,可用于連通性、響應于輪詢、通訊聯絡的、等等)。一般而言,發現OM組件506利用設備處理程序web服務接口。設備處理程序可以允許用戶接收特定設備所支持的屬性,其中,這些屬性是可以在設備屬性概況中的有效屬性。也將會理解,設備處理程序可以檢驗給定設備是否有效。
RFID過程執行組件508可以允許最終用戶和/或工具部署RFID過程。RFID過程執行OM組件508可以具有諸如(但不局限于)過程管理器的web服務接口。過程管理器可以管理和/或控制多個RFID過程,其中,管理與每個RFID過程相關聯的過程引擎。這些RFID過程的管理可以包括(但不局限于)RFID過程的開始和/或停止。另外,RFID過程的執行順序和/或序列可以由RFID過程執行OM組件508來確定。
模型組件502還可以包括為用戶提供一組統一的API,以存儲、檢索和刪除RFID框架實體(例如,RFID過程、設備、……)的存儲OM組件510。該組統一的API可以允許最終用戶工具按統一和/或一致的方式來訪問、存儲和/或修改持久存儲中的RFID框架實體(例如,RFID過程、書寫器、閱讀器、打印機、……)。將會理解,這些API通過存儲web服務接口來展示。根據本發明的一個方面,服務器可以由可包含該RFID過程的存儲OM組件510以及RFID數據庫內的適當表格中的設備來實現。
模型組件502可以包括能夠操作RFID服務器的服務器管理器OM組件512。服務器管理器OM組件512可以允許外部應用程序配置和/或操作(例如,扭轉(tweak))RFID服務器的行為。換言之,服務器管理器OM組件512允許設置RFID服務器的屬性。將要理解,服務器管理器組件OM 512可以管理至少一個設備服務供應者,其中,設備服務供應者實質上可以類似于用于RFID設備的驅動程序。設備服務供應者可以為設備提供統一接口,以便RFID服務器可以與設備服務供應者(而不是特定設備)交互。服務器管理器OM組件512可以包括諸如(但不局限于)服務器管理器和供應者管理器的各種web服務接口。
授權OM組件514可以由模型組件502用來授權對RFID過程和/或設備實體中的至少一項的可訪問性。對RFID過程和/或設備實體的訪問可以至少基于與該特定RFID過程相關聯的授權組的列表。授權組可以包括授權組的用戶定義名稱、指定讀執行/修改刪除/兩者的訪問級別的標志、以及用戶/組列表。一般而言,授權組可以是命名對象,當與RFID過程和設備人工制品(artifact)相關聯時,該命名對象為這些用戶指定RFID商店用戶列表和對人工制品的訪問級別。授權組通常可以根據用戶在組織中的角色(和/或對于各種人工制品的相關聯的觀點),例如(但不局限于),倉庫經理、倉庫雇員、DC經理、商店雇員等來配置。
例如,如果當在存儲中創建RFID過程或設備的實例時啟用授權,那么,只有創建過它的用戶具有對該人工制品的讀執行和修改刪除訪問。授權OM組件514可以提供API,以便將授權組列表與可以覆蓋該人工制品上的默認許可的RFID過程或設備相關聯。將會理解,獨立于人工制品上的授權設置,所有者和/或管理用戶可以具有對該人工制品的無限制訪問。另外,授權組可以在存儲級處與RFID過程相關聯(例如,除用于支持在存儲級處保存授權組的方法以外,也可以有相關聯的API,以便將這類組與該RFID過程相關聯)。
圖6示出了便于使用可用來創建和/或執行RFID過程的模型的系統600。模型組件602可以用來創建該模型(未示出),其中,用戶和/或最終用戶可以根據這種模型在類屬操作和/或商業特定情景中創建RFID過程。將會認識和/或理解,模型組件602可以實質上類似于圖5中的模型組件502、圖4中的402、圖2中的202和圖1中的104。
模型組件602可以包括可以處理來自邏輯源的事件和/或根據邏輯源將命令發送到設備的事件/寫處理程序接口組件604。具體地,事件/寫處理程序接口組件604可以利用至少一個接口來處理來自邏輯源的事件,和/或根據邏輯源來發送命令。例如,通過利用以下代碼,可以用稱為“ParameterMetaData”和“ParameterData”的結構來例示由“IEventHandler”引用的接口public struct ParameterMetaData{private string name;private System.Type type;
private IComparable lowerRange;private IComparable higherRange;}public struct ParameterData{private string name;private object data;}public interface IEventHandler{ParameterMetaData[]GetParmameterMetaData();void Init(ParameterData[]data,IContainer container);GenericEvent[]HandleGenericEvent(GenericEvent genericEvent);GenericEvent[]HandleTagReadEvent(TagReadEvent tagReadEvent);GenericEvent[]HandleTagListReadEvent(TagListReadEvent tagListReadEvent);GenericEvent[]HandleReaderUpEvent(ReaderUpEvent readerUpEvent);GenericEvent[]HandleReaderDownEvent(ReaderDownEvent readerDownEvent);}將會理解,“ParameterMetaData”和“ParameterData”可以是構造函數,其中,“ParameterData”包含只讀屬性。構造函數“ParameterData”也可以對照“ParameterMetaData”內的元數據來確認數據。參考“IEventHandler”,叔祖順序將實質上等同于由函數“GetParameterMetaData()”所返回的順序。也將會理解,“IEventHandler”可以是作用于來自設備集合的標簽讀取和/或事件的接口。
具體地,以上代碼將“tagReadEvent”用作輸入參數。可以修改標簽列表中的標簽數量,以確保由下一個組件處理更少和/或更多的標簽。而且,“GenericEvent[]”叔祖(例如,表示內部運動的事件)由至少一個后續組件來處理。根據事件的導出類型,它被傳遞到下一個組件中的適當函數。例如,如果“GenericEvent”是“TagReadEvent”,那么,它可以被傳遞到下一個組件中的“HandleTagReadEvent()”函數。
可以利用由“EventBase”引用的類,以便包含用于訪問事件專用數據的技術。例如,可以連同利用以下代碼,以定義“IEventHandler”接口的例示內的參數和/或引用,來訪問事件專用數據public class EventBase{
private EventContext context;private object data;//event enhancements go here}public class GenerieEventEventBase{}public class TagReadEventEventBase{private Tag tag;}public class TagListReadEventEventBase{private TagList tagList;}public class PlatformManagementEvent{}public class ReaderUpEventPlatformManagementEvent{private string readerName;}public class ReaderDownEventPlatformManagementEvent{private string readerName;}另外,事件/寫處理程序接口組件可以利用以下代碼來實現寫處理程序接口public interface IWriteHandler{ParameterMetaData[]GetParmameterMetaData();void Init(ParameterData[]data,IContainer container);}模型組件602可以包括606提供用于應用程序組件的異常和/或超時中的至少一項的異常組件606。例如,通過調用該特定組件上的“IDisposable”接口內的“Dispose()”方法,可以處理這些異常和/或超時。將會理解,實現以上所討論的這些接口的組件所定義的異常應該得自“RfidException”。例如,可以利用以下代碼,以便提供與RFID過程相關聯的異常和/或超時public class RfidExceptionApplicationException{public RfidException(string desc)base(desc){}
public RfidException(Exception e)base(″Rfid Exception″,e){}}public class InitFailedExceptionRfidException{...}可以理解,以上異常和/或超時可以對以上所討論的一個以上的接口是公共的。此外,這些異常和/或超時可以由支持以下至少一項的組件來拋出過濾器(例如,IFilter)、報警(例如,IAlert)、動作(例如,IAction)、諸如“ITagDataSource”的標簽數據源(例如,當調用初始方法時)、……另外,模型組件602可以包括提供安全模型的安全組件608。安全組件608可以提供可以連同操作系統服務來執行的用戶帳戶。該用戶帳戶可以利用特權,以便訪問至少一個資源,其中,資源可以是(但不局限于)注冊表、文件系統、存儲、匯點數據庫等。在一個例子中,與安全組件608相關聯的特權不允許外部組件(例如,事件處理程序、寫處理程序、規則引擎(RE)、……)繼承與該用戶帳戶相關聯的特權。在這個例子中,可以對該外部組件提供最小的特權,來執行代碼。例如,將不會給出以下許可執行非受管代碼的許可;對文件系統和/或注冊表的訪問;對設備的直接訪問;等等。將會認識和理解,如果該外部組件要求特殊的特權來訪問資源,那么,可以在個別的基礎上獲得這些特權。例如,用戶的用戶名和/或密碼可以與允許訪問這類資源的特權相關聯。
仍然參考圖6,模型組件602可以提供服務API組件610,以實現用于被展示為web服務的RFID框架中的至少一個API的類定義。服務API組件610可以使用(但不局限于)存儲(例如,存儲設備對象、設備對象列表、設備屬性、綁定信息、設備名稱、……)、設備處理程序(例如,檢查設備信息是否表示有效設備)、過程管理器(例如,過程和/或有關的過程的開始和/或停止)、服務器管理器(例如,管理RFID服務器和/或設置閱讀器屬性)、供應者管理器(例如,識別所裝載的供應者;提供所支持的元數據、默認屬性概況、默認概況的覆蓋、具有最新設置的屬性概況、……中的一項)、組件管理器(例如,返回所公布和/或部署的策略名稱列表、寫處理程序匯編列表中的至少一項;注冊事件處理程序匯編、寫處理程序匯編、……中的至少一項)、等等。
圖7示出了便于使用可以在設計時和/或運行時期間用來創建和/或執行RFID過程/應用程序的模型的系統700。設備服務供應者接口(DSPI)704可以提供到和/或來自物理/技術體系結構702的統一通信。物理/技術體系結構702可以是利用RFID和/或標簽的至少一個物理設備的配置。DSPI 704可以經由設備-主機協議來接收數據和/或將數據傳送到物理/技術體系結構702。將會理解,DSPI 704可以利用(但不局限于)有線和/或無線網絡(例如,局域網(LAN)和廣域網(WAN))。LAN技術包括光纖分布式數據接口(FDDI)、銅分布式數據接口(CDDI)、以太網、令牌環等。WAN技術包括(但不局限于)點對點鏈路、電路交換網絡(比如綜合業務數字網(ISDN)及其變體)、分組交換網絡、以及數字訂戶線(DSL)。
模型設計時組件706可以與DSPI 704交互,以創建和/或存儲連同物理/技術體系結構702來加以利用的RFID過程。模型設計時組件706可以創建可以用來構建RFID過程/應用程序的編程模型和/或框架。將會理解,設計時組件706可以創建和/或存儲至少一個RFID過程,其中,RFID過程被存儲在存儲OM組件708中。存儲OM組件708可以進一步用來發送這一RFID過程,它由模型運行時組件710來實現。模型運行時組件710可以執行由模型設計時組件706創建的RFID過程。而且,可以在整個的該設計時和/或運行時期間利用實質上類似的編程模型和/或框架,以便創建和執行將要與物理/技術體系結構702相關聯的特定RFID過程。如所描繪的,模型運行時組件710可以利用DSPI 704來傳達和/或接收數據,從而允許RFID過程在物理/技術體系結構702內的至少一個物理設備上的執行。
圖8示出了便于在設計時期間利用模型的系統800。模型設計時組件802可以利用這里所描述的體系結構來創建該模型。系統800描繪用于將要被創建和/或存儲的RFID過程的框架的組件體系結構,其中,至少一個組件是以下的至少一項由該框架來實現、由該框架來提供、和/或被插入該框架。具體地,以下內容(以上已加以討論)邏輯源組件804、事件處理程序806、策略808、匯點組件810、設備812和設備處理程序814,可以用于該框架的實現。RFID過程定義OM組件816、設備OM組件818和存儲OM組件820(以上都加以討論)可以由該框架來提供。然而,RFID過程創作組件822可以是插入該框架的插件組件。
圖9示出了便于在運行時期間利用模型的系統900。模型運行時組件902可以利用這里所描述的體系結構來創建該模型。系統900示出了用于將要被檢索和/或被執行的RFID過程的組件體系結構框架,其中,至少一個組件是以下的至少一項由該框架來實現、由該框架來提供、和/或被插入該框架。具體地,以下內容(以上都已被討論)匯點904、事件906、裝載器908、RFID引擎高速緩存910和授權組件912,可以用于該框架的實現。RFID過程創作組件914、過程管理器組件916和存儲OM組件918(以上都加以討論)可以由該框架來提供。然而,商業應用組件920可以是插入該框架的插件組件。
圖10和圖11示出了RFID框架類的類關系和/或分層表示。圖10和圖11中的RFID框架類的類關系和/或分層表示可以包括(但不局限于)如以下表格中可見的類關系
圖12-13示出了根據本發明的方法。為解釋簡單起見,這些方法被描繪和描述為一系列動作。將會理解和認識,本發明不被所示出的動作和/或動作順序限制,例如,動作可以按各種順序和/或與這里沒有呈現和描述的其他動作同時發生。另外,并不是所有被示出的動作都是實現根據本發明的方法所必須的。此外,本領域的技術人員將會理解和認識,作為選擇,這些方法可以經由狀態圖或事件而被表示為一系列互相聯系的狀態。
圖12示出了便于利用框架來提供創建和/或執行RFID過程的編程模型的方法1200。可以在設計時期間利用該編程模型,從中可以創建和存儲RFID過程。當將要執行RFID過程時,該RFID過程可以從存儲器(例如,磁盤)那里被上傳,和/或在創建時直接實現。這樣,分別在設計時和運行時期間利用該編程模型來創建和執行RFID過程。
在參考標號1202處,至少利用所接收的數據來例示模型框架。所接收的數據可以是(但不局限于)外部輸入(例如,最終用戶輸入、應用程序開發者輸入等)、設備相關數據(例如,天線數據、配置數據、標識、地址、版本、……)、供應者相關數據、標簽數據、設備集合、過濾器策略、報警策略、邏輯源、事件處理程序、事件、……。此外,將會理解,該框架可以包括(但不局限于)實體(例如,設備、邏輯源、過濾器策略、報警策略、事件處理程序、跟蹤器、寫處理程序、RFID過程對象、存儲等)、框架類、至少一個類的分層框架、接口、異常、組件結構、模式、對象模型、應用程序編程接口(API)、……。根據本發明的一個方面,該模型框架可以包括提供以下至少一項的組件結構由該框架實現的組件;由該框架提供的組件;以及被插入該框架的組件(例如,被展示為接口并可以按需要來實現以便適合應用專用情景的組件)。將會認識和理解,該模型框架不局限于以上所描述的組件體系結構。
在參考標號1204處,生成RFID過程。該RFID過程開發涉及設備設置和/或配置,其中,設備可以由自動、手動和/或其組合的過程來發現。此外,在該RFID過程的上下文中創建邏輯設備集合(例如,邏輯閱讀器集合、邏輯書寫器收集、邏輯書寫器、……)。例如,可以在設計時期間對該邏輯設備集合進行用戶定義。接下來,在RFID過程的開發中,設備集合(例如,閱讀器集合、書寫器收集、打印機集合、……)被組合成邏輯源,它具有額外的可任選構造,例如(但不局限于),過濾器、報警、事件處理程序。然后,通過將設備和頂層邏輯源與該RFID過程相關聯,來創建該RFID過程。根據本發明的一個方面,可以指定跟蹤級別,和/或可以為該RFID過程來執行跟蹤選項/日志級別。
在參考標號1206處,部署和維護該RFID過程。通過利用該RFID過程中的邏輯實體到物理實體的映射,來部署該RFID過程。將會理解,邏輯實體可以是(但不局限于)設備集合、閱讀器集合、邏輯書寫器、……。而且,將會理解,物理實體可以是(但不局限于)設備、閱讀器、書寫器、打印機、……。邏輯實體到物理實體的映射可以包括以下的一項RFID過程內的邏輯設備集合映射到物理設備、;RFID過程內的邏輯閱讀器集合映射到物理閱讀器設備;RFID過程內的邏輯書寫器映射到物理記錄器設備;等等。另外,通過在整個使用壽命期間管理這些過程,來為該RFID過程提供維護。可以使用管理器來開始和/或停止RFID過程。將會理解,如果RFID過程正在運行,那么,在服務器正運行的同時,它可以被停止、更改和重新開始。
在參考標號1208處,通過利用該模型框架來執行RFID過程。這樣,在RFID過程的設計時創建以及RFID過程的運行時執行的期間,利用該模型框架。RFID過程的執行需要處理來自設備集合內的物理設備的信息。處理可以是通過邏輯源中的組件來傳遞事件。將會理解,事件處理程序可以用附加字段/自定義字段來豐富和/或變換傳入數據,以生成額外的實時事件。而且,當檢測到標簽時,事件處理程序可以寫入標簽信息。
將會理解,本發明可以提供RFID過程生命周期。首先,創建具有設備集合、事件策略和事件處理程序中的至少一項的邏輯源。接下來,可以實現諸如策略和/或事件處理程序的自定義組件。然后,邏輯源可以被連接起來,以創建具有跟蹤器和/或安全選項的過程。設備可以被配置,閱讀器集合可以在過程中與物理設備綁定,然后加以部署。可以從這個/這些執行過程、所管理的設備和/或過程中來檢索信息。而且,可以利用動態策略變形來重新配置這些過程(例如,在過程的運行期間)。
圖13示出了便于利用并入至少一個框架概念的模型框架來創建RFID過程的方法1300。在參考數字1302處,從服務器那里獲得有關的設備。該有關的設備可以是(但不局限于)具有自定義屬性概況的設備。根據本發明的一個方面,可以通過自動發現來獲得和/或發現設備。例如,設備可以傳送表示它可用的信號。這樣,服務器可以接收該信號,并可以被通知該設備可用。根據本發明的另一個方面,發現可以是手動配置。例如,配置文件可以用來裝載設備配置,并在RFID過程定義中利用該設備。作為選擇,可以利用存儲機制來將設備個別地載入服務器存儲(例如,假設在運行時間,存在反映出設備配置的設備的物理部署)。不管是使用自動發現還是手動配置,一旦被發現,RFID應用程序就可以接收它感興趣的設備信息。在1304處,配置各自的手動發現的設備(將要為其設置定制的屬性概況)。這種配置可以包括(但不局限于)閱讀器身份(例如,名稱/ID、位置)、讀/寫設置、數據獲取參數、基本讀過濾器位模式、平滑/事件生成參數、和/或自定義屬性。將會理解,這些操作可以通過用編程方式利用如以上所討論的設備OM組件來實現。接下來,在參考標號1306處,從設備映射出數據集合。這樣,來自設備的數據集合被映射出,并通過(例如)邏輯設備集合、邏輯閱讀器集合、邏輯書寫器集合、……來加以處理。一旦處理了數據集合的映射,就在邏輯源中表示它。接下來,在參考標號1308處,使用可任選的配置和/或關聯。過濾器可以經由過濾器策略而被可任選地配置并與邏輯源相關聯。此外,報警可以經由報警策略而被配置并關聯。至少一個可用的事件處理程序可以被配置并與邏輯源相關聯。
在參考標號1310處,創建和/或存儲RFID過程。通過集合邏輯源和設備來表示單個實體,可以創建該RFID過程。將會認識和理解,可用跟蹤器可以被用來指定用于該RFID過程的跟蹤選項。一旦被創建,該RFID過程就可以被存儲和/或被保存到存儲器。而且,將會理解,通過利用以上所討論的RFID過程定義OM組件,可以實現參考標號1306、1308、1310。接下來,參考標號1312執行和/或部署該RFID過程。執行和/或部署可以包括根據模型框架來創建的一個或多個RFID過程。另外,執行和/或部署需要設置從RFID過程中的邏輯實體到物理設備的映射。在1314處,可以測試和/或監視該RFID過程的執行。例如,測試可以提供模擬的數據輸入,并觀察輸出執行流。在另一個實例中,可以監視執行結果,例如(但不局限于),RFID過程執行蹤跡、錯誤、異常、設備健康事件、……。
為了提供用于實現本發明的各個方面的附加環境,圖14-15和下文意在簡要、概括地描述可以在其中實現本發明的各個方面的合適的計算環境。盡管上文已在運行于本地計算機和/或遠程計算機上的計算機程序的計算機可執行指令的一般上下文中描述本發明,但本領域的技術人員將會認識到,也可以結合其他程序模塊來實現本發明。通常,程序模塊包括執行特定任務和/或實現特定抽象數據類型的例程、程序、組件、數據結構等。
而且,本領域的技術人員將會理解,本發明的方法可以利用其他計算機系統配置,來實現,包括單處理器或多處理器計算機系統、小型計算機、大型計算機、以及個人計算機、手持計算設備、基于微處理器的和/或可編程的消費電子設備等,其每一個都可以操作上與一個或多個相關聯的設備進行通信。所示出的本發明的各方面也可以在分布式計算環境中實踐;在分布式計算環境中,某些任務由通過通信網絡而被連接的遠程處理設備來執行。但是,本發明的某些(如果不是全部)方面可以在獨立計算機上實踐。在分布式計算環境中,程序模塊可以位于本地和/或遠程記憶存儲設備中。
圖14是可以與本發明交互的示例計算環境1400的示意框圖。系統1400包括一個或多個客戶機1410。客戶機1410可以是硬件和/或軟件(例如,線程、進程、計算設備)。系統1400也包括一個或多個服務器1420。服務器1420可以是硬件和/或軟件(例如,線程、進程、計算設備)。例如,通過使用本發明,這些服務器1420可以容納線程,來執行變換。
客戶機1410與服務器1420之間的一個可能的通信可以采取適合于在兩個或更多的計算機進程之間傳送的數據包的形式。系統1400包括通信框架1440,該通信框架1440可以用來促進客戶機1410與服務器1420之間的通信。客戶機1410操作上連接到可以用來存儲對客戶機1410本地的信息的一個或多個客戶機數據存儲1450。同樣,服務器1420操作上連接到可以用來存儲對服務器1440本地的信息的一個或多個服務器數據存儲器1430。
參照圖15,用于實現本發明的各個方面的示例性環境1500包括計算機1512。計算機1512包括處理單元1514、系統存儲器1516和系統總線1518。系統總線1518將包括(但不局限于)系統存儲器1516的各個系統組件耦合到處理單元1514。處理單元1514可以是各種可用處理器中的任何一種。雙微處理器和其他多處理器體系結構也可以用作處理單元1514。
系統總線1518可以是幾種類型的總線結構中的任何一種,包括存儲總線或存儲控制器、外圍總線或外部總線、和/或使用任何各種可用總線體系結構的任一種的局部總線,這些總線體系結構包括(但不局限于)工業標準體系結構(ISA)、微通道體系結構(MSA)、擴展的ISA(EISA)、智能驅動電子設備(IDE)、VESA局部總線(VLB)、外圍部件互連(PCI)、插件總線(Card Bus)、通用串行總線(USB)、高級圖形端口(AGP)、個人計算機存儲卡國際協會總線(PCMCIA)、火線(IEEE 1394)、以及小型計算機系統接口(SCSI)。
系統存儲器1516包括易失性存儲器1520和非易失性存儲器1522。基本輸入/輸出系統(BIOS)被存儲在非易失性存儲器1522中,它包含用于(例如,在啟動期間)在計算機1512內的各個元件之間傳送信息的基本例程。舉例說明來講(不作限制),非易失性存儲器1522可以包括只讀存儲器(ROM)、可編程ROM(PROM)、電可編程ROM(EPROM)、電可擦除可編程ROM(EEPROM)或閃存。易失性存儲器1450包括隨機存取存儲器(RAM),它擔當外部高速緩沖存儲器。舉例說明來講(不作限制),RAM可采取許多形式,例如,靜態RAM(SRAM)、動態RAM(DRAM)、同步DRAM(SDRAM)、雙數據率SDRAM(DDR SDRAM)、增強型SDRAM(ESDRAM)、同步鏈路DRAM(SLDRAM)、存儲器總線直接RAM(RDRAM)、直接存儲器總線動態RAM(DRDRAM)、以及存儲器總線動態RAM(RDRAM)。
計算機1512也包括可移動/不可移動的易失性/非易失性計算機存儲介質。圖15示出了(例如)盤存儲1524。盤存儲1524包括(但不局限于)比如磁盤驅動器、軟盤驅動器、磁帶驅動器、Jaz驅動器、Zip驅動器、LS-100驅動器、閃存卡或記憶棒等設備。此外,盤存儲1524可以單獨包括存儲介質或與其他存儲介質結合,存儲介質包括(但不局限于)光盤驅動器,例如,光盤ROM設備(CD-ROM)、CD可記錄驅動器(CD-R驅動器)、CD可重寫驅動器(CD-RW驅動器)或數字多功能盤ROM驅動器(DVD-ROM)。為了便于盤存儲設備1524與系統總線1518的連接,通常使用可移動或不可移動的接口(例如,接口1526)。
將會理解,圖15描述了擔當用戶與合適的操作環境1500中所描述的基本計算機資源之間的中介物的軟件。這種軟件包括操作系統1528。操作系統1528(它可以被存儲在盤存儲1524上)用于控制和分配計算機系統1512的資源。系統應用程序1530通過存儲在系統存儲器1516中或盤存儲1524上的程序模塊1532和程序數據1534,來利用操作系統1528所執行的資源管理。將會理解,可以利用各種操作系統或操作系統的組合來實現本發明。
用戶通過輸入設備1536來將命令或信息輸入計算機1512。輸入設備1536包括(但不局限于)定點設備(例如,鼠標、跟蹤球、觸針、觸摸墊)、鍵盤、話筒、操縱桿、游戲墊、圓盤式衛星電視天線、掃描儀、TV調諧卡、數碼照相機、數碼攝像機、web照相機等。這些和其他輸入設備經由接口端口1538并通過系統總線1518而連接到處理單元1514。接口端口1538包括(例如)串行端口、并行端口、游戲端口和通用串行總線(USB)。輸出設備1540將某種類型的端口中的一些用作輸入設備1536。這樣,例如,USB端口可以被用來將輸入提供給計算機1512,并將信息從計算機1512輸出到輸出設備1540。提供輸出適配器1542,以說明有一些輸出設備1540,比如監視器、揚聲器和打印機等其他輸出設備1540,它們要求特殊的適配器。舉例說明來講(不作限制),輸出適配器1542包括在輸出設備1540與系統總線1518之間提供連接手段的視頻卡和聲卡。應該注意,其他設備和/或設備的系統既提供輸入能力,又提供輸出能力(例如,遠程計算機1544)。
計算機1512可以使用與一臺或多臺遠程計算機(例如,遠程計算機1544)的邏輯連接而在聯網環境中進行操作。遠程計算機1544可以是個人計算機、服務器、路由器、網絡PC、工作站、基于微處理器的設備、對等設備或其他普通網絡節點等,它通常包括相對于計算機1512而描述的許多或所有元件。出于簡潔的目的,對遠程計算機1544僅示出記憶存儲設備1546。遠程計算機1544通過網絡接口1548而在邏輯上被連接到計算機1512,然后經由通信連接1550而在物理上被加以連接。網絡接口1548包含有線和/或無線通信網絡,例如,局域網(LAN)和廣域網(WAN)。LAN技術包括光纖分布式數據接口(FDDI)、銅分布式數據接口(CDDI)、以太網、令牌環等。WAN技術包括(但不局限于)點對點鏈路、電路交換網絡(比如綜合業務數字網(ISDN)及其變體)、分組交換網絡以及數字訂戶線(DSL)。
通信連接1550指的是用來將網絡接口1548連接到總線1518的硬件/軟件。為說明清楚起見而在計算機1512內部示出通信連接1550,但它也可以在計算機1512的外部。僅僅出于示范的目的,連接到網絡接口1548所需的硬件/軟件包括內部和外部技術,例如,包括常見電話級調制解調器、電纜調制解調器和DSL調制解調器的調制解調器;ISDN適配器;以及以太網卡。
以上所描述的包括本發明的例子。當然,不可能為描述本發明而描述組件或方法的每個想得到的組合,但本領域的技術人員可以認識到,可能存在本發明的許多其他組合和排列。因此,本發明意在包含落入所附權利要求書的精神和范圍以內的所有這類改變、修改和變更。
特別是,關于上述組件、設備、電路、系統等所執行的各種功能,用來描述這類組件的術語(包括對“裝置”的參考)意在對應于(除非另有指示)執行所描述的組件(例如,功能等效物)的規定功能的任何組件,即使在結構上不等同于所揭示的執行本發明的此處所示出的示例性方面中的功能的結構,也是如此。在這方面,也將會認識到,本發明包括系統以及計算機可讀介質,該計算機可讀介質具有用于執行本發明的各種方法的動作和/或事件的計算機可執行指令。
此外,盡管只相對于幾項實現中的一項來揭示本發明的具體特征,但這種特征可以與其他實現的一個或多個其他特征相結合,對于任何給定或特定的應用程序而言,這可能是想要的和有利的。另外,就術語“包括”及其變體用于詳細描述或權利要求書中來說,這些術語意在按類似于術語“包含”的方式來起包含的作用。
權利要求
1.一種便于利用RFID過程的系統,包括一接收與設備、可編程輸入中的至少一項有關的數據的組件;以及一模型組件,它利用所接收的數據來創建一在設計時構建所述RFID過程并在運行時執行所述RFID過程的框架,所述框架包括實體、對象模型、類分層結構和API中的至少一項。
2.如權利要求1所述的系統,其特征在于,所述實體是以下的至少一項邏輯源;包括設備的邏輯源;設備;過濾器策略;報警策略;事件處理程序;寫處理程序;存儲;以及所述RFID過程。
3.如權利要求2所述的系統,其特征在于,所述設備是以下的至少一項RFID閱讀器;RFID書寫器;RFID打印機;打印機;閱讀器;書寫器;RFID兼容設備;RFID發送器;天線;傳感器;實時設備;以及RFID接收器。
4.如權利要求2所述的系統,其特征在于,所述邏輯源結合設備集合、過濾器、報警、事件處理程序和附加邏輯源中的至少一項。
5.如權利要求2所述的系統,其特征在于,所述邏輯源表示以下的至少一項來自對所述至少一個實體公用的服務器上的物理設備的數據流;以及所述RFID過程內的標簽數據的處理。
6.如權利要求2所述的系統,其特征在于,所述過濾器策略是一組邏輯構造,該組邏輯構造經由可以允許有效標簽列表的一組邏輯規則而在所述邏輯源上所指定的傳入原始數據流上執行。
7.如權利要求2所述的系統,其特征在于,所述報警策略是一組邏輯規則,該組邏輯規則對照數據流來評估,以制定至少一個動作,其中,所述動作是以下的至少一項執行報警;警告合適的授權機構;鎖定位置;執行可聽報警器;執行文本消息;執行電子郵件;執行燈;執行運動;以及執行視頻。
8.如權利要求1所述的系統,其特征在于,所述框架提供表示邏輯過程的處理的邏輯布局的定義,其中,所述邏輯過程可以在運行時與物理設備綁定,以提供邏輯模型和物理模型的清晰分離。
9.如權利要求2所述的系統,其特征在于,所述事件處理程序處理來自所述邏輯源的事件,以提供以下的至少一項豐富事件流;以及生成具有商業上下文的附加事件。
10.如權利要求2所述的系統,其特征在于,所述寫處理程序提供所述RFID過程,以便根據以下的一項將命令發送到設備外部輸入和來自所述邏輯源的事件。
11.如權利要求2所述的系統,其特征在于,所述存儲表示用于包含所述實體、所述RFID過程、以及從所述RFID過程中的實體到所述設備的映射的機制。
12.如權利要求1所述的系統,其特征在于,所述對象模型是以下的至少一項允許RFID過程的創建和存儲的RFID過程定義對象模型(OM);獲得屬性元數據形式的供應者的各種類型的設備的元數據并驗證設備有效性的發現OM;允許RFID過程的部署的RFID過程執行OM;提供統一的API來存儲、檢索和刪除所存儲的實體的存儲OM;為服務器的至少一個設置提供修改的服務器管理器OM;以及提供與RFID過程和設備之一的訪問有關的授權的授權OM。
13.如權利要求1所述的系統,其特征在于,所述模型還包括以下的至少一項異常;超時;根據用戶帳戶和操作系統服務的相關聯特權來提供安全服務的安全組件;使用可以用來實現將命令發送到設備來進行寫入和處理來自邏輯源的事件中的一項的接口的處理程序接口;以及服務API組件。
14.如權利要求13所述的系統,其特征在于,所述服務API組件定義將要被展示為web服務的模型中的以下API中的至少一項存儲;設備處理程序;過程管理器;服務器管理器;供應者管理器;以及組件管理器。
15.一種計算機可讀介質,其上存儲如權利要求1所述的系統的組件。
16.一種便于利用RFID過程的計算機實現的方法,包括利用所接收的數據和框架概念來例示一框架;在設計時利用所述框架來開發所述RFID過程;經由所述框架來部署和維持所述RFID過程;以及在運行時利用所述框架來執行所述RFID過程。
17.如權利要求16所述的方法,其特征在于,還包括獲得設備;配置所述設備;映射來自所述設備的數據集合;通過結合邏輯源和所述設備來表示單個實體,創建所述RFID過程;以及設置從所述RFID過程中的實體到物理設備的映射。
18.如權利要求17所述的方法,其特征在于,還包括通過自動發現和手動發現之一來發現感興趣的設備;配置過濾器、報警、事件處理程序和寫處理程序中的一項;以及保存所述RFID過程。
19.一種在接收器組件與模型組件之間進行通信的數據包,,所述數據包促進如權利要求16所述的方法。
20.一種便于實現RFID過程的計算機實現的系統,包括用于接收與設備、供應者、可編程輸入中的一項有關的數據的裝置;用于根據所接收的數據來創建模型的裝置,所述模型可以用來在設計時構建RFID過程;以及用于利用所述模型在運行時執行所述RFID過程的裝置。
全文摘要
本發明提供了一種便于至少根據框架來使用模型的系統和/或方法,其中,該模型可以用來構建RFID應用程序。接收器組件可以接收數據,其中,模型組件可以至少部分地根據所接收的數據來創建便于創建和/或執行RFID應用程序的模型。該框架可以是(但不局限于)實體、框架類、至少一個類的分層結構框架、接口、異常、組件結構、模式、對象模型和/或API。該模型可以用來創建、部署、管理和/或執行RFID應用程序,以提供類屬操作和/或商業專用情景。
文檔編號H04L29/06GK1804853SQ200510091090
公開日2006年7月19日 申請日期2005年8月1日 優先權日2004年9月1日
發明者A·庫瑪, M·F·A·阿罕默德, J·R·古特蒂, V·G·R·雷迪, V·阿楠薩哈拉曼, A·阿賈瓦爾, B·斯瑞拉姆, R·凡卡特史 申請人:微軟公司