專利名稱:應(yīng)用dom解析引擎的數(shù)字電視hsml解析方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字家庭技術(shù)領(lǐng)域,具體涉及一種應(yīng)用DOM解析引擎的數(shù)字電視HSML 解析方法及系統(tǒng)。
背景技術(shù):
近年來,數(shù)字家庭技術(shù)的發(fā)展越來越快,然而,數(shù)字電視在互動(dòng)業(yè)務(wù)方面仍存在不 足?,F(xiàn)存的數(shù)字電視業(yè)務(wù)中,除視頻點(diǎn)播、節(jié)目導(dǎo)視等傳統(tǒng)的基本的互動(dòng)業(yè)務(wù)外,其他互動(dòng) 業(yè)務(wù)較少,在電視商務(wù)、信息服務(wù)等方面仍需加強(qiáng)。其主要原因是目前還缺乏一個(gè)針對數(shù)字 電視互動(dòng)業(yè)務(wù)服務(wù)信息的規(guī)范,嚴(yán)重阻礙了平臺提供商與眾多內(nèi)容服務(wù)提供商之間的信息 對接。數(shù)字電視交互服務(wù)標(biāo)記語言(HSML)標(biāo)準(zhǔn)對XML語言進(jìn)行擴(kuò)展,制定針對數(shù)字電視 交互服務(wù)的標(biāo)記語言,實(shí)現(xiàn)對面向三網(wǎng)融合的數(shù)字電視交互服務(wù)進(jìn)行業(yè)務(wù)呈現(xiàn)及信息交互 描述,便于采用虛擬化技術(shù)對所需要的跨域共享與集成服務(wù)內(nèi)容進(jìn)行功能提取與抽象,用 以突破當(dāng)前交互服務(wù)內(nèi)容與數(shù)字電視平臺高耦合度的這一瓶頸,實(shí)現(xiàn)數(shù)字電視產(chǎn)業(yè)高端增 值業(yè)務(wù)的高速發(fā)展。然而,當(dāng)前的HSML技術(shù)還沒有完善,在HSML解析引擎中,沒有一種有效的解析引 擎方法能夠快速、方便地對HSML進(jìn)行解析。DOM是以層次結(jié)構(gòu)組織的節(jié)點(diǎn)或信息片斷的集合。這個(gè)層次結(jié)構(gòu)允許開發(fā)人員在 樹中尋找特定信息。分析該結(jié)構(gòu)通常需要加載整個(gè)文檔和構(gòu)造層次結(jié)構(gòu),然后才能做任何 工作。由于它是基于信息層次的,因而DOM被認(rèn)為是基于樹或基于對象的。DOM以及廣義的 基于樹的處理具有不可比擬的優(yōu)點(diǎn)。由于樹在內(nèi)存中是持久的,因此可以修改它以便應(yīng)用 程序能對數(shù)據(jù)和結(jié)構(gòu)作出更改。它還可以在任何時(shí)候在樹中上下導(dǎo)航,而不是像SAX那樣 是一次性的處理。在對此方法的研究和實(shí)踐過程中,本發(fā)明的發(fā)明人發(fā)現(xiàn)由于DOM解析引擎具有如上的優(yōu)點(diǎn),如能提供一種方法,增加一種HSML2XML的解 析器,然后將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎中去,則能方便、快速地對HSML 進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析方 法及系統(tǒng),能夠方便、快速地對HSML進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。本發(fā)明提供的技術(shù)方案如下本發(fā)明提供一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng)該系統(tǒng)包括HSML2XML解析引擎、DOM解析引擎和目標(biāo)文檔處理模塊;所述HSML2XML解析引擎,用于將數(shù)字電視交互服務(wù)標(biāo)記HSML語言解析成XML格 式的語言,然后將XML格式文檔發(fā)送給所述DOM解析引擎;
所述DOM解析引擎,用于讀取所述XML格式文檔并進(jìn)行解析,所述解析時(shí)遵循DOM 特有的樹模型的組織結(jié)構(gòu);所述目標(biāo)文檔處理模塊,用于將DOM解析引擎解析后的XML文檔轉(zhuǎn)化為能被機(jī)頂 盒識別的文檔,并發(fā)送給機(jī)頂盒處理。所述DOM解析引擎包含D0M解析機(jī)制模塊、DOM解析器、XML文檔模塊;所述DOM解析機(jī)制模塊中的DOM解析機(jī)制遵循DOM特有的樹模型的組織結(jié)構(gòu),通 過一種隨機(jī)訪問機(jī)制,使得應(yīng)用程序利用該接口可以訪問XML文檔中的數(shù)據(jù);所述DOM解析器,用于加載DOM解析機(jī)制制定解析規(guī)則,讀取XML文檔進(jìn)行解析;所述XML文檔模塊,用于存儲(chǔ)解析后的XML文檔。所述DOM解析器包含Document對象的操作,包括節(jié)點(diǎn)相關(guān)、屬性相關(guān)、字符串轉(zhuǎn)化 為XML和Xpath搜索節(jié)點(diǎn)四個(gè)部分。所述DOM解析器對Document對象的操作過程包括1)首先是獲得Document對象;2)在獲得Document對象之后,開始對Document對象進(jìn)行操作,首先是獲得 Document對象的節(jié)點(diǎn),包括根節(jié)點(diǎn)和子節(jié)點(diǎn),對這些節(jié)點(diǎn)進(jìn)行添加、刪除和修改的操作;3)在獲得對象節(jié)點(diǎn)后,獲得節(jié)點(diǎn)的屬性,;4)然后是字符串與XML之間的轉(zhuǎn)換,包括將字符串轉(zhuǎn)化為XML和將文檔或節(jié)點(diǎn)的 XML轉(zhuǎn)化為字符串。所述DOM解析器獲得Document對象包括通過讀取XML文件,獲得Document對 象;或者,通過解析XML形式的文本,得到Document對象;或者,主動(dòng)創(chuàng)建Document對象。本發(fā)明還提供一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析方法,包括1)進(jìn)入系統(tǒng);2)進(jìn)行編碼,編寫HSML文檔;3)系統(tǒng)對HSML文檔進(jìn)行處理,判斷此文檔是否出錯(cuò),如沒有出錯(cuò),進(jìn)入4);4)生成 HSML 文檔;;5)生成的HSML文檔發(fā)送給HSML2XML解析器進(jìn)行解析;6) HSML2XML解析器進(jìn)行判斷,判斷解析過程中有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò)誤,則進(jìn) 入7);7)生成XML文檔;8)將生成的XML文檔交給DOM解析引擎進(jìn)行處理,DOM解析引擎將對XML文檔進(jìn) 行解析;9) DOM解析器在解析的過程中進(jìn)行判斷,看有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò)誤,則進(jìn)入 10);10)生成目標(biāo)文檔;11)對目標(biāo)文檔進(jìn)行處理,生成可運(yùn)行于機(jī)頂盒操作系統(tǒng)的文檔;12)將上一步生成的文檔交給機(jī)頂盒操作系統(tǒng)進(jìn)行處理;13)結(jié)束。
上述技術(shù)方案可以看出由于本發(fā)明實(shí)施例采用一種將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎的方 法,增加一種HSML2XML的解析器,然后將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎中 去,因此可以方便、快速地對HSML進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以 根據(jù)這些附圖獲得其它的附圖。圖1是本發(fā)明將DOM應(yīng)用到HSML解析引擎的系統(tǒng)組織結(jié)構(gòu)圖;圖2是本發(fā)明將DOM應(yīng)用到HSML解析引擎的方法流程圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于 本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例提供一種將DOM解析弓丨擎應(yīng)用到數(shù)字電視HSML解析弓丨擎的方法,能 夠增加一種HSML2XML的解析器,然后將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎中去, 方便、快速地對HSML進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。以下結(jié)合附圖對本發(fā)明方案分別進(jìn)行詳細(xì)說明。圖1為本發(fā)明的將DOM應(yīng)用到HSML解析引擎的系統(tǒng)組織結(jié)構(gòu)圖。 如圖1所示,本系統(tǒng)的組織結(jié)構(gòu)主要包括三個(gè)部分HSML2XML解析引擎、DOM解析 引擎和目標(biāo)文檔處理模塊。HSML2XML解析引擎,主要負(fù)責(zé)將數(shù)字電視HSML語言解析成XML格式的語言,然后 將XML格式文檔交給DOM解析引擎處理。HSML跟XML語言比較類似,但在格式標(biāo)準(zhǔn)上是不 一樣的,所以在進(jìn)入DOM解析引擎之間要進(jìn)行HSML2XML解析,將HSML的文檔轉(zhuǎn)化為XML的 文檔。DOM解析引擎主要包含三個(gè)個(gè)部分D0M解析機(jī)制模塊、DOM解析器、XML文檔模塊。DOM解析機(jī)制模塊中的DOM解析機(jī)制遵循DOM特有的樹模型的組織結(jié)構(gòu),通過一種 隨機(jī)訪問機(jī)制,使得應(yīng)用程序利用該接口可以在任何時(shí)候訪問XML文檔中的任何一部分?jǐn)?shù) 據(jù),也可以對XML文檔中的數(shù)據(jù)進(jìn)行插入、刪除、修改、移動(dòng)等操作。DOM解析器一方面讀取XML文檔進(jìn)行解析,另一方面加載DOM解析機(jī)制制定解析規(guī) 則。其中,DOM解析器包含Document對象的操作,主要包括節(jié)點(diǎn)相關(guān)、屬性相關(guān)、字符串轉(zhuǎn) 化為XML和Xpath搜索節(jié)點(diǎn)四個(gè)部分。該過程包括1)首先是獲得Document對象,有三種方法可以獲得一是通過讀取XML文件, 獲得Document對象;二是通過解析XML形式的文本,得到Document對象;三是主動(dòng)創(chuàng)建 Document 對象。
2)在獲得Document對象之后,開始對Document對象進(jìn)行操作。首先是要獲得 Document對象的節(jié)點(diǎn),包括根節(jié)點(diǎn)和子節(jié)點(diǎn),也可以對這些節(jié)點(diǎn)進(jìn)行添加、刪除和修改的操作。3)在獲得對象節(jié)點(diǎn)后,要獲得節(jié)點(diǎn)的屬性。屬性相關(guān)可以是獲得節(jié)點(diǎn)下的某屬性, 也可以遍歷某節(jié)點(diǎn)的所有屬性。也可以對這些屬性進(jìn)行添加、刪除和修改的操作。4)然后是字符串與XML之間的轉(zhuǎn)換。包括將字符串轉(zhuǎn)化為XML和將文檔或節(jié)點(diǎn)的 XML轉(zhuǎn)化為字符串。DOM解析引擎中的XML文檔來自HSML2XML解析引擎,解析的XML文檔將交付給DOM 解析引擎進(jìn)行處理。XML文檔模塊,用于存儲(chǔ)解析后的XML文檔。本系統(tǒng)的第三個(gè)部分是目標(biāo)文檔處理模塊。目標(biāo)文檔處理模塊,用于將目標(biāo)文檔轉(zhuǎn)化為能被機(jī)頂盒識別的文檔。DOM解析器解 析后的目標(biāo)文檔不能為機(jī)頂盒操作系統(tǒng)所識別,所以在進(jìn)入機(jī)頂盒操作系統(tǒng)之前要由目標(biāo) 文檔處理模塊進(jìn)行目標(biāo)文檔的處理,將目標(biāo)文檔轉(zhuǎn)化為能被機(jī)頂盒識別的文檔,然后再交 由機(jī)頂盒操作系統(tǒng)處理。為進(jìn)一步說明本發(fā)明的具體操作方法,現(xiàn)結(jié)合圖2關(guān)于DOM解析引擎應(yīng)用到數(shù)字 電視HSML解析引擎的操作流程圖來進(jìn)行說明。如圖2所示,包括步驟1)首先開發(fā)人員進(jìn)入系統(tǒng)進(jìn)行開發(fā)工作。2)開發(fā)人員開始進(jìn)行編碼,編寫HSML文檔。3)然后系統(tǒng)開始對HSML文檔進(jìn)行處理,判斷此文檔是否出錯(cuò),如沒有出錯(cuò),進(jìn)入 4),如出錯(cuò),返回上一步。4)生成HSML文檔,進(jìn)入下一步。5)生成的HSML文檔將交給HSML2XML解析器進(jìn)行解析。6)然后HSML2XML解析器進(jìn)行判斷,判斷解析過程中有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò) 誤,則進(jìn)入7),如出錯(cuò),返回上一步。7)生成XML文檔,進(jìn)入下一步。8)將生成的XML文檔交給DOM解析引擎進(jìn)行處理,DOM解析引擎將對XML文檔進(jìn) 行解析。9) DOM解析器在解析的過程中進(jìn)行判斷,看有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò)誤,則進(jìn)入 10),如出錯(cuò),返回上一步。10)生成目標(biāo)文檔,進(jìn)入下一步。11)對目標(biāo)文檔進(jìn)行處理,生成可運(yùn)行于機(jī)頂盒操作系統(tǒng)的文檔。12)將上一步生成的文檔交給機(jī)頂盒操作系統(tǒng)進(jìn)行處理。13)結(jié)束。綜上所述由于本發(fā)明實(shí)施例采用一種將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎的方 法,增加一種HSML2XML的解析器,然后將DOM解析引擎應(yīng)用到數(shù)字電視HSML解析引擎中 去,因此可以方便、快速地對HSML進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。
需要說明的是,上述裝置和系統(tǒng)內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由 于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處 不再贅述。本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可 以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存 儲(chǔ)介質(zhì)可以包括只讀存儲(chǔ)器(ROM,Read Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁盤或光盤等。以上對本發(fā)明實(shí)施例所提供的一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析方法 及系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述, 以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一 般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所 述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng),其特征在于該系統(tǒng)包括HSML2XML解析引擎、DOM解析引擎和目標(biāo)文檔處理模塊;所述HSML2XML解析引擎,用于將數(shù)字電視交互服務(wù)標(biāo)記HSML語言解析成XML格式的語言,然后將XML格式文檔發(fā)送給所述DOM解析引擎;所述DOM解析引擎,用于讀取所述XML格式文檔并進(jìn)行解析,所述解析時(shí)遵循DOM特有的樹模型的組織結(jié)構(gòu);所述目標(biāo)文檔處理模塊,用于將DOM解析引擎解析后的XML文檔轉(zhuǎn)化為能被機(jī)頂盒識別的文檔,并發(fā)送給機(jī)頂盒處理。
2.根據(jù)權(quán)利要求1所述的應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng),其特征在于 所述DOM解析引擎包含D0M解析機(jī)制模塊、DOM解析器、XML文檔模塊;所述DOM解析機(jī)制模塊中的DOM解析機(jī)制遵循DOM特有的樹模型的組織結(jié)構(gòu),通過一 種隨機(jī)訪問機(jī)制,使得應(yīng)用程序利用該接口訪問XML文檔中的數(shù)據(jù);所述DOM解析器,用于加載DOM解析機(jī)制制定解析規(guī)則,讀取XML文檔進(jìn)行解析; 所述XML文檔模塊,用于存儲(chǔ)解析后的XML文檔。
3.根據(jù)權(quán)利要求2所述的應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng),其特征在于 所述DOM解析器包含Document對象的操作,包括節(jié)點(diǎn)相關(guān)、屬性相關(guān)、字符串轉(zhuǎn)化為XML和Xpath搜索節(jié)點(diǎn)四個(gè)部分。
4.根據(jù)權(quán)利要求2或3所述的應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng),其特征在 于所述DOM解析器對Document對象的操作過程包括1)首先是獲得Document對象;2)在獲得Document對象之后,開始對Document對象進(jìn)行操作,首先是獲得Document 對象的節(jié)點(diǎn),包括根節(jié)點(diǎn)和子節(jié)點(diǎn),對這些節(jié)點(diǎn)進(jìn)行添加、刪除和修改的操作;3)在獲得對象節(jié)點(diǎn)后,獲得節(jié)點(diǎn)的屬性,;4)然后是字符串與XML之間的轉(zhuǎn)換,包括將字符串轉(zhuǎn)化為XML和將文檔或節(jié)點(diǎn)的XML 轉(zhuǎn)化為字符串。
5.根據(jù)權(quán)利要求4所述的應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng),其特征在于 所述DOM解析器獲得Document對象包括通過讀取XML文件,獲得Document對象;或者,通過解析XML形式的文本,得到Document對象;或者, 主動(dòng)創(chuàng)建Document對象。
6.一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析方法,其特征在于,包括1)進(jìn)入系統(tǒng);2)進(jìn)行編碼,編寫HSML文檔;3)系統(tǒng)對HSML文檔進(jìn)行處理,判斷此文檔是否出錯(cuò),如沒有出錯(cuò),進(jìn)入4);4)生成HSML文檔;;5)生成的HSML文檔發(fā)送給HSML2XML解析器進(jìn)行解析;6)HSML2XML解析器進(jìn)行判斷,判斷解析過程中有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò)誤,則進(jìn)入7);7)生成XML文檔;8)將生成的XML文檔交給DOM解析引擎進(jìn)行處理,DOM解析引擎將對XML文檔進(jìn)行解析;9)DOM解析器在解析的過程中進(jìn)行判斷,看有沒有發(fā)生錯(cuò)誤,如沒有錯(cuò)誤,則進(jìn)入10);10)生成目標(biāo)文檔;11)對目標(biāo)文檔進(jìn)行處理,生成可運(yùn)行于機(jī)頂盒操作系統(tǒng)的文檔;12)將上一步生成的文檔交給機(jī)頂盒操作系統(tǒng)進(jìn)行處理;13)結(jié)束。
全文摘要
本發(fā)明公開了一種應(yīng)用DOM解析引擎的數(shù)字電視HSML解析系統(tǒng)及方法。該系統(tǒng)包括HSML2XML解析引擎、DOM解析引擎和目標(biāo)文檔處理模塊;所述HSML2XML解析引擎,用于將數(shù)字電視交互服務(wù)標(biāo)記HSML語言解析成XML格式的語言,然后將XML格式文檔發(fā)送給所述DOM解析引擎;所述DOM解析引擎,用于讀取所述XML格式文檔并進(jìn)行解析,所述解析時(shí)遵循DOM特有的樹模型的組織結(jié)構(gòu);所述目標(biāo)文件處理模塊,用于將DOM解析引擎解析后的XML文檔轉(zhuǎn)化為能被機(jī)頂盒識別的文檔,并發(fā)送給機(jī)頂盒處理。本發(fā)明提供的技術(shù)方案能方便、快速地對HSML進(jìn)行解析,縮短開發(fā)人員的開發(fā)周期和程序運(yùn)行時(shí)間。
文檔編號H04N5/44GK101986303SQ20101052882
公開日2011年3月16日 申請日期2010年10月29日 優(yōu)先權(quán)日2010年10月29日
發(fā)明者朱建寶, 羅笑南, 鐘浩清, 陳任 申請人:廣東星海數(shù)字家庭產(chǎn)業(yè)技術(shù)研究院有限公司