專利名稱:一種電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)的定義和存儲(chǔ)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及RFID (Radio Frequence Identified,無(wú)線射頻識(shí)別)領(lǐng)域, 尤其涉及一種EPCIS (EPC Information Service,電子產(chǎn)品碼信息服務(wù))數(shù)據(jù) 的定義及存儲(chǔ)的方法。
背景技術(shù):
RFID技術(shù)作為一種新興技術(shù),正在得到快速的應(yīng)用,特別是在物流領(lǐng)域。 EPCglobal (電子產(chǎn)品碼全球)組織作為RFID領(lǐng)域的標(biāo)準(zhǔn)組織,致力于推廣 該技術(shù)的廣泛應(yīng)用,其相繼推出了 RFID技術(shù)應(yīng)用系統(tǒng)的標(biāo)準(zhǔn)框架、ALE (Application Level Event,應(yīng)用級(jí)別事件)標(biāo)準(zhǔn)、EPCIS標(biāo)準(zhǔn)等,極大地推動(dòng) 了 RFID技術(shù)的商用進(jìn)程。
EPCIS的目標(biāo)就是在物:眹網(wǎng)上共享EPC (Electronic Product Code,電子 產(chǎn)品碼)數(shù)據(jù)。而要使得數(shù)據(jù)的提供者和使用者都能夠理解這些EPC數(shù)據(jù), 就必須采用統(tǒng)一的、標(biāo)準(zhǔn)的數(shù)據(jù)格式。EPCIS標(biāo)準(zhǔn)采用XML( extension Markup Language,擴(kuò)展標(biāo)記語(yǔ)言)schema (文檔模型)來(lái)描述數(shù)據(jù)類型,并用XML 來(lái)承栽數(shù)據(jù)實(shí)體,通過WSDL (Web Service Description Language,網(wǎng)絡(luò)服務(wù) 描述語(yǔ)言)的方式在數(shù)據(jù)提供者和數(shù)據(jù)使用者之間進(jìn)行傳遞。
EPCIS標(biāo)準(zhǔn)中,有兩類重要的抽象數(shù)據(jù)模型事件數(shù)據(jù)模型和主數(shù)據(jù)模 型。事件數(shù)據(jù)模型包括如下概念事件類型、事件實(shí)體、事件域類型、事件 域?qū)嶓w;主數(shù)據(jù)4莫型包括如下概念詞匯類型、詞匯實(shí)體、詞匯屬性類型、 詞匯屬性實(shí)體。為了理解這些概念,首先要理解信息模型與信息實(shí)體的概念, 另外,由于EPCIS標(biāo)準(zhǔn)是采用XML schema來(lái)描述所有的數(shù)據(jù)模型,因此, 對(duì)于XML中的一些積無(wú)念,例如元素、屬性、簡(jiǎn)單類型、復(fù)雜類型等,請(qǐng)參 見XML相關(guān)《明,此處將不再贅述。本文涉及到的一些概念介紹如下
信息模型描述信息實(shí)體結(jié)構(gòu)的數(shù)據(jù)信息;信息實(shí)體依照某種信息模型,有具體取值的數(shù)據(jù)信息; 元數(shù)據(jù)即描述信息模型的數(shù)據(jù); 實(shí)體數(shù)據(jù)即描述信息實(shí)體的數(shù)據(jù); 事件類型描述事件實(shí)體結(jié)構(gòu)的信息模型;
事件實(shí)體依照某種事件類型,有具體取值的信息實(shí)體,下文提到的事 件等同于事件實(shí)體;
事件域類型描述事件域結(jié)構(gòu)的信息模型,在XML schema中被描述為 一種元素,既然是元素,就有簡(jiǎn)單和復(fù)雜兩種類型,如果是復(fù)雜類型的元素, 則還會(huì)含有子元素,我們稱之為子事件域類型,并且,事件域類型還可以有 自己的屬性;
事件域?qū)嶓w依照某種事件域類型,有具體取值的信息實(shí)體;
詞匯類型描述詞匯實(shí)體結(jié)構(gòu)的信息模型,在XML schema中也被描述 為一種元素,但沒有子詞匯類型的說法, 一種詞匯類型含有多個(gè)詞匯屬性類 型;
詞匯實(shí)體依照某種詞匯類型,有具體取值的信息實(shí)體;
詞匯屬性類型描述詞匯屬性實(shí)體結(jié)構(gòu)的信息模型,在XML schema中 也描述為一種元素,同事件域類型一樣,也有簡(jiǎn)單和復(fù)雜之分,因此也就有 子詞匯屬性類型,或者說子元素,并且,詞匯屬性類型可以有自己的屬性;
詞匯屬性實(shí)體依照某種詞匯屬性類型,有具體取值的信息實(shí)體;
其中,事件實(shí)體與事件域?qū)嶓w之間是整體與部分的關(guān)系, 一個(gè)事件由多 個(gè)事件域組成;詞匯實(shí)體與詞匯屬性實(shí)體之間也是整體與部分的關(guān)系, 一個(gè) 詞匯實(shí)體除了有自己的URI (Unified Resource Identity,通用資源標(biāo)識(shí)符)取 值之外,還包含有多個(gè)詞匯屬性實(shí)體。事件實(shí)體與事件域?qū)嶓w之間的關(guān)系是 在事件類型定義中體現(xiàn)的。同樣,詞匯實(shí)體與詞匯屬性實(shí)體之間的關(guān)系也是 在詞匯類型定義中體現(xiàn)的。依據(jù)EPCIS標(biāo)準(zhǔn),事件類型由若千事件域類型組 成,復(fù)雜的事件域類型由若千子事件域類型組成,同樣,詞匯類型是由若干 詞匯屬性類型組成,復(fù)雜詞匯屬性類型是有若干子詞匯屬性類型組成
另外,事件域類型與詞匯類型之間還可以有某種對(duì)應(yīng)關(guān)系,有些事件域類型就是某種詞匯類型,其取值就是該詞匯類型的某一詞匯實(shí)體的URI。
EPCIS標(biāo)準(zhǔn)采用XML schema來(lái)描述這兩類數(shù)據(jù)模型,或者說定義這兩 類數(shù)據(jù);溪型,但我們?cè)跇?gòu)建符合EPCIS標(biāo)準(zhǔn)的軟件系統(tǒng)時(shí), 一般都釆用數(shù)據(jù) 庫(kù)來(lái)記錄數(shù)據(jù)。而且在實(shí)際的系統(tǒng)中,可能還會(huì)存在對(duì)數(shù)據(jù)模型的更新、刪 除等操作,如直接使用XML schema的話,會(huì)存在以下問題
A、 不方便將信息模型和信息實(shí)體結(jié)合起來(lái)。信息類型相當(dāng)于一個(gè)模板, 而信息實(shí)體就是根據(jù)該模板生成的一個(gè)個(gè)實(shí)例。信息實(shí)體肯定是采用數(shù)據(jù)庫(kù) 來(lái)記錄,而如果信息模型仍釆用XML schema來(lái)記錄的話,其與信息實(shí)體之 間的結(jié)合就會(huì)變得比較困難;
B、 在程序中不方便對(duì)文件進(jìn)行修改以實(shí)現(xiàn)信息模型的新增、修改和刪 除操作;
C、 安全問題。在采用XML schema文件的描述方式時(shí), 一旦該文件被 無(wú)意或者惡意修改的話,系統(tǒng)就會(huì)出現(xiàn)異常。
發(fā)明內(nèi)容
本發(fā)明要解決技術(shù)問題是提供一種實(shí)現(xiàn)電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)的定義 與存儲(chǔ)方法,以提高電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)使用的方便性和安全性。
為解決上述問題,本發(fā)明提供了一種電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)的定義和 存儲(chǔ)方法,包括以下步驟
提取描述事件數(shù)據(jù)^t型和主數(shù)據(jù);漢型的元數(shù)據(jù),其中,所述元數(shù)據(jù)用于 定義事件類型、事件域類型、詞匯類型和詞匯屬性類型;根據(jù)這些元數(shù)據(jù)及 其之間的關(guān)系創(chuàng)建實(shí)體數(shù)據(jù)表。
進(jìn)一步地,上述方法還包括
將所述電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)寫入到相應(yīng)的所述實(shí)體數(shù)據(jù)表中。 進(jìn)一步地,上述方法還可具有以下特征
在提取所述元數(shù)據(jù)時(shí),將事件類型、事件域類型、詞匯類型、詞匯屬性 類型統(tǒng)一視為元素,對(duì)等考慮;且將所述元素與元素的屬性分別用不同的實(shí) 體數(shù)據(jù)表來(lái)表示,將元素自身與元素之間的關(guān)系分別用不同的實(shí)體數(shù)據(jù)表來(lái)表示。
進(jìn)一步地,上述方法還可具有以下特征
所述實(shí)體數(shù)據(jù)表中一個(gè)用于描述所述元素和/或?qū)傩运鶎俚拿臻g。 進(jìn)一步地,上述方法還可具有以下特征
所述描述元素自身的實(shí)體數(shù)據(jù)表中還包括一個(gè)用于描述事件類型之間的 繼承關(guān)系的字段。
采用本發(fā)明后,由于利用數(shù)據(jù)庫(kù)來(lái)記錄才莫型和實(shí)體信息,因此數(shù)據(jù)庫(kù)本 身的安全機(jī)制就能保證其數(shù)據(jù)不容易被非法修改或者刪除,保證了數(shù)據(jù)的安 全性。
圖1是本發(fā)明實(shí)施例中EPCIS數(shù)據(jù)的定義及存儲(chǔ)的方法流程圖。
具體實(shí)施例方式
下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行更詳細(xì)的說明。
本發(fā)明提出了 一種采用關(guān)系數(shù)據(jù)庫(kù)來(lái)定義和存儲(chǔ)電子產(chǎn)品碼信息服務(wù)數(shù) 據(jù)的方法。該方法可以在系統(tǒng)構(gòu)建過程中實(shí)施,也可以在系統(tǒng)運(yùn)行的情況下 實(shí)施,前者被稱為靜態(tài)方式,后者被稱為動(dòng)態(tài)方式。理想情況下,如果能夠 采用動(dòng)態(tài)方式實(shí)施,效果會(huì)更好。本發(fā)明給出了這兩種方式下共有的流程。 需要注意的是,不管是靜態(tài)方式、還是動(dòng)態(tài)方式,都必須遵循先定義后使用 的順序,并且一旦使用,就不允許隨意進(jìn)行修改或者刪除。
本方法如圖l所示,包括以下步驟
SOl、提取描述事件數(shù)據(jù)4莫型和主數(shù)據(jù)才莫型的元數(shù)據(jù),利用這些元數(shù)據(jù)就 可以定義事件類型、事件域類型、詞匯類型和詞匯屬性類型;而元數(shù)據(jù)的提 Jf又應(yīng)遵循以下原則
將事件類型、事件域類型、詞匯類型、詞匯屬性類型統(tǒng)一視為元素, 對(duì)等考慮;
6 將元素與元素的屬性分開描述,元素自身與元素之間的關(guān)系分開描述, 分別給出元數(shù)據(jù)。這樣做,是考慮到元素與元素之間可能存在多對(duì)多的關(guān)系 (如一個(gè)元素可以是多個(gè)元素的子元素),從而達(dá)到復(fù)用元素自身的定義的
目的,避免了定義冗余,使用起來(lái)會(huì)相對(duì)靈活一些;
在XML中有一個(gè)命名空間(nameSpace)的概念, 一個(gè)命名空間下可 以有多個(gè)元素或者屬性,為了避免數(shù)據(jù)冗余,并且為了限定同一命名空間采 用相同的前綴(prefix),將命名空間單獨(dú)描述,在元素或者元素屬性中應(yīng)用;
參考慮到元素之間的繼承關(guān)系,例如事件類型之間的繼承關(guān)系,設(shè)定 exten犯lement—id元數(shù)據(jù);
502、 將提取出的元數(shù)據(jù)保存下來(lái),此時(shí)可進(jìn)行對(duì)各元數(shù)據(jù)的增、刪或改 操作;
503、 根據(jù)這些元數(shù)據(jù)及其之間的關(guān)系創(chuàng)建實(shí)體數(shù)據(jù)表,例如事件實(shí)體 表、事件域?qū)嶓w表、詞匯實(shí)體表、詞匯屬性實(shí)體表。對(duì)于簡(jiǎn)單類型的事件域 或子事件域,不需要另外創(chuàng)建一個(gè)表來(lái)存儲(chǔ)其子事件域?qū)嶓w數(shù)據(jù),而只需要 將其作為實(shí)體數(shù)據(jù)表中的字段就可以了 ;而對(duì)于復(fù)雜類型的事件域或子事件 域,可以再創(chuàng)建一個(gè)表以存儲(chǔ)其子事件域?qū)嶓w數(shù)據(jù),父子之間通過外鍵關(guān)聯(lián)。 對(duì)于詞匯類型、詞匯屬性類型,也是按照這個(gè)原則創(chuàng)建實(shí)體數(shù)據(jù)表;
504、 實(shí)體數(shù)據(jù)表建立之后,就可以對(duì)該表進(jìn)行寫入數(shù)據(jù)和讀取數(shù)據(jù)操作, 但此時(shí),與這些表對(duì)應(yīng)的元數(shù)據(jù)不能隨意修改或者刪除了 。
下面列出遵照以上原則所給出存儲(chǔ)元數(shù)據(jù)的表結(jié)構(gòu),不同實(shí)現(xiàn)者給出的 表結(jié)構(gòu)可能不一樣,但并不能脫離采用數(shù)據(jù)庫(kù)表來(lái)記錄元數(shù)據(jù)的范疇。
描述命名空間的表
NAME—SPACE(id, prefix, nameSpace)
其中,prefix為前綴,namespace為命名空間名。每個(gè)元素的名稱 elementName都要求是在某一個(gè)命名空間之下,每一個(gè)命名空間又都有自己 的前綴prefix。從數(shù)據(jù)庫(kù)設(shè)計(jì)的角度考慮,為避免數(shù)據(jù)冗余,設(shè)計(jì)上將 NAME—SPACE單獨(dú)拿出來(lái)作為一個(gè)表。但這個(gè)namespace也可以與下述描述
7元素自身的表中的elementName字段放到一起。 描述元素自身的表
ELEMENT—SELF (id, elementName, elementTypeName, nameSpace_id, exten啦ement一id, infoModeType , structureType, is Vocabulary, vocabularylD)
其中,elementName:元素名稱;
elementTypeName: 元素類型名-爾,i口 readpointType;
exten犯lement—id:繼承元素id,表示該元素是從哪個(gè)父元素繼承而來(lái), 它擁有父元素的所有子元素和屬性;
infoModeType:該元素描迷的信息模型類型,取值可為event(事件類型)、 eventField (事件域類型)、vocabularyAttribute (詞匯屬性類型)、或 vocabularyAttributeField (詞匯屬性;或類型);
structureType:用于描述該元素是筒單類型(simpleType )還是復(fù)雜類型 (complexType),當(dāng)為簡(jiǎn)單類型時(shí),其取值才能為int (整型)、float (浮點(diǎn) 型)、time (時(shí)間)、string (字符串);
isVocabulary:用yes/no描述其該元素的取值是否來(lái)自主數(shù)據(jù)中的詞匯。 該參數(shù)可選,可用于說明事件域類型元素與詞匯類型元素之間的關(guān)系,以表 明注明該元素是否是詞匯;
vocabularylD:詞匯ID,也就是詞匯的URI,只有當(dāng)is Vocabulary為yes
的時(shí)候,該字段才有效。
描述元素屬性的表
ATTRIBUTE(id , attributeName , attributeTypeName , namespace_id , isVocabulary, vocabularylD)
其中,attributeName:屬性名稱;
attributeTypeName:屬性類型名稱;
isVocabulary:是否是主數(shù)據(jù)中的詞匯,yes/no;
8vocabularyID:詞匯ID,也就是詞匯的URI,只有當(dāng)isVocabulary為yes 的時(shí)候,該字段才有效。
描述元素關(guān)系的表
ELEMENT—RELAT腹(id, elementjd, childElement一id, attribute id, occurs, order, sequence)
其中,elementjd:元素自身的id;
childElementjd:孩子元素的id,當(dāng)描述的是元素與孩子元素之間的關(guān)系 時(shí),該字段有效;
attribute—id:屬性的id,當(dāng)描述的是元素與屬性之間的關(guān)系時(shí),該字段有 效,它與childElement—id互斥;
occurs:子元素出現(xiàn)頻率,其取值可以為0 1/1/0 */1~*,取值0~1表示 該子元素可有可無(wú),如果有,只有一個(gè);取值1表示該子元素有且只能有一 個(gè);取值0~*表示該子元素可以沒有,也可以有多個(gè);取值1~*表示該子元素 至少有一個(gè);
order: 是否排序,yes/no 。
sequence:順序號(hào),只有當(dāng)order取值為yes的時(shí)候,該字段才有效,從 l開始,只記錄自身的孩子元素的順序。
在前面的考慮下,采用數(shù)據(jù)庫(kù)中的視圖來(lái)描述一個(gè)元素的完整信息,而 描述某一個(gè)元素完整信息的視圖如下,其中包括繼承的元素所包含的信息
ELEMENT(id , elementName , elementTypeName , namespace , extendElement_id, infoModeType, structureType, isVocabulary, vocabularyID, childElement—id, childElementName, childElementTypeName , childElementNameSpace , childElementlnfoModeType ,
childElementStructureType , childElementlsVocabulary ,
childElementVocabularyID ,childElementOccurs ,childElementOrder , childElementSequence, attributeName, attributeTypeName, attributeNameSpace,attributelsVocabulary , attibuteVocabularyID)
其中,字段 childElementSequence 的取值不能直接從 ELEMENT—RELATION表中獲取,而應(yīng)該考慮到繼承的父元素中所包含的子 元素,首先排序父元素中的子元素,然后是自己的子元素,因此自己的子元 素的sequence需要加上所有父元素的子元素個(gè)數(shù)。
本發(fā)明可以在系統(tǒng)構(gòu)建過程中實(shí)施,也可以在系統(tǒng)運(yùn)行過程中實(shí)施,不 同的是,要做到在系統(tǒng)運(yùn)行過程中定義信息模型,并立刻就能使用,該系統(tǒng) 需要采用較復(fù)雜的技術(shù),例如在程序中動(dòng)態(tài)創(chuàng)建數(shù)據(jù)庫(kù)表,并能夠動(dòng)態(tài)形 成數(shù)據(jù)庫(kù)操作語(yǔ)句,而系統(tǒng)構(gòu)建過程中實(shí)施,則不需要處理這么復(fù)雜的流程。
當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的 但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1、一種電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)的定義和存儲(chǔ)方法,其特征在于,包括以下步驟提取描述事件數(shù)據(jù)模型和主數(shù)據(jù)模型的元數(shù)據(jù),其中,所述元數(shù)據(jù)用于定義事件類型、事件域類型、詞匯類型和詞匯屬性類型;根據(jù)這些元數(shù)據(jù)及其之間的關(guān)系創(chuàng)建實(shí)體數(shù)據(jù)表。
2、 如權(quán)利要求l所述的方法,其特征在于,還包括 將所述電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)寫入到相應(yīng)的所述實(shí)體數(shù)據(jù)表中。
3、 如權(quán)利要求l所述的方法,其特征在于,在提取所述元數(shù)據(jù)時(shí),將事件類型、事件域類型、詞匯類型、詞匯屬性 類型統(tǒng)一視為元素,對(duì)等考慮;且將所述元素與元素的屬性分別用不同的實(shí) 體數(shù)據(jù)表來(lái)表示,將元素自身與元素之間的關(guān)系分別用不同的實(shí)體數(shù)據(jù)表來(lái) 表示。
4、 如權(quán)利要求3所述的方法,其特征在于,所述實(shí)體數(shù)據(jù)表中一個(gè)用于描述所述元素和/或?qū)傩运鶎俚拿臻g。
5、 如權(quán)利要求l所述的方法,其特征在于,所述描述元素自身的實(shí)體數(shù)據(jù)表中還包括一個(gè)用于描述事件類型之間的 繼承關(guān)系的字l爻。
全文摘要
一種電子產(chǎn)品碼信息服務(wù)數(shù)據(jù)的定義和存儲(chǔ)方法,包括以下步驟提取描述事件數(shù)據(jù)模型和主數(shù)據(jù)模型的元數(shù)據(jù),其中,所述元數(shù)據(jù)用于定義事件類型、事件域類型、詞匯類型和詞匯屬性類型;根據(jù)這些元數(shù)據(jù)及其之間的關(guān)系創(chuàng)建實(shí)體數(shù)據(jù)表。采用本發(fā)明后,由于利用數(shù)據(jù)庫(kù)來(lái)記錄模型和實(shí)體信息,因此數(shù)據(jù)庫(kù)本身的安全機(jī)制就能保證其數(shù)據(jù)不容易被非法修改或者刪除,保證了數(shù)據(jù)的安全性。
文檔編號(hào)G06F17/30GK101655849SQ200810147529
公開日2010年2月24日 申請(qǐng)日期2008年8月20日 優(yōu)先權(quán)日2008年8月20日
發(fā)明者甘國(guó)華, 鄧麗艷 申請(qǐng)人:中興通訊股份有限公司