數(shù)據(jù)處理方法與裝置制造方法
【專利摘要】本發(fā)明公開一種數(shù)據(jù)處理方法與裝置,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定,該數(shù)據(jù)處理方法包括:讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù);獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁定數(shù)據(jù)的容器;解析所述標(biāo)簽得到所述標(biāo)簽的屬性;根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù);調(diào)用所述綁定數(shù)據(jù)并顯示在所述HTML文件對應(yīng)的WEB頁面上。采用本發(fā)明的技術(shù)方案,在XML和HTML交互的應(yīng)用開發(fā)中,只需通過簡單的配置調(diào)用,就可實(shí)現(xiàn)XML數(shù)據(jù)和HTML的綁定的問題,從而達(dá)到減少成本,加快開發(fā)速度的目的。
【專利說明】數(shù)據(jù)處理方法與裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,更具體的,涉及一種數(shù)據(jù)處理方法與裝置。
【背景技術(shù)】
[0002] 可擴(kuò)展標(biāo)記語言(Extensible Markup Language, XML),用于標(biāo)記電子文件使其具 有結(jié)構(gòu)性的標(biāo)記語言,可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對自己的標(biāo)記語 言進(jìn)行定義的源語言。XML是標(biāo)準(zhǔn)通用標(biāo)記語言(SGML)的子集,非常適合Web傳輸。XML 提供統(tǒng)一的方法來描述和交換獨(dú)立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)。由于XML數(shù)據(jù)格式 的簡單、易用,越來越多的應(yīng)用已經(jīng)使用XML作為中間格式來傳輸和存儲數(shù)據(jù),其焦點(diǎn)是數(shù) 據(jù)的內(nèi)容。
[0003] 超文本標(biāo)記語言(Hypertext Markup Language, HTML),用于描述網(wǎng)頁文檔的一種 標(biāo)記語言。在現(xiàn)有WEB應(yīng)用中主要以HTML為核心技術(shù),HTML被設(shè)計(jì)用來顯示數(shù)據(jù),其焦點(diǎn) 是數(shù)據(jù)的外觀。
[0004] HTML旨在顯示信息,解決人機(jī)交互的問題,而XML旨在傳輸信息,解決機(jī)器之間的 交互問題。在網(wǎng)站制作過程中,這兩者缺一不可。
[0005] 那么HTML文件和XML文檔兩者間存在交互的難點(diǎn),目前現(xiàn)有工具沒有很好的解決 此問題。
[0006] 因此,現(xiàn)有技術(shù)中HTML文件和XML文檔兩者進(jìn)行交互時,存在開發(fā)困難等問題。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明提供一種數(shù)據(jù)處理方法與裝置,用于解決現(xiàn)有技術(shù)中,HTML文件和XML文 檔兩者進(jìn)行交互時,存在開發(fā)困難等問題。
[0008] 為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的第一個方面,提供一種數(shù)據(jù)處理方法,并采用以下 技術(shù)方案:
[0009] 數(shù)據(jù)處理方法,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定, 該數(shù)據(jù)處理方法包括:讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù);獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的 HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁定數(shù)據(jù)的容器;解析所述標(biāo)簽得到所述 標(biāo)簽的屬性;根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù);調(diào)用 所述綁定數(shù)據(jù)并顯示在所述HTML文件對應(yīng)的WEB頁面上。
[0010] 進(jìn)一步地,所述屬性包括:所述標(biāo)簽的已有屬性;和/或?yàn)樗鰳?biāo)簽定義的屬性。
[0011] 進(jìn)一步地,所述獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽包 括:通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括:input標(biāo) 簽、textarea標(biāo)簽和/或select標(biāo)簽。
[0012] 進(jìn)一步地,所述讀取預(yù)設(shè)XML文檔的元素對應(yīng)的元素數(shù)據(jù)包括:讀取所述預(yù)設(shè)XML 文檔的元素;使用所述XML文檔的基礎(chǔ)API從所述元素的輸入流中讀取所述元素數(shù)據(jù)。
[0013] 根據(jù)本發(fā)明的第二方面,提供一種數(shù)據(jù)處理裝置,并采用如下技術(shù)方案:
[0014] 數(shù)據(jù)處理裝置,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定,數(shù) 據(jù)處理裝置包括:讀取模塊,用于讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù);獲取模塊,用于獲取與所 述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁定數(shù)據(jù)的容 器;解析模塊,用于解析所述標(biāo)簽得到所述標(biāo)簽的屬性;生成模塊,用于根據(jù)所述屬性將所 述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù);調(diào)用模塊,用于調(diào)用所述綁定數(shù)據(jù)并顯 示在所述HTML文件對應(yīng)的WEB頁面上。
[0015] 進(jìn)一步地,所述屬性包括:所述標(biāo)簽已有的屬性;和/或根據(jù)所述XML文檔為所述 標(biāo)簽定義的屬性。
[0016] 進(jìn)一步地,所述獲取模塊包括:掃描模塊,用于通過瀏覽器函數(shù)掃描所述HTML文 件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括:input標(biāo)簽、textarea標(biāo)簽和/或select標(biāo)簽。
[0017] 進(jìn)一步地,所述讀取模塊包括:第一讀取子模塊,用于讀取所述預(yù)設(shè)XML文檔的元 素;第二讀取子模塊,用于使用所述XML文檔的基礎(chǔ)API從所述元素的輸入流中讀取所述元 素數(shù)據(jù)。
[0018] 根據(jù)本發(fā)明的第三個方面,提供又一種數(shù)據(jù)處理方法,并采用如下技術(shù)方案:
[0019] 數(shù)據(jù)處理方法,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定,該 數(shù)據(jù)處理方法包括:讀取預(yù)設(shè)XML文檔的元素;獲取與所述預(yù)設(shè)XML文檔對應(yīng)的預(yù)設(shè)HTML 文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁定數(shù)據(jù)的容器;解析所述標(biāo)簽得到所述標(biāo)簽 的屬性;根據(jù)所述屬性將所述標(biāo)簽中的數(shù)據(jù)與所述元素拼接,生成所述綁定數(shù)據(jù);調(diào)用所 述綁定數(shù)據(jù)并顯示在所述XML文檔中。
[0020] 進(jìn)一步地,所述獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽包 括:通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括:input標(biāo) 簽、textarea標(biāo)簽和/或select標(biāo)簽。
[0021] 根據(jù)本發(fā)明的第四個方面,提供又一種數(shù)據(jù)處理裝置,并采用如下技術(shù)方案:
[0022] 數(shù)據(jù)處理裝置,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定, 該數(shù)據(jù)處理裝置包括:讀取模塊,用于讀取預(yù)設(shè)XML文檔的元素;獲取模塊,用于獲取與所 述預(yù)設(shè)XML文檔對應(yīng)的預(yù)設(shè)HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁定數(shù)據(jù)的 容器,稱作標(biāo)簽容器;解析模塊,用于解析所述標(biāo)簽容器得到所述標(biāo)簽容器的屬性;生成模 塊,用于根據(jù)所述屬性將所述標(biāo)簽容器中的屬性值與所述元素拼接,生成所述綁定數(shù)據(jù);調(diào) 用模塊,用于調(diào)用所述綁定數(shù)據(jù)并顯示在所述XML文檔中。
[0023] 進(jìn)一步地,所述獲取模塊包括:掃描模塊,用于通過瀏覽器函數(shù)掃描所述HTML文 件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括:input標(biāo)簽、textarea標(biāo)簽和/或select標(biāo)簽。
[0024] 本發(fā)明通過將XML文檔的元素數(shù)據(jù)與HTML文件進(jìn)行綁定,實(shí)現(xiàn)HTML文件和XML 文檔之間雙向的數(shù)據(jù)映射綁定,簡化使用XML的HTML開發(fā)工作,并能夠通過少量的程序修 改來便捷的適應(yīng)XML文檔結(jié)構(gòu)的變化,從而減小開發(fā)難度。
【專利附圖】
【附圖說明】
[0025] 附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí) 施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0026] 圖1表示本發(fā)明實(shí)施例所述的數(shù)據(jù)處理方法的流程圖;
[0027] 圖2表示本發(fā)明實(shí)施例所述的數(shù)據(jù)處理裝置的結(jié)構(gòu)示意圖;
[0028] 圖3表示本發(fā)明實(shí)施例所述的獲取模塊的結(jié)構(gòu)示意圖;
[0029] 圖4表示本發(fā)明實(shí)施例所述的讀取模塊的結(jié)構(gòu)示意圖;
[0030] 圖5表示本發(fā)明實(shí)施例所述的又一種數(shù)據(jù)處理方法的流程圖;
[0031] 圖6表示本發(fā)明實(shí)施例所述的又一種數(shù)據(jù)處理模塊的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0032] 以下結(jié)合附圖對本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明,但是本發(fā)明可以由權(quán)利要求限定 和覆蓋的多種不同方式實(shí)施。
[0033] 圖1表示本發(fā)明實(shí)施例所述的數(shù)據(jù)處理方法的流程圖。
[0034] 參見圖1所示,該數(shù)據(jù)處理方法包括:
[0035] SlOl :讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù);
[0036] S103 :獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽 用作存放綁定數(shù)據(jù)的容器;
[0037] S105 :解析所述標(biāo)簽得到所述標(biāo)簽的屬性;
[0038] S107 :根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù);
[0039] S109 :調(diào)用所述綁定數(shù)據(jù)并顯示在所述HTML文件對應(yīng)的WEB頁面上。
[0040] 在本實(shí)施例的上述技術(shù)方案中,步驟SlOl中的預(yù)設(shè)XML文檔為設(shè)計(jì)符合規(guī)范的 XML文檔,因?yàn)椴捎帽痉椒▽?shí)現(xiàn)的數(shù)據(jù)綁定的XML文檔需要符合XML設(shè)計(jì)規(guī)范。讀取該XML 文檔中的元素數(shù)據(jù),XML文檔包含XML元素,是從(且包括)開始標(biāo)簽直到(且包括)結(jié)束標(biāo) 簽的部分。例如< bookstore >,< price > 29. 99 < /price >,price 就是 XML 文檔中 < bookstore >的一個元素,而29. 99則是元素數(shù)據(jù)。
[0041] 在步驟S103中,HTML文件,是指,設(shè)計(jì)與該預(yù)設(shè)XML文檔結(jié)構(gòu)的元素相對應(yīng)的 HTML文件。XML文檔的元素類型包括簡單類型和復(fù)雜類型,簡單類型的值不能包含屬性或 子元素,復(fù)雜類型可以產(chǎn)生在其它元素中嵌套的效果,或者為元素增加屬性。HTML文件的標(biāo) 簽器類型包括:input標(biāo)簽、textarea標(biāo)簽以及select標(biāo)簽,可用作容器存放數(shù)據(jù)。
[0042] 在步驟S105中,解析所述標(biāo)簽得到所述標(biāo)簽的屬性,所述屬性包括input標(biāo) 簽,textarea標(biāo)簽,select標(biāo)簽的某一個屬性,其中,input標(biāo)簽是用于用戶輸入的標(biāo)簽, textarea標(biāo)簽是定義多行的文本輸入控件,select標(biāo)簽是支持自定義事件的標(biāo)簽,某一個 屬性需要指定,通過指定該屬性來全局自動綁定XML文檔中與該屬性匹配的元素數(shù)據(jù),這 種方法也稱作自動匹配模式。當(dāng)然也可以根據(jù)XML文檔中元素的屬性定義標(biāo)簽的屬性,以 此來進(jìn)行數(shù)據(jù)綁定,此種方法稱為指定匹配模式。對于先根據(jù)自動匹配模式執(zhí)行一次,然 后接著用指定匹配模式再次執(zhí)行的稱為混合模式。
[0043] 且上述三種綁定模式可重復(fù)執(zhí)行的,并且以自動匹配模式為優(yōu)先綁定模式。
[0044] 在步驟S107中,根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定 數(shù)據(jù),并在S109中通過調(diào)用所述綁定數(shù)據(jù)顯示在所述HTML文件對應(yīng)的WEB頁面上。
[0045] 針對上述三種模式,將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù)可用 具體二個例子說明,混合模式是自動匹配模式與指定匹配模式的結(jié)合,因此不需多余闡 述:
[0046] 自動匹配模式:
[0047] 指定input標(biāo)簽,textarea標(biāo)簽以及select標(biāo)簽的某一個屬性來自動綁定數(shù)據(jù)。 例如:
[0048] I. XML 文檔為:
【權(quán)利要求】
1. 一種數(shù)據(jù)處理方法,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定, 其特征在于,包括: 讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù); 獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放綁 定數(shù)據(jù)的容器; 解析所述標(biāo)簽得到所述標(biāo)簽的屬性; 根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù)據(jù); 調(diào)用所述綁定數(shù)據(jù)并顯示在所述HTML文件對應(yīng)的W邸頁面上。
2. 如權(quán)利要求1所述的數(shù)據(jù)處理方法,其特征在于,所述屬性包括: 所述標(biāo)簽的已有屬性;和/或 根據(jù)所述XML文檔為所述標(biāo)簽定義的屬性。
3. 如權(quán)利要求1所述的數(shù)據(jù)處理方法,其特征在于,所述獲取與所述預(yù)設(shè)XML文檔相對 應(yīng)的HTML文件的一個或多個標(biāo)簽包括: 通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括;input標(biāo) 簽、textarea標(biāo)簽和/或select標(biāo)簽。
4. 如權(quán)利要求1所述的數(shù)據(jù)處理方法,其特征在于,所述讀取預(yù)設(shè)XML文檔的元素對應(yīng) 的元素數(shù)據(jù)包括: 讀取所述預(yù)設(shè)XML文檔的元素; 使用所述XML文檔的基礎(chǔ)API從所述元素的輸入流中讀取所述元素數(shù)據(jù)。
5. -種數(shù)據(jù)處理裝置,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定, 其特征在于,包括: 讀取模塊,用于讀取預(yù)設(shè)XML文檔的元素數(shù)據(jù); 獲取模塊,用于獲取與所述預(yù)設(shè)XML文檔相對應(yīng)的HTML文件的一個或多個標(biāo)簽,所述 標(biāo)簽用作存放綁定數(shù)據(jù)的容器; 解析模塊,用于解析所述標(biāo)簽得到所述標(biāo)簽的屬性; 生成模塊,用于根據(jù)所述屬性將所述元素數(shù)據(jù)映射到所述標(biāo)簽中,生成所述綁定數(shù) 據(jù); 調(diào)用模塊,用于調(diào)用所述綁定數(shù)據(jù)并顯示在所述HTML文件對應(yīng)的W邸頁面上。
6. 如權(quán)利要求5所述的數(shù)據(jù)處理裝置,其特征在于,所述屬性包括: 所述標(biāo)簽已有的屬性;和/或 根據(jù)所述XML文檔為所述標(biāo)簽定義的屬性。
7. 如權(quán)利要求5所述的數(shù)據(jù)處理裝置,其特征在于,所述獲取模塊包括: 掃描模塊,用于通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽 包括;input標(biāo)簽、textarea標(biāo)簽和/或select標(biāo)簽。
8. 如權(quán)利要求5所述的數(shù)據(jù)處理裝置,其特征在于,所述讀取模塊包括: 第一讀取子模塊,用于讀取所述預(yù)設(shè)XML文檔的元素; 第二讀取子模塊,用于使用所述XML文檔的基礎(chǔ)API從所述元素的輸入流中讀取所述 元素數(shù)據(jù)。
9. 一種數(shù)據(jù)處理方法,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁定, 其特征在于,包括: 讀取預(yù)設(shè)XML文檔的元素; 獲取與所述預(yù)設(shè)XML文檔對應(yīng)的預(yù)設(shè)HTML文件的一個或多個標(biāo)簽,所述標(biāo)簽用作存放 綁定數(shù)據(jù)的容器; 解析所述標(biāo)簽得到所述標(biāo)簽的屬性; 根據(jù)所述屬性將所述標(biāo)簽中的屬性值與所述元素拼接,生成所述綁定數(shù)據(jù); 調(diào)用所述綁定數(shù)據(jù)并顯示在所述XML文檔中。
10. 如權(quán)利要求9所述的數(shù)據(jù)處理方法,其特征在于,所述獲取與所述預(yù)設(shè)XML文檔相 對應(yīng)的HTML文件的一個或多個標(biāo)簽包括: 通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽包括;input標(biāo) 簽、textarea標(biāo)簽和/或select標(biāo)簽。
11. 一種數(shù)據(jù)處理裝置,用于可擴(kuò)展標(biāo)記語言與超文本語言HTML交互時進(jìn)行數(shù)據(jù)綁 定,其特征在于,包括: 讀取模塊,用于讀取預(yù)設(shè)XML文檔的元素; 獲取模塊,用于獲取與所述預(yù)設(shè)XML文檔對應(yīng)的預(yù)設(shè)HTML文件的一個或多個標(biāo)簽,所 述標(biāo)簽用作存放綁定數(shù)據(jù)的容器; 解析模塊,用于解析所述標(biāo)簽得到所述標(biāo)簽的屬性; 生成模塊,用于根據(jù)所述屬性將所述標(biāo)簽中的屬性值與所述元素拼接,生成所述綁定 數(shù)據(jù); 調(diào)用模塊,用于調(diào)用所述綁定數(shù)據(jù)并顯示在所述XML文檔中。
12. 如權(quán)利要求11所述的數(shù)據(jù)處理裝置,其特征在于,所述獲取模塊包括: 掃描模塊,用于通過瀏覽器函數(shù)掃描所述HTML文件的一個或多個所述標(biāo)簽,所述標(biāo)簽 包括;input標(biāo)簽、textarea標(biāo)簽和/或select標(biāo)簽。
【文檔編號】G06F17/30GK104462090SQ201310418396
【公開日】2015年3月25日 申請日期:2013年9月13日 優(yōu)先權(quán)日:2013年9月13日
【發(fā)明者】李泉, 程任波, 程謙龍, 吳志偉 申請人:方正信息產(chǎn)業(yè)控股有限公司, 上海方正數(shù)字出版技術(shù)有限公司