一種epg適配系統(tǒng)及方法
【專利摘要】本發(fā)明提供了一種EPG適配系統(tǒng)及方法,所述系統(tǒng)包含:配置模塊,根據(jù)EPG樣本文件,設(shè)置輸入與輸出EPG文件的字段與樣本字段的映射關(guān)系,并設(shè)置EPG文件的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化的方式;字段適配模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件字段與存儲(chǔ)模塊字段之間的相互翻譯;處理模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化;存儲(chǔ)模塊,用于存儲(chǔ)輸入的EPG文件解析后的節(jié)目信息數(shù)據(jù),并實(shí)現(xiàn)EPG信息的持久化。所述處理模塊進(jìn)一步包含:表式處理子模塊,鏈?zhǔn)教幚碜幽K和樹形處理子模塊實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由樹形結(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化。
【專利說明】一種EPG適配系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉互動(dòng)電視服務(wù)技術(shù),具體涉及一種互動(dòng)EPG適配系統(tǒng)及方法。
【背景技術(shù)】
[0002]作為擁有全球最大用戶群的我國(guó)有線電視網(wǎng)絡(luò),經(jīng)過20多年的建設(shè)和發(fā)展,擁有較為完整的各級(jí)網(wǎng)絡(luò),互動(dòng)電視能夠?yàn)橛脩籼峁┛山换サ呢S富的精彩節(jié)目,而互動(dòng)電視所提供的各種導(dǎo)航服務(wù)都是通過電子節(jié)目菜單EPG(Electronic Program Guide)服務(wù)系統(tǒng)來完成的。EPG服務(wù)系統(tǒng)為互動(dòng)電視用戶收看電視節(jié)目、享受多媒體節(jié)目點(diǎn)播以及開展信息服務(wù)提供了一個(gè)良好的導(dǎo)航機(jī)制。隨著互動(dòng)電視技術(shù)的發(fā)展,為了給用戶提供更多的直播頻道,電視網(wǎng)絡(luò)運(yùn)營(yíng)商通常會(huì)從多個(gè)節(jié)目提供商獲取節(jié)目,而不同的節(jié)目提供商CP (ContentProvider)所提供的EPG文件格式不統(tǒng)一,一般采用XML (可擴(kuò)展性標(biāo)記語言,ExtensibleMarkup Language)、JSON (一種數(shù)據(jù)交換格式,JavaScript Object Notation)、TXT 格式或XLS格式,這樣將給電視網(wǎng)絡(luò)運(yùn)營(yíng)商為用戶提供統(tǒng)一的EPG服務(wù)帶來很大的障礙。
[0003]中國(guó)專利申請(qǐng)?zhí)枮椤?00910190719”的文件中公開了“一種EPG存取存儲(chǔ)方法和系統(tǒng)”,該系統(tǒng)包括=EPG的XML文件進(jìn)入搜索服務(wù)器,搜索服務(wù)器對(duì)XML文件進(jìn)行遍歷,并保存其結(jié)構(gòu)信息;得到搜索結(jié)果,其參數(shù)分別為搜索目標(biāo)的格式和期望返回的粒度;EPG搜索服務(wù)器根據(jù)用戶的URL所設(shè)定的參數(shù),進(jìn)行搜索并構(gòu)建返回的結(jié)果。但該專利并未涉及EPG多格式適配相關(guān)技術(shù)。同樣,中國(guó)專利申請(qǐng)?zhí)枮椤?00910171833”文件中公開了“網(wǎng)絡(luò)電視業(yè)務(wù)系統(tǒng)運(yùn)行方法、裝置及網(wǎng)絡(luò)電視業(yè)務(wù)系統(tǒng)”也未涉及EPG多格式適配相關(guān)技術(shù)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于,為克服上述技術(shù)問題,本發(fā)明提供了一種EPG適配系統(tǒng)和方法。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種EPG適配系統(tǒng),所述系統(tǒng)包含:
[0006]配置模塊,根據(jù)EPG樣本文件,設(shè)置輸入與輸出EPG文件的字段與樣本字段的映射關(guān)系,并設(shè)置EPG文件的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化的方式;
[0007]字段適配模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件字段與存儲(chǔ)模塊字段之間的相互翻譯;
[0008]處理模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)方式之間的相互轉(zhuǎn)化;
[0009]存儲(chǔ)模塊,用于存儲(chǔ)輸入的EPG文件解析后的節(jié)目信息數(shù)據(jù),并實(shí)現(xiàn)EPG信息的持久化。
[0010]上述處理模塊進(jìn)一步包含:
[0011 ] 表式處理子模塊,用于根據(jù)樣本解析或生成XLS文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由表式結(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0012]鏈?zhǔn)教幚碜幽K,根據(jù)樣本解析或生成TXT文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由鏈?zhǔn)浇Y(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0013]樹形處理子模塊,根據(jù)樣本解析或生成XML和JSON文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由樹形結(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化。
[0014]上述存儲(chǔ)t吳塊存儲(chǔ)結(jié)構(gòu)為:樹形結(jié)構(gòu);
[0015]其中,所述樹形結(jié)構(gòu)包含如下節(jié)點(diǎn):
[0016]內(nèi)容提供商實(shí)體,包括內(nèi)容提供商標(biāo)識(shí)和內(nèi)容提供商名稱屬性,在實(shí)體關(guān)系圖中,是ROOT節(jié)點(diǎn);
[0017]頻道實(shí)體,包括頻道標(biāo)識(shí)、頻道名稱和臺(tái)標(biāo)屬性,在實(shí)體關(guān)系圖中,是內(nèi)容提供商的子節(jié)點(diǎn);
[0018]節(jié)目事件,包括節(jié)目標(biāo)識(shí)、節(jié)目名稱、節(jié)目開始時(shí)間和節(jié)目結(jié)束時(shí)間屬性,在實(shí)體關(guān)系圖中,是節(jié)目事件的葉子節(jié)點(diǎn)。
[0019]上述字段適配模塊進(jìn)一步包含:
[0020]第一字段適配子模塊,用于將輸入EPG文件的字段與樣本文件的字段進(jìn)行翻譯;
[0021]第二字段適配子模塊,用于將樣本文件的字段與所要求輸出EPG文件的字段進(jìn)行翻譯。
[0022]基于上述系統(tǒng),本發(fā)明提供了一種EPG適配方法,該方法基于權(quán)利要求1-4所述的適配系統(tǒng),所述方法包含:
[0023]步驟101)用于解析輸入的EPG文件,并將解析后的文件轉(zhuǎn)化為存儲(chǔ)模塊設(shè)定的存儲(chǔ)結(jié)構(gòu);
[0024]步驟102)用于接收輸出的EPG文件指令,并將采用存儲(chǔ)模塊設(shè)定的存儲(chǔ)結(jié)構(gòu)存儲(chǔ)的文件生成EFG文件。
[0025]上述步驟101具體為:
[0026]當(dāng)字段適配模塊接收到輸入EPG文件時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置把EPG文件中字段翻譯成存儲(chǔ)模塊字段,根據(jù)樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊;處理模塊解析文件后把信息結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)結(jié)構(gòu),最后調(diào)用存儲(chǔ)模塊進(jìn)行持久化。
[0027]上述步驟101)進(jìn)一步包含:
[0028]301)字段適配模塊接收到輸入EPG文件,進(jìn)入302);
[0029]302)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置把EPG文件中的字段翻譯成存儲(chǔ)模塊字段,進(jìn)入303);
[0030]303)字段適配模塊根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入304),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入306),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入308);
[0031]304)鏈?zhǔn)教幚砟K進(jìn)行文件解析,進(jìn)入305);
[0032]305)鏈?zhǔn)教幚砟K把鏈?zhǔn)浇Y(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0033]306)表式處理模塊進(jìn)行文件解析,進(jìn)入307);
[0034]307)表式處理模塊把表式結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0035]308)樹形處理模塊進(jìn)行文件解析,進(jìn)入309);[0036]309)樹形處理模塊把樹形結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0037]310)存儲(chǔ)模塊進(jìn)行持久化,進(jìn)入311);
[0038]311)解析流程執(zhí)行完畢。
[0039]上述步驟102)具體為:
[0040]當(dāng)字段適配模塊接收到輸出EPG文件指令時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,處理模塊從存儲(chǔ)模塊讀取EPG信息,把EPG信息結(jié)構(gòu)由存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的信息結(jié)構(gòu),然后根據(jù)樣本生成文件;最后,字段適配模塊把字段轉(zhuǎn)化為樣本字段,輸出最終的EPG文件。
[0041 ] 上述步驟102 )進(jìn)一步包含:
[0042]401)字段適配模塊接收到輸出EPG文件指令后,進(jìn)入402);
[0043]402)字段適配模塊從存儲(chǔ)模塊讀取要輸出的EPG文件信息,進(jìn)入403);
[0044]403)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入404),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入406),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入408);
[0045]404)鏈?zhǔn)教幚砟K把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為鏈?zhǔn)浇Y(jié)構(gòu),進(jìn)入405);
[0046]405)鏈?zhǔn)教幚砟K根據(jù)樣本生成文件,進(jìn)入410);
[0047]406)表式處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為表式結(jié)構(gòu),進(jìn)入407);
[0048]407)表式處理模塊根據(jù)樣本生成文件,進(jìn)入410);
[0049]408)樹形處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的樹形結(jié)構(gòu),進(jìn)入409);
[0050]409)樹形處理模塊根據(jù)樣本生成文件,進(jìn)入410);
[0051]410)字段適配模塊根據(jù)樣本設(shè)置把字段翻譯成輸出EPG文件對(duì)應(yīng)的字段,進(jìn)入411);
[0052]411)輸出最終的EPG文件,流程執(zhí)行完畢。
[0053]本發(fā)明提供一種支持多種格式EPG文件的處理方法,兼容了不同格式的EPG文件,并能提供可配置的輸出格式??傊?,本發(fā)明為了解決一個(gè)EPG服務(wù)系統(tǒng)能支持多種EPG信息結(jié)構(gòu),需要一種EPG適配方法和系統(tǒng),并能在修改代碼量很少的情況下,能支持新的異構(gòu)EPG,具備高擴(kuò)展性等特點(diǎn)。
[0054]本發(fā)明的有益效果在于:
[0055]1.支持多種 EPG 文件格式,如 JSON、XML、TXT、XLS0
[0056]2.并能在修改代碼量很少的情況下,該方法及系統(tǒng)能支持新的異構(gòu)EPG信息格式,并具備高擴(kuò)展性等特點(diǎn)。
【專利附圖】
【附圖說明】
[0057]圖1是本發(fā)明提供的一種EPG適配方法及系統(tǒng)結(jié)構(gòu)組成示意圖;
[0058]圖2是本發(fā)明的EPG信息存儲(chǔ)結(jié)構(gòu)實(shí)體關(guān)系圖;
[0059]圖3是本發(fā)明提供的EPG文件解析工作流程圖;
[0060]圖4是本發(fā)明提供的EPG文件生成工作流程圖?!揪唧w實(shí)施方式】
[0061]下面結(jié)合附圖對(duì)本發(fā)明的內(nèi)容進(jìn)行詳細(xì)闡述。
[0062]本發(fā)明提供的一種EPG適配方法及系統(tǒng),該系統(tǒng)包括:配置模塊、字段適配模塊、表式處理模塊、鏈?zhǔn)教幚砟K、樹形處理模塊和存儲(chǔ)模塊,(I)系統(tǒng)對(duì)輸入/輸出EPG文件字段和信息結(jié)構(gòu)分別與存儲(chǔ)模塊字段和存儲(chǔ)結(jié)構(gòu)分別進(jìn)行適配和轉(zhuǎn)化;(2)字段適配模塊實(shí)現(xiàn)EPG文件字段與存儲(chǔ)模塊字段相互翻譯;(3)表式處理模塊、鏈?zhǔn)教幚砟K和樹形處理模塊實(shí)現(xiàn)EPG文件信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化;(4)而配置模塊設(shè)置EPG文件的字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系、及EPG文件的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化方式;
[0063]上述每種格式的輸入/輸出EPG文件對(duì)應(yīng)一個(gè)樣本,通過配置模塊設(shè)置樣本字段與存儲(chǔ)模塊字段的對(duì)應(yīng)關(guān)系及樣本的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)的轉(zhuǎn)化方式;
[0064]當(dāng)字段適配模塊接收到輸入EPG文件時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置把EPG文件中字段翻譯成存儲(chǔ)模塊字段,根據(jù)樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊;處理模塊解析文件后把信息結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)結(jié)構(gòu),最后調(diào)用存儲(chǔ)模塊進(jìn)行持久化;
[0065]當(dāng)字段適配模塊接收到輸出EPG文件指令時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,處理模塊從存儲(chǔ)模塊讀取EPG信息,把EPG信息結(jié)構(gòu)由存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的信息結(jié)構(gòu),然后根據(jù)樣本生成文件;最后,字段適配模塊把字段轉(zhuǎn)化為樣本字段,輸出最終的EPG文件。
[0066]本發(fā)明在分析內(nèi)容提供商所提供的EPG文件后,得出:EPG的信息結(jié)構(gòu)通常為樹形結(jié)構(gòu)、鏈?zhǔn)浇Y(jié)構(gòu)和表式結(jié)構(gòu);文件格式為JSON和XML的EPG文件,其信息結(jié)構(gòu)為樹形結(jié)構(gòu);文件格式為TXT的EPG文件,其信息結(jié)構(gòu)為鏈?zhǔn)浇Y(jié)構(gòu);而文件格式為XLS的EPG文件,其信息結(jié)構(gòu)為表式結(jié)構(gòu)。現(xiàn)在的數(shù)據(jù)庫(kù)信息存儲(chǔ)關(guān)系大多數(shù)都是面向?qū)ο筮M(jìn)行存儲(chǔ)的,對(duì)EPG信息的存儲(chǔ),采用存儲(chǔ)的樹形結(jié)構(gòu)存儲(chǔ)不但節(jié)省存儲(chǔ)空間,而且能便于查找和修改。
[0067]基于以上分析,本發(fā)明提出一種EPG適配方法及系統(tǒng),該系統(tǒng)包括:配置模塊、字段適配模塊、表式處理模塊、鏈?zhǔn)教幚砟K、樹形處理模塊和存儲(chǔ)模塊。
[0068]其中:(I)配置模塊,根據(jù)輸入/輸出EPG文件的樣本,設(shè)置EPG文件字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系,并設(shè)置EPG文件信息結(jié)構(gòu)與存儲(chǔ)模塊中的存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化方式,可以依據(jù)轉(zhuǎn)化方式確定所需要采用的處理模塊;
[0069](2)字段適配模塊,根據(jù)EPG文件所屬樣本的字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系進(jìn)行相互翻譯,并根據(jù)樣本設(shè)置處理方式調(diào)用對(duì)應(yīng)的處理模塊;
[0070](3)表式處理模塊,根據(jù)樣本解析或生成XLS文件,實(shí)現(xiàn)EPG信息結(jié)構(gòu)由表式結(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0071](4)鏈?zhǔn)教幚砟K,根據(jù)樣本解析或生成TXT文件,實(shí)現(xiàn)EPG信息結(jié)構(gòu)由鏈?zhǔn)浇Y(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0072](5)樹形處理模塊,根據(jù)樣本解析或生成XML和JSON文件,現(xiàn)EPG信息結(jié)構(gòu)由樹形結(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0073](6)存儲(chǔ)模塊,實(shí)現(xiàn)EPG信息的持久化。
[0074]本方法具體為:[0075](I)每種格式的輸入/輸出EPG文件對(duì)應(yīng)一個(gè)樣本,樣本中包含預(yù)設(shè)的樣本字段,存儲(chǔ)模塊中含有預(yù)設(shè)的存儲(chǔ)字段。通過配置模塊設(shè)置樣本字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系及樣本的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化方式;
[0076](2)當(dāng)字段適配模塊接收到輸入EPG文件時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置把EPG文件字段翻譯成存儲(chǔ)模塊字段,根據(jù)樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊;處理模塊解析文件后把信息結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)結(jié)構(gòu),最后調(diào)用存儲(chǔ)模塊進(jìn)行持久化;
[0077](3)當(dāng)字段適配模塊接收到輸出EPG文件指令時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,處理模塊從存儲(chǔ)模塊讀取EPG信息,把EPG信息結(jié)構(gòu)由存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的信息結(jié)構(gòu),然后根據(jù)樣本生成文件;最后,字段適配模塊把文件字段轉(zhuǎn)化為樣本字段,輸出最終的EPG文件;
[0078](3)所述的“處理模塊解析文件后把信息結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)結(jié)構(gòu)”具體方法為:
[0079](3-1)表式處理模塊把EPG信息結(jié)構(gòu)由表式結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),首先為該EPG信息建立ROOT節(jié)點(diǎn),讀取表中的每一行,把頻道添加為ROOT的子節(jié)點(diǎn),如果該子節(jié)點(diǎn)已經(jīng)存在,不再添加,把節(jié)目事件作為頻道的子節(jié)點(diǎn);
[0080](3-2)鏈?zhǔn)教幚砟K把EPG信息結(jié)構(gòu)由鏈?zhǔn)浇Y(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),首先為該EPG信息建立ROOT節(jié)點(diǎn),把順序表達(dá)的頻道轉(zhuǎn)換為ROOT的子節(jié)點(diǎn),頻道下的所有的節(jié)目事件都為頻道的葉子節(jié)點(diǎn),同時(shí),給葉子節(jié)點(diǎn)增加“節(jié)目結(jié)束時(shí)間”屬性值,即鏈?zhǔn)浇Y(jié)構(gòu)中上一個(gè)節(jié)目事件的“節(jié)目開始時(shí)間”;
[0081](3-3)樹形處理模塊把EPG信息結(jié)構(gòu)由樹形結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu);
[0082](4)所述的“處理模塊把把EPG信息結(jié)構(gòu)由存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的信息結(jié)構(gòu)”具體方法為:
[0083](4-1)表式處理模塊把樹形結(jié)構(gòu)轉(zhuǎn)化為表式結(jié)構(gòu),遍歷葉子的父節(jié)點(diǎn),合并父節(jié)點(diǎn)屬性和葉子節(jié)點(diǎn)的屬性作為表中的一行;
[0084](4-2)鏈?zhǔn)教幚砟K把樹形結(jié)構(gòu)轉(zhuǎn)化為鏈?zhǔn)叫谓Y(jié)構(gòu),并根據(jù)葉子節(jié)點(diǎn)的“節(jié)目開始時(shí)間”進(jìn)行先后順序進(jìn)行排序,排序后,后一個(gè)葉子節(jié)點(diǎn)指向前一個(gè)葉子節(jié)點(diǎn),生成鏈?zhǔn)浇Y(jié)構(gòu);
[0085](4-3)樹形處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為EPG信息結(jié)構(gòu)由樹形結(jié)構(gòu)。
[0086]圖1所示的一種EPG適配方法及系統(tǒng)結(jié)構(gòu),具體包括:
[0087]配置模塊(101),根據(jù)輸入/輸出EPG文件的樣本,設(shè)置該格式EPG文件的樣本字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系及信息結(jié)構(gòu)與存儲(chǔ)模塊的存儲(chǔ)結(jié)構(gòu)轉(zhuǎn)化方式;
[0088]字段適配模塊(102),根據(jù)EPG文件所屬樣本的字段與存儲(chǔ)模塊字段對(duì)應(yīng)關(guān)系進(jìn)行相互翻譯,并根據(jù)樣本設(shè)置處理方式調(diào)用對(duì)應(yīng)的處理模塊;
[0089]表式處理模塊(103),根據(jù)樣本解析或生成XLS文件,實(shí)現(xiàn)EPG信息結(jié)構(gòu)由表式結(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0090]鏈?zhǔn)教幚砟K(104),根據(jù)樣本解析或生成TXT文件,實(shí)現(xiàn)EPG信息結(jié)構(gòu)由鏈?zhǔn)浇Y(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0091 ] 樹形處理模塊(105),根據(jù)樣本解析或生成XML和JSON文件,現(xiàn)EPG信息結(jié)構(gòu)由樹形結(jié)構(gòu)和存儲(chǔ)的樹形結(jié)構(gòu)之間的相互轉(zhuǎn)化;
[0092]存儲(chǔ)模塊(106),實(shí)現(xiàn)EPG存儲(chǔ)的樹形結(jié)構(gòu)的信息持久化。[0093]圖2是EPG信息存儲(chǔ)結(jié)構(gòu)實(shí)體關(guān)系圖,具體包括:
[0094]內(nèi)容提供商實(shí)體(201),包括內(nèi)容提供商標(biāo)識(shí)、內(nèi)容提供商名稱等屬性,在實(shí)體關(guān)系圖中,是ROOT節(jié)點(diǎn);
[0095]頻道實(shí)體(202),包括頻道標(biāo)識(shí)、頻道名稱、臺(tái)標(biāo)等屬性,在實(shí)體關(guān)系圖中,是內(nèi)容提供商的子節(jié)點(diǎn);
[0096]節(jié)目事件(203),包括節(jié)目標(biāo)識(shí)、節(jié)目名稱、節(jié)目開始時(shí)間、節(jié)目結(jié)束時(shí)間等屬性,在實(shí)體關(guān)系圖中,是節(jié)目事件的葉子節(jié)點(diǎn)。
[0097]圖3是EPG文件解析工作流程圖,具體包括:
[0098]301)字段適配模塊接收到輸入EPG文件,進(jìn)入302);
[0099]302)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置把EPG文件中的字段翻譯成存儲(chǔ)模塊字段,進(jìn)入303);
[0100]303)字段適配模塊根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入304),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入306),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入308);
[0101]304)鏈?zhǔn)教幚砟K進(jìn)行文件解析,進(jìn)入305);
[0102]305)鏈?zhǔn)教幚砟K把鏈?zhǔn)浇Y(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0103]306)表式處理模塊進(jìn)行文件解析,進(jìn)入307);
[0104]307)表式處理模塊把表式結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0105]308)樹形處理模塊進(jìn)行文件解析,進(jìn)入309);
[0106]309)樹形處理模塊把表式結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310);
[0107]310)存儲(chǔ)模塊進(jìn)行持久化,進(jìn)入311);
[0108]311)解析流程執(zhí)行完畢。
[0109]圖4是EPG文件生成工作流程圖,具體包括:
[0110]401)字段適配模塊接收到輸出EPG文件指令后,進(jìn)入402);
[0111]402)字段適配模塊從存儲(chǔ)模塊讀取要輸出的EPG文件信息,進(jìn)入403);
[0112]403)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入404),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入406),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入408);
[0113]404)鏈?zhǔn)教幚砟K把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為鏈?zhǔn)浇Y(jié)構(gòu),進(jìn)入405);
[0114]405)鏈?zhǔn)教幚砟K根據(jù)樣本生成文件,進(jìn)入410);
[0115]406)表式處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為表式結(jié)構(gòu),進(jìn)入407);
[0116]407)表式處理模塊根據(jù)樣本生成文件,進(jìn)入410);
[0117]408)樹形處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的樹形結(jié)構(gòu),進(jìn)入409);
[0118]409)樹形處理模塊根據(jù)樣本生成文件,進(jìn)入410);
[0119]410)字段適配模塊根據(jù)樣本設(shè)置把字段翻譯成輸出EPG文件對(duì)應(yīng)的字段,進(jìn)入411);
[0120]411)輸出最終的EPG文件,流程執(zhí)行完畢。
[0121]總之,本發(fā)明針對(duì)不同的節(jié)目提供商所提供的EPG文件格式不統(tǒng)一,本發(fā)明公開了一種EPG適配方法及系統(tǒng),該系統(tǒng)系統(tǒng)對(duì)輸入/輸出EPG文件的字段和信息結(jié)構(gòu)分別進(jìn)行適配和轉(zhuǎn)化。該系統(tǒng)包括:配置模塊、字段適配模塊、表式處理模塊、鏈?zhǔn)教幚砟K、樹形處理模塊和存儲(chǔ)模塊。具體方法為:字段適配模塊實(shí)現(xiàn)EPG文件中的字段與存儲(chǔ)模塊字段相互翻譯;表式處理模塊、鏈?zhǔn)教幚砟K和樹形處理模塊實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化。通過實(shí)施本發(fā)明,兼容了不同格式的EPG文件,并提供可配置的輸出格式。
[0122]最后應(yīng)說明,此處所描述的實(shí)例僅用于解釋本發(fā)明,本發(fā)明并不限定具體EPG文件格式、EPG信息結(jié)構(gòu)、EPG樹形及字段名稱,對(duì)以上內(nèi)容所做的變換也落在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種EPG適配系統(tǒng),所述系統(tǒng)包含: 配置模塊,根據(jù)EPG樣本文件,設(shè)置輸入與輸出EPG文件的字段與樣本字段的映射關(guān)系,并設(shè)置EPG文件的信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的轉(zhuǎn)化方式; 字段適配模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件字段與存儲(chǔ)模塊字段之間的相互翻譯; 處理模塊,用于實(shí)現(xiàn)配置模塊設(shè)置的EPG文件信息結(jié)構(gòu)與存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)方式之間的相互轉(zhuǎn)化; 存儲(chǔ)模塊,用于存儲(chǔ)輸入的EPG文件解析后的節(jié)目信息數(shù)據(jù),并實(shí)現(xiàn)EPG信息的持久化。
2.根據(jù)權(quán)利要求1所述的EPG適配系統(tǒng),其特征在于,所述處理模塊進(jìn)一步包含: 表式處理子模塊,用于根據(jù)樣本解析或生成XLS文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由表式結(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化; 鏈?zhǔn)教幚碜幽K,根據(jù)樣本解析或生成TXT文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由鏈?zhǔn)浇Y(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化; 樹形處理子模塊,根據(jù)樣本解析或生成XML和JSON文件,實(shí)現(xiàn)EPG文件的信息結(jié)構(gòu)由樹形結(jié)構(gòu)和存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)之間的相互轉(zhuǎn)化。
3. 根據(jù)權(quán) 利要求2所述的EPG適配系統(tǒng),其特征在于,所述存儲(chǔ)模塊存儲(chǔ)結(jié)構(gòu)為:樹形結(jié)構(gòu); 其中,所述樹形結(jié)構(gòu)包含如下節(jié)點(diǎn): 內(nèi)容提供商實(shí)體,包括內(nèi)容提供商標(biāo)識(shí)和內(nèi)容提供商名稱屬性,在實(shí)體關(guān)系圖中,是ROOT節(jié)點(diǎn); 頻道實(shí)體,包括頻道標(biāo)識(shí)、頻道名稱和臺(tái)標(biāo)屬性,在實(shí)體關(guān)系圖中,是內(nèi)容提供商的子節(jié)點(diǎn); 節(jié)目事件,包括節(jié)目標(biāo)識(shí)、節(jié)目名稱、節(jié)目開始時(shí)間和節(jié)目結(jié)束時(shí)間屬性,在實(shí)體關(guān)系圖中,是節(jié)目事件的葉子節(jié)點(diǎn)。
4.根據(jù)權(quán)利要求1所述的EPG適配系統(tǒng),其特征在于,所述字段適配模塊進(jìn)一步包含: 第一字段適配子模塊,用于將輸入EPG文件的字段與樣本文件的字段進(jìn)行翻譯; 第二字段適配子模塊,用于將樣本文件的字段與所要求輸出EPG文件的字段進(jìn)行翻譯。
5.—種EPG適配方法,該方法基于權(quán)利要求1-4所述的適配系統(tǒng),所述方法包含: 步驟101)用于解析輸入的EPG文件,并將解析后的文件轉(zhuǎn)化為存儲(chǔ)模塊設(shè)定的存儲(chǔ)結(jié)構(gòu); 步驟102)用于接收輸出的EPG文件指令,并將采用存儲(chǔ)模塊設(shè)定的存儲(chǔ)結(jié)構(gòu)存儲(chǔ)的文件生成EFG文件。
6.根據(jù)權(quán)利要求5所述的EPG適配方法,其特征在于,所述步驟101)具體為: 當(dāng)字段適配模塊接收到輸入EPG文件時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置把EPG文件中字段翻譯成存儲(chǔ)模塊字段,根據(jù)樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊;處理模塊解析文件后把信息結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)結(jié)構(gòu),最后調(diào)用存儲(chǔ)模塊進(jìn)行持久化。
7.根據(jù)權(quán)利要求5或6所述的EPG適配方法,其特征在于,所述步驟101)進(jìn)一步包含:301)字段適配模塊接收到輸入EPG文件,進(jìn)入302); 302)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置把EPG文件中的字段翻譯成存儲(chǔ)模塊字段,進(jìn)入303); 303)字段適配模塊根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入304),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入306),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行解析和轉(zhuǎn)化EPG信息格式,進(jìn)入308); 304)鏈?zhǔn)教幚砟K進(jìn)行文件解析,進(jìn)入305); 305)鏈?zhǔn)教幚砟K把鏈?zhǔn)浇Y(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310); 306)表式處理模塊進(jìn)行文件解析,進(jìn)入307); 307)表式處理模塊把表式結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310); 308)樹形處理模塊進(jìn)行文件解析,進(jìn)入309); 309)樹形處理模塊把樹形結(jié)構(gòu)轉(zhuǎn)化為存儲(chǔ)的樹形結(jié)構(gòu),進(jìn)入310); 310)存儲(chǔ)模塊進(jìn)行持 久化,進(jìn)入311); 311)解析流程執(zhí)行完畢。
8.根據(jù)權(quán)利要求5所述的EPG適配方法,其特征在于,所述步驟102)具體為: 當(dāng)字段適配模塊接收到輸出EPG文件指令時(shí),根據(jù)該EPG文件所屬的樣本設(shè)置的信息結(jié)構(gòu)轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,處理模塊從存儲(chǔ)模塊讀取EPG信息,把EPG信息結(jié)構(gòu)由存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的信息結(jié)構(gòu),然后根據(jù)樣本生成文件;最后,字段適配模塊把字段轉(zhuǎn)化為樣本字段,輸出最終的EPG文件。
9.根據(jù)權(quán)利要求5或8所述的EPG適配方法,其特征在于,所述步驟102)進(jìn)一步包含: 401)字段適配模塊接收到輸出EPG文件指令后,進(jìn)入402); 402)字段適配模塊從存儲(chǔ)模塊讀取要輸出的EPG文件信息,進(jìn)入403); 403)字段適配模塊查找該EPG文件所屬的樣本,根據(jù)樣本設(shè)置的信息轉(zhuǎn)化方式調(diào)用對(duì)應(yīng)的處理模塊,一般而言,文件格式為TXT的EPG文件,將調(diào)用鏈?zhǔn)教幚砟K進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入404),文件格式為XLS的EPG文件,將調(diào)用表式處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入406),文件格式為JSON和XML的EPG文件,將調(diào)用樹形處理模塊進(jìn)行轉(zhuǎn)化EPG信息格式并生成文件,進(jìn)入408); 404)鏈?zhǔn)教幚砟K把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為鏈?zhǔn)浇Y(jié)構(gòu),進(jìn)入405); 405)鏈?zhǔn)教幚砟K根據(jù)樣本生成文件,進(jìn)入410); 406)表式處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為表式結(jié)構(gòu),進(jìn)入407); 407)表式處理模塊根據(jù)樣本生成文件,進(jìn)入410); 408)樹形處理模塊把存儲(chǔ)的樹形結(jié)構(gòu)轉(zhuǎn)化為樣本的樹形結(jié)構(gòu),進(jìn)入409); 409)樹形處理模塊根據(jù)樣本生成文件,進(jìn)入410); 410)字段適配模塊根據(jù)樣本 設(shè)置把字段翻譯成輸出EPG文件對(duì)應(yīng)的字段,進(jìn)入411); 411)輸出最終的EPG文件,流程執(zhí)行完畢。
【文檔編號(hào)】H04N21/254GK103888790SQ201210564497
【公開日】2014年6月25日 申請(qǐng)日期:2012年12月21日 優(yōu)先權(quán)日:2012年12月21日
【發(fā)明者】劉學(xué), 董微, 程鋼, 靳巾 申請(qǐng)人:中國(guó)科學(xué)院聲學(xué)研究所, 上海尚恩華科網(wǎng)絡(luò)科技股份有限公司