欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

編解碼設(shè)備、方法和計(jì)算機(jī)程序的制作方法

文檔序號(hào):6476450閱讀:157來源:國(guó)知局
專利名稱:編解碼設(shè)備、方法和計(jì)算機(jī)程序的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及用于對(duì)XML數(shù)據(jù)進(jìn)行編碼和解碼的信息處理 技術(shù)。
背景技術(shù)
由于諸如XML文檔和HTML文檔等結(jié)構(gòu)化文檔為文本格 式,因此分析這些結(jié)構(gòu)化文檔的處理設(shè)備主要以文本格式進(jìn)行 對(duì)結(jié)構(gòu)化文檔的讀/寫和保存等。然而,由于結(jié)構(gòu)化文檔包括冗 余數(shù)據(jù),對(duì)作為文本數(shù)據(jù)的結(jié)構(gòu)化文檔進(jìn)行讀/寫會(huì)占用計(jì)算機(jī) 的時(shí)間。因此,近年來開發(fā)了 一種稱為二進(jìn)制XML的4支術(shù),該 技術(shù)通過以二進(jìn)制數(shù)據(jù)格式表示/處理結(jié)構(gòu)化文檔來減小數(shù)據(jù) 大小。注意,XML表示可擴(kuò)展標(biāo)記"i吾言(extensible Markup Language), 而HTML表示超文本才示i己i吾言(HyperText Markup Language)。例如,利用由Sun Microsystems//^司開發(fā)的Fast Infoset,通 過按照包括在XML數(shù)據(jù)中的諸如要素名稱和屬性名稱等詞匯 出現(xiàn)在XML數(shù)據(jù)中的順序?yàn)檫@些詞匯分配編號(hào),來對(duì)它們進(jìn)行 編碼。這能夠減小XML數(shù)據(jù)的大小。將表示代碼和詞匯之間的 對(duì)應(yīng)關(guān)系的表稱為編碼表。注意,在通過如下鏈接所獲得的頁(yè) 面中詳細(xì)討i侖了 Fast Infoset:http:〃www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetai? CSNUMBER=41327&scopelist=PROGRAMME。當(dāng)屬性值和要素內(nèi)容中存在由諸如逗號(hào)和空格等分割符所 分割的數(shù)值陣列時(shí),由KDDI開發(fā)的XEUS利用分隔符來分割 X M L數(shù)據(jù)并且對(duì)數(shù)值進(jìn)行解碼,而不是將整個(gè)數(shù)據(jù)編碼為字符串。這使得能夠有效壓縮XML數(shù)據(jù)。注意,XEUS表示利用統(tǒng) 一頁(yè)的XML文檔編;馬(XML document Encoding with Uniformed Sheet)。利用在日本特開2005-215951以及在通過MPEG開發(fā)的BiM 中公開的結(jié)構(gòu),對(duì)用于定義結(jié)構(gòu)化文檔的語(yǔ)法(文檔結(jié)構(gòu))的 XHTML和SVG模式中所包括的數(shù)據(jù)的類型信息進(jìn)行分析,并且 對(duì)屬性值和要素內(nèi)容的數(shù)據(jù)類型進(jìn)行最優(yōu)編碼。這使得能夠有 效壓縮XML數(shù)據(jù)。注意,MPEG表示運(yùn)動(dòng)圖像專家組(Moving Picture Experts Group) 。 BiM表示XML的二進(jìn)制MPEG格式 (Binary MPEG format for XML)??蓮娜缦隆哆B4妄獲耳又關(guān)于BiM的 技術(shù)信息http:〃www.iso.ch/iso/en/prods-services/popstds/mpeg.html。SVG表示可伸縮矢量圖形(Scalable Vector Graphics)。 XHTML表示可擴(kuò)展超文本標(biāo)記語(yǔ)言(Extensible HyperText Markup Language)。然而,使用了傳統(tǒng)技術(shù)的XHTML和SVG等的模式對(duì)結(jié)構(gòu)化 文檔的普通語(yǔ)法(文檔結(jié)構(gòu))進(jìn)行定義。因此,由于傳統(tǒng)技術(shù)使 用了對(duì)結(jié)構(gòu)化文檔的普通語(yǔ)法進(jìn)行定義的模式信息,因而即使 在相同文檔結(jié)構(gòu)的XML數(shù)據(jù)重復(fù)出現(xiàn)時(shí),也不對(duì)應(yīng)用專用 (application-specific)文檔結(jié)構(gòu)進(jìn)行編碼。例如,假定存在如圖IA中所示的以SVG寫的結(jié)構(gòu)化文檔。 圖1A示出了相同文檔結(jié)構(gòu)重復(fù)出現(xiàn)的結(jié)構(gòu)化文檔。在圖IA中, 附圖標(biāo)記9101至9103具有相同的文檔結(jié)構(gòu),只有諸如屬性值和 字符串等變量不同。在該結(jié)構(gòu)化文檔中,被稱為"circle"的空要 素具有多個(gè)屬性值cx、 cy、 r、 fill、 stroke和stroke-width。 "text" 要素出現(xiàn)在該"circle"要素之后。該"text"要素具有多個(gè)屬性值 x、 y和font-size,并且包括作為要素內(nèi)容的字符串。如圖IB中的附圖標(biāo)記9104所示,假定包括在該結(jié)構(gòu)化文檔中的"circle"要 素和"text"要素表示按鈕。利用傳統(tǒng)的二進(jìn)制XML技術(shù),通過使用SVG模式對(duì)"circle" 要素中屬性值的數(shù)據(jù)類型進(jìn)行分析并且對(duì)這些數(shù)據(jù)類型進(jìn)行編 碼,來生成諸如圖2中的編碼表,并且對(duì)諸如圖3和圖4中所示的 結(jié)構(gòu)化文檔進(jìn)行編碼。然而,當(dāng)具有圖lA中的按鈕對(duì)象(button object)時(shí),由于沒有為重復(fù)出現(xiàn)的應(yīng)用專用文檔結(jié)構(gòu)分配代碼, 因此數(shù)據(jù)大小的減小有限。圖2示出使用傳統(tǒng)的二進(jìn)制XML技術(shù)生成的編碼表。圖3和 4示出使用傳統(tǒng)的二進(jìn)制X M L技術(shù)進(jìn)行編碼的編碼后文檔。#寸 用傳統(tǒng)的結(jié)構(gòu),如圖2至圖4所示,為每個(gè)要素名稱和屬性名稱 分配代碼,而不考慮在用于編碼的結(jié)構(gòu)化文檔中重復(fù)使用了相 同的文檔結(jié)構(gòu),如圖1A中所示。因此,對(duì)于使用傳統(tǒng)的編碼方 法所生成的編碼后文檔,仍然存在進(jìn) 一 步減小數(shù)據(jù)大小的空間。發(fā)明內(nèi)容考慮到上述問題做出了本發(fā)明,并且本發(fā)明的目的是提供 一種使得結(jié)構(gòu)化文檔能夠被編碼為非常小的數(shù)據(jù)大小的技術(shù)。根據(jù)要發(fā)明的一方面, 一種信息處理設(shè)備,包括讀出單 元,用于從存儲(chǔ)單元讀出對(duì)應(yīng)關(guān)系信息,其中所述對(duì)應(yīng)關(guān)系信 息包括結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)和用于對(duì)所述文檔結(jié)構(gòu)進(jìn)行編碼 的第一代碼;驗(yàn)證單元,用于基于所述對(duì)應(yīng)關(guān)系信息中所包括 的所述文檔結(jié)構(gòu),來驗(yàn)證包括在要處理的結(jié)構(gòu)化文檔中的部分 的語(yǔ)法是否有效;以及編碼單元,用于針對(duì)被所述驗(yàn)證單元驗(yàn) 證為語(yǔ)法有效的部分,使用所述第一代碼來對(duì)所述結(jié)構(gòu)化文檔 進(jìn)行編碼。根據(jù)本發(fā)明的另 一方面, 一種信息處理設(shè)備的控制方法,所述信息處理設(shè)備通過對(duì)結(jié)構(gòu)化文檔進(jìn)行編碼來生成編碼后文檔,所述控制方法包括以下步驟讀出單元,用于從存儲(chǔ)單元 讀出對(duì)應(yīng)關(guān)系信息,其中所述對(duì)應(yīng)關(guān)系信息包括結(jié)構(gòu)化文檔的 文檔結(jié)構(gòu)和用于對(duì)所述文檔結(jié)構(gòu)進(jìn)行編碼的第一代碼;驗(yàn)證單 元,用于基于所述對(duì)應(yīng)關(guān)系信息中所包括的所述文檔結(jié)構(gòu),來 驗(yàn)證包括在要處理的結(jié)構(gòu)化文檔中的部分的語(yǔ)法是否有效;以 及編碼單元,用于針對(duì)在所述馬全證步驟中祐z瞼證為語(yǔ)法有效的 部分,使用所述第一代碼來對(duì)所述結(jié)構(gòu)化文檔進(jìn)行編碼。根據(jù)下面(參考附圖)對(duì)示例性實(shí)施例的說明,本發(fā)明的其 它特征將變得清楚。


圖1A和圖1B示出相同文檔結(jié)構(gòu)重復(fù)出現(xiàn)的結(jié)構(gòu)化文檔。 圖2示出使用傳統(tǒng)的二進(jìn)制XML技術(shù)生成的編碼表。 圖3和圖4示出使用傳統(tǒng)的二進(jìn)制XML技術(shù)進(jìn)行編碼的編 碼后文檔。圖5是示出包括信息處理設(shè)備的系統(tǒng)的概況的結(jié)構(gòu)圖。 圖6是示出PC的結(jié)構(gòu)的框圖。圖7示出與相同文檔結(jié)構(gòu)重復(fù)出現(xiàn)的XML數(shù)據(jù)相關(guān)的以 RELAX NG來寫的才莫式。圖8示出除按鈕對(duì)象之外還定義了用于接受用戶的文本輸 入的文本字段(textfield)對(duì)象的例子。圖9A和9B是示出用于對(duì)文檔結(jié)構(gòu)進(jìn)行編碼的處理過程的 流程圖。圖10是詳細(xì)示出在步驟S103中執(zhí)行的處理過程的流程圖。 圖11示出基于按鈕對(duì)象的模式所生成的詞匯。 圖12示出編碼表。圖13是示出用于驗(yàn)證XML數(shù)據(jù)是否為重復(fù)出現(xiàn)的內(nèi)容模 型的處理過程的流程圖。圖14示出在進(jìn)行了 "系列編碼處理之后的編碼表。圖15、圖16和圖17示出在進(jìn)行了一系列編碼處理之后的存 儲(chǔ)在內(nèi)部存儲(chǔ)器中的編碼后文檔。圖18是示出用于對(duì)編碼后文檔進(jìn)行解碼的處理過程的流程圖。
具體實(shí)施方式
在下文中,將參考

根據(jù)本實(shí)施例的編碼設(shè)備(信息 處理設(shè)備)和解碼設(shè)備的示例性結(jié)構(gòu)。為了筒單,盡管可由分開 的設(shè)備來實(shí)現(xiàn)編碼設(shè)備和解碼設(shè)備,但是在本實(shí)施例中將示意 性地假定由相同的信息處理設(shè)備來實(shí)現(xiàn)編碼i殳備和解碼設(shè)備。 本實(shí)施例中所說明的構(gòu)成元件只是示意性地,而無意使本發(fā)明 的范圍僅限于這些構(gòu)成元件。信息處理設(shè)備的結(jié)構(gòu)圖5是示出包括根據(jù)本實(shí)施例的信息處理設(shè)備的系統(tǒng)的概 況的結(jié)構(gòu)圖。在圖5中,作為根據(jù)本實(shí)施例的信息處理設(shè)備的個(gè) 人計(jì)算機(jī)(PC)101與局域網(wǎng)(LAN)102連接。數(shù)字照相機(jī)103、打 印機(jī)104和文件服務(wù)器105也與LAN 102連接。圖6是示出作為根據(jù)本實(shí)施例的信息處理設(shè)備的PC 101的 結(jié)構(gòu)的框圖。在圖6中,CPU201是控制整個(gè)設(shè)備的系統(tǒng)控制單 元。ROM 202是存儲(chǔ)CPU的控制程序和各種固定數(shù)據(jù)的存儲(chǔ)設(shè) 備。由SRAM或DRAM等構(gòu)成的RAM 203是用于存^f諸程序控制 變量等的存儲(chǔ)設(shè)備。各種設(shè)置參數(shù)和工作緩沖器也存儲(chǔ)在RAM數(shù)據(jù)和圖像數(shù)據(jù)等的數(shù)據(jù)文件的存儲(chǔ)設(shè)備。由鍵盤、鼠標(biāo)或觸摸板等構(gòu)成的操作單元2 0 5是操作者用來進(jìn)行各種輸入操作的 指示輸入設(shè)備。顯示單元206是諸如電視機(jī)等顯示圖像的顯示設(shè) 備。LAN I/F 207是用于與LAN線208連接的接口 。 USB I/F 209 是用于與USB線210連接的接口 。信息處理設(shè)備,但是本發(fā)明不限于該結(jié)構(gòu)。例如,可由工作站 (WS)或個(gè)人數(shù)字助理(PDA)等來實(shí)現(xiàn)4艮據(jù)本實(shí)施例的信息處理 設(shè)備。并且,為了方便,本實(shí)施例描述了由單個(gè)設(shè)備來實(shí)現(xiàn)根據(jù) 本實(shí)施例的信息處理設(shè)備的結(jié)構(gòu)。然而,可通過資源分布在多 個(gè)設(shè)備的結(jié)構(gòu)來實(shí)現(xiàn)根據(jù)本實(shí)施例的信息處理設(shè)備。例如,可 將存儲(chǔ)和計(jì)算資源分布到多個(gè)設(shè)備??商娲?,可以將資源分 布到在信息處理設(shè)備上虛擬地實(shí)現(xiàn)的各個(gè)組成元件,并且并行 地進(jìn)行處理。在下文中,將說明與相同文檔結(jié)構(gòu)重復(fù)出現(xiàn)的、如具有圖 1A中的按4丑對(duì)象9101至9103的結(jié)構(gòu)化文檔相關(guān)的,通過對(duì)實(shí)際 文檔結(jié)構(gòu)進(jìn)行編碼來減小數(shù)據(jù)大小的方法。注意,盡管在本實(shí) 施例中假定對(duì)作為示例性結(jié)構(gòu)化文檔的XML數(shù)據(jù)進(jìn)行處理,但 是本發(fā)明不限于該結(jié)構(gòu)。模式(Schema)圖7示出與相同文檔結(jié)構(gòu)重復(fù)出現(xiàn)的、如圖1 A示例的XML 數(shù)據(jù)相關(guān)的,以RELAX NG (REgular LAnguage for XML Next Generation,用于下 一代XML的規(guī)則語(yǔ)言)來寫的才莫式。需要在 編碼之前基于結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)來創(chuàng)建該模式。根據(jù)本實(shí) 施例的信息處理設(shè)備(P C 101)基于該模式對(duì)包括重復(fù)出現(xiàn)的文 檔結(jié)構(gòu)的結(jié)構(gòu)化文檔進(jìn)行編碼。圖7中所示的模式使用RELAX NG中的"define"要素分別定義構(gòu)成701和702中單個(gè)按鈕對(duì)象的"circle"要素和"text"要素的 模式。使用RELAX NG中的"element"要素來定義這些"circle"和 "text"要素(703, 704)。使用RELAX NG中的"attribute"要素來定 義"circle"和"text"要素的屬性。在此,將包括在"circle"要素中 的屬性cx、 cy、 r和stroke-width的屬性值的數(shù)據(jù)類型定義為 "double"(705-708),而將屬性fill和stroke的屬性值的數(shù)據(jù)類型定 義為"string,,(709 , 710)。在W3C推薦(W3C recommendation) "XML Schema Part 2: Datatypes Second Edition" (http:〃www. w3.org/TR/2004/REC-xmlschema-2-20041028/dataty pes.html)中定義了各種數(shù)據(jù)類型。將包括在"text"要素中的屬性 x、 y和font-size的屬性值的數(shù)據(jù)類型定義為"double"(711-713)。 注意,在本實(shí)施例中,將諸如屬性值和要素內(nèi)容等的數(shù)據(jù)統(tǒng)稱 為變量。
如果存在除由"circle"和"texf,要素構(gòu)成的按鈕對(duì)象以外的 對(duì)象,則將那些對(duì)象的模式定義為不同的"define"要素的子要素 (subelement)。圖8示出了除上述按鈕對(duì)象之外還定義了用于接 受用戶的文本輸入的文本字段對(duì)象的例子。在圖8中,附圖標(biāo)記 801表示文本字段的對(duì)象定義。如圖8所示,可以通過設(shè)置任意 數(shù)量的"define,,要素來定義對(duì)象的多個(gè)重復(fù)出現(xiàn)的文本結(jié)構(gòu)。
在此,在本實(shí)施例中將RELAX NG描述為模式語(yǔ)言的例子, 然而還可使用諸如DTD(文檔類型定義)和XML模式(W3C XML 模式)等的其它模式語(yǔ)言??蛇x地,可使用模式速記法(shorthand) (http:〃www.oasis-open.org/committees/relax-ng/compact-200211 21.html)。
編碼結(jié)構(gòu)化文檔
然后,將參考圖9A和圖9B說明由PC 101針對(duì)相同文檔結(jié)構(gòu) 重復(fù)出現(xiàn)的結(jié)構(gòu)化文檔所進(jìn)行的用于對(duì)實(shí)際文檔結(jié)構(gòu)進(jìn)行編碼的過程。圖9A和9B是示出用于對(duì)文檔結(jié)構(gòu)進(jìn)行編碼的處理過程 的流程圖。在包括在作為根據(jù)本實(shí)施例的信息處理設(shè)備的PC 101中的CPU 201的控制下,執(zhí)行下面的處理。
當(dāng)開始步驟S101中的處理時(shí),首先,從存儲(chǔ)單元204等中 讀出如圖7中所示的要處理的模式,對(duì)其進(jìn)行分析并且將其存儲(chǔ) 在內(nèi)部存儲(chǔ)器(步驟S102)。
然后,使用存儲(chǔ)在內(nèi)部存儲(chǔ)器中的模式的數(shù)據(jù)來對(duì)重復(fù)出 現(xiàn)的內(nèi)容模型進(jìn)行編碼(步驟S103)。現(xiàn)在將參考圖IO詳細(xì)說明程圖。
當(dāng)在步驟S201中開始(步驟S103的)處理時(shí),首先,針對(duì)存 儲(chǔ)在內(nèi)部存儲(chǔ)器中的模式,對(duì)各個(gè)"define"要素下用于定義重復(fù) 出現(xiàn)的內(nèi)容模型的模式進(jìn)行分析(步驟S202)。然后,將"define"
要素下的模式存儲(chǔ)在內(nèi)部存儲(chǔ)器中,作為編碼表中的詞匯(步驟
5203) 。圖ll示出基于圖7中所示的按鈕對(duì)象的模式所生成的詞 匯。如圖ll中所示,"define"要素下用于定義按鈕對(duì)象的模式的 內(nèi)容與詞匯相對(duì)應(yīng)。
然后,將在步驟S203中生成的詞匯添加到編碼表(步驟
5204) 。也就是說,在步驟S202至S204中,對(duì)表示結(jié)構(gòu)化文檔的 文檔結(jié)構(gòu)的模式信息進(jìn)行分析,為文檔結(jié)構(gòu)分配代碼,并且基 于文檔結(jié)構(gòu)和代碼之間的對(duì)應(yīng)關(guān)系來更新編碼表。將各代碼指 派給包括在模式中的部分文檔結(jié)構(gòu)(在本實(shí)施例中,部分文檔結(jié) 構(gòu)以〈define〉開始并以〈/define〉結(jié)束)。注意,在步驟S204中, 將重復(fù)出現(xiàn)的內(nèi)容模型的開始標(biāo)志和結(jié)束標(biāo)志添加到編碼表。 開始標(biāo)志表示重復(fù)出現(xiàn)的文檔結(jié)構(gòu)的詞匯的開始,而結(jié)束標(biāo)志 表示重復(fù)出現(xiàn)的文檔結(jié)構(gòu)的詞匯的結(jié)束。也就是說,開始標(biāo)志 和結(jié)束標(biāo)志用作對(duì)與預(yù)定義的文檔結(jié)構(gòu)相比的有效范圍進(jìn)行編碼的第三代碼。開始標(biāo)志和結(jié)束標(biāo)志還用作表示相對(duì)于其它重 復(fù)出現(xiàn)的文檔結(jié)構(gòu)的開始和結(jié)束的代碼。針對(duì)存儲(chǔ)在內(nèi)部存儲(chǔ)
器中的模式的每個(gè)"define"要素進(jìn)行上面的過程。也就是說,當(dāng) 步驟S204的處理結(jié)束時(shí),在步驟S205中判斷是否針對(duì)所有 "define"要素完成了步驟S202至S204的處理。如果已經(jīng)處理了 所有的"define"要素(步驟S205中的"是"),則步驟S103結(jié)束。如 果尚未處理完所有的"define"要素(步驟S205中的"否"),則處理 返回到步驟S202,并且對(duì)尚未處理的"define"要素^l行步驟 S202至S204的處理。
圖12示出步驟S103結(jié)束之后的編碼表。f^碼0x05存儲(chǔ)重復(fù) 出現(xiàn)的內(nèi)容模型的開始標(biāo)志,作為詞匯(1201),并且代碼0x06 存儲(chǔ)重復(fù)出現(xiàn)的內(nèi)容模型的結(jié)束標(biāo)志,作為詞匯(1202)。代碼 0x07存儲(chǔ)圖11的詞匯(1203)。如果存在其它重復(fù)出現(xiàn)的內(nèi)容模 型,則從后續(xù)的代碼0x08開始添加那些內(nèi)容才莫型的模式作為詞 匯。正如在圖12中,編碼表用作包括結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)和 用于對(duì)文檔結(jié)構(gòu)進(jìn)行編碼的第一代碼的對(duì)應(yīng)關(guān)系信息。注意, 可以預(yù)先創(chuàng)建上述編碼表并將其存儲(chǔ)在存儲(chǔ)單元204等中,并且 可以由信息處理設(shè)備的功能所實(shí)現(xiàn)的讀出單元在需要時(shí)從存儲(chǔ) 單元204讀出所存儲(chǔ)的編碼表以供4吏用。
返回到對(duì)圖9A和9B的說明,當(dāng)步驟S103的處理結(jié)束時(shí),然 后基于所分析出的沖莫式信息來生成DOM (Document Object Model,文檔對(duì)象模型)樹,并且在將所生成的DOM樹的結(jié)構(gòu)轉(zhuǎn) 換為簡(jiǎn)單樹結(jié)構(gòu)之后將其保存到內(nèi)部存儲(chǔ)器中(步驟S104)?;?于 RELAX NG 規(guī)范的簡(jiǎn)單化處理過程 (http:〃www.relaxng.org/spec-20011203.html弁simplification)來進(jìn) 行樹結(jié)構(gòu)的簡(jiǎn)單化處理。模式DOM樹中的每個(gè)節(jié)點(diǎn)具有表示 XML數(shù)據(jù)是否已經(jīng)被驗(yàn)證的標(biāo)志,并且針對(duì)XML數(shù)據(jù)將這些標(biāo)志初始化為未纟皮,瞼證的狀態(tài)。
然后,在從步驟S105開始的處理中,使用在步驟S103中所 生成的圖12的編碼表來對(duì)XML數(shù)據(jù)進(jìn)行分析和編碼。在此將被 編碼并存儲(chǔ)在內(nèi)部存儲(chǔ)器中的結(jié)構(gòu)化文檔稱作編碼后文檔。假 定初始狀態(tài)下的編碼后文檔沒有存儲(chǔ)任何代碼。首先,在步驟 S105中,對(duì)尚未分析的XML數(shù)據(jù)進(jìn)行分析。
然后,判斷是否分析了結(jié)構(gòu)化文檔的所有X M L數(shù)據(jù)(步驟 S106)。如果分析了所有XML數(shù)據(jù)(步驟S106中的"是"),則處理 結(jié)束。如果尚未分析完所有XML數(shù)據(jù)(步驟S106中的"否"),則 處理進(jìn)入步驟S107。
在步驟S107中,基于作為詞匯存儲(chǔ)在編碼表中的模式,來 驗(yàn)證XML數(shù)據(jù)是否為重復(fù)出現(xiàn)的數(shù)據(jù)。例如,當(dāng)解析圖1A中的 XML數(shù)據(jù)時(shí),在讀取要素并將其保存到內(nèi)部存儲(chǔ)器之后,對(duì)作 為按鈕對(duì)象的模式或詞匯的XML數(shù)據(jù)進(jìn)行驗(yàn)證。
現(xiàn)在將^f吏用圖13來詳細(xì)說明在步驟S107中執(zhí)行的,用于驗(yàn) 證作為被分配到圖11的代碼0x07的模式或詞匯的XML數(shù)據(jù)進(jìn) 行驗(yàn)證的過程。圖13是示出用于驗(yàn)證XML數(shù)據(jù)是否為重復(fù)出現(xiàn) 的內(nèi)容模型的處理過程的流程圖。
當(dāng)處理開始時(shí)(步驟S301),首先通過針對(duì)在步驟S104存儲(chǔ) 在內(nèi)部存儲(chǔ)器中的模式D 0 M樹的各個(gè)節(jié)點(diǎn),檢查表示節(jié)點(diǎn)是否 被驗(yàn)證為XML數(shù)據(jù)的標(biāo)志,來判斷是否對(duì)所有節(jié)點(diǎn)進(jìn)行了驗(yàn)證 (步驟S302)。如果判斷為尚未驗(yàn)證完所有節(jié)點(diǎn)(步驟S302中的 "否"),則對(duì)與XML數(shù)據(jù)相關(guān)的DOM樹中的未被驗(yàn)證的節(jié)點(diǎn)進(jìn) 行驗(yàn)證(步驟S303)。 此時(shí),對(duì)要素名稱、要素名稱空間 (namespace)、可用屬性的數(shù)量、屬性名稱、屬性名稱空間、要 素內(nèi)容數(shù)據(jù)類型和屬性值數(shù)據(jù)類型進(jìn)行驗(yàn)證。
然后,在步驟S304中,針對(duì)未被驗(yàn)證的節(jié)點(diǎn)判斷XML數(shù)據(jù)是否有效。也就是說,在步驟S304中,基于編碼表中所示的文 檔結(jié)構(gòu)進(jìn)行有效性驗(yàn)證,以驗(yàn)證包括在要處理的XML數(shù)據(jù)中的 部分的語(yǔ)法是否有效。如果判斷為有效(步驟S304中的"是,,), 則處理進(jìn)入步驟S305。在步驟S305中,為驗(yàn)證所涉及的DOM樹 的節(jié)點(diǎn)設(shè)置驗(yàn)證標(biāo)志,并且處理返回到步驟S302。針對(duì)后續(xù)的 XML數(shù)據(jù)類似地重復(fù)對(duì)所有節(jié)點(diǎn)的驗(yàn)證處理,并且如果將XML 數(shù)據(jù)判斷為有效則設(shè)置驗(yàn)證標(biāo)志。此時(shí),將被驗(yàn)證的XML數(shù)據(jù) 連續(xù)地保存在內(nèi)部存儲(chǔ)器而不釋放,直到針對(duì)該模式的驗(yàn)證處 理結(jié)束。
在這樣重復(fù)了步驟S303到S305的處理之后,在步驟S302中 判斷為模式DOM樹中的所有節(jié)點(diǎn)均已被驗(yàn)i正(步驟S302中的 "是"),并且處理進(jìn)入步驟S306。在步驟S306中,判斷為直到該 點(diǎn)之前被驗(yàn)證的部分XML數(shù)據(jù)是有效的,并且步驟S107結(jié)束 (步驟S309)。通過步驟S306相當(dāng)于步驟S107中的"是"。因此, 當(dāng)步驟S107的處理結(jié)束時(shí),在步驟S108到S111中對(duì)重復(fù)出現(xiàn)的 內(nèi)容模型進(jìn)行編碼。注意,內(nèi)容模型的代碼用作第一代碼。
另 一方面,如果在步驟S304的驗(yàn)"^正中判斷為XML數(shù)據(jù)無效 (步驟S 3 04中的"否"),則在步驟S 3 0 7中將D0M樹的所有驗(yàn)證標(biāo) 志初始化為未祐:-驗(yàn)-〖正的狀態(tài)。然后,在步驟S308中,判斷為XML 數(shù)據(jù)無效,并且步驟S107的處理結(jié)束(步驟S309)。通過步驟S308 相當(dāng)于步驟S107中的"否"。因此,當(dāng)步驟S107的處理結(jié)束時(shí), 使用直到該點(diǎn)之前保存到內(nèi)部存儲(chǔ)器的被-險(xiǎn)證的XML數(shù)據(jù)來 進(jìn)行步驟S112到S118的傳統(tǒng)編碼處理。
例如,對(duì)于圖1A中的結(jié)構(gòu)化文檔,"svq"要素初次出現(xiàn),因 此在步驟S304中判斷為無效(步驟S304中的"否")。因此,進(jìn)行 步驟S112到S118的處理。然后,處理返回步驟S105,并且經(jīng)由 步驟S106進(jìn)入步驟S107(步驟S106中的"否,,)。在步驟S107中,作為步驟S303中的驗(yàn)證結(jié)果,在步驟S304中將在"svq"要素后面 的"circle"要素判斷為有效(步驟S304中的"是")。因此,在步驟 S305中,為驗(yàn)證"circle"要素時(shí)所涉及的DOM樹中的節(jié)點(diǎn)設(shè)置驗(yàn) 證標(biāo)志。然后,當(dāng)在步驟S302中讀取后面的"text"要素時(shí),判斷 為尚未驗(yàn)證完DOM樹的所有節(jié)點(diǎn)(步驟S302中的"否")。因此, 在步驟303中對(duì)與尚未被驗(yàn)證的節(jié)點(diǎn)相關(guān)的"text"要素進(jìn)行驗(yàn) 證。作為驗(yàn)證的結(jié)果,將XML數(shù)據(jù)判斷為有效,并且類似地為 驗(yàn)證處理中所涉及的節(jié),泉設(shè)置驗(yàn)證標(biāo)志。
由于當(dāng)接下來執(zhí)行步驟S302的處理時(shí),判斷為對(duì)DOM樹中 的所有節(jié)點(diǎn)進(jìn)行了驗(yàn)證(步驟S302中的"是"),因此將作為按鈕 對(duì)象的構(gòu)成要素的"circle,,和"text"要素判斷為有效(步驟S306)。 因此,步驟S107中的判斷結(jié)果為"是",并且處理進(jìn)入步驟S108, 在步驟S108中,將圖12的編碼表中的代碼0x05存儲(chǔ)在編碼后文 檔中作為表示重復(fù)出現(xiàn)的內(nèi)容模型的開始的代碼。將與剛剛結(jié) 束的驗(yàn)證中所4吏用的詞匯(即,模式)相對(duì)應(yīng)的4<碼添加到編碼 后文檔(步驟S109)。在本發(fā)明中,重復(fù)出現(xiàn)的內(nèi)容模型的代碼 是0x07,因此將代碼0x07添加到編碼后文檔。然后,對(duì)重復(fù)出 現(xiàn)的內(nèi)容模型中所包括的屬性值和要素內(nèi)容進(jìn)行分析并將其添 加到編碼表,并且類似地將其代碼依序添加到編碼后文檔(步驟 SllO)。在對(duì)重復(fù)出現(xiàn)的內(nèi)容模型進(jìn)行編碼之后,將0x06添加到 編碼后文檔,作為表示內(nèi)容模型的結(jié)束的代碼(步驟Slll)。在 此,釋放剛剛存儲(chǔ)在內(nèi)部存儲(chǔ)器中的與"circle"和"text"要素相 關(guān)的XML數(shù)據(jù)。然后,在步驟S105中對(duì)所有XML數(shù)據(jù)進(jìn)行分析, 并在步驟S106中判斷是否結(jié)束了對(duì)所有XML數(shù)據(jù)的編碼。
如果在步驟S107中,針對(duì)編碼表的模式(即,詞匯),判斷 為XML數(shù)據(jù)不是重復(fù)出現(xiàn)的內(nèi)容模型(步驟S107中的"否"),則 處理進(jìn)入步驟S112。在步驟S112到S118,對(duì)臨時(shí)存4諸在內(nèi)部存儲(chǔ)器中的XML數(shù)據(jù)的要素進(jìn)行編碼。例如,考慮上迷"circle" 要素在步驟S3 04中被判斷為有效而隨后的"text"要素被判斷為 無效的情況。在這種情況下,對(duì)在判斷為有效時(shí)存儲(chǔ)在內(nèi)部存 儲(chǔ)器中的"circle"要素和后面的被判斷為無效的"text"要素,分 別進(jìn)^f于編碼處理。
首先,判斷初始數(shù)據(jù)是否為開始標(biāo)簽(步驟S112),并且如 果判斷為是開始標(biāo)簽(步驟S112中的"是"),則將該數(shù)據(jù)作為開 始標(biāo)簽來進(jìn)行編碼(步驟S113)。如果在步驟S112判斷為初始數(shù) 據(jù)不是開始標(biāo)簽(步驟S112中的"否"),則判斷該數(shù)據(jù)是否為屬 性(步驟S114)。如果判斷為是屬性(步驟S114中的"是"),則將該 數(shù)據(jù)作為屬性來進(jìn)行編碼(步驟S115)。如果在步驟S114判斷為 該數(shù)據(jù)不是屬性(步驟S114中的"否"),則判斷該數(shù)據(jù)是否為要 素內(nèi)容(步驟S116)。如果判斷為是要素內(nèi)容(步驟S116中的 "是"),則將該數(shù)據(jù)作為要素內(nèi)容來進(jìn)行編碼(步驟S117)。如果 在步驟S116判斷為該數(shù)據(jù)不是要素內(nèi)容(步驟S116中的"否"), 則將該數(shù)據(jù)作為結(jié)束標(biāo)簽來進(jìn)行編碼(步驟S118)。在結(jié)束了編 碼處理之后,釋放臨時(shí)存儲(chǔ)在內(nèi)部存儲(chǔ)器中的XML數(shù)據(jù)。
圖14示出在進(jìn)行了 一系列編碼處理之后的編碼表。圖15至 圖17示出在進(jìn)行了 一系列編碼之后存^f諸在內(nèi)部存儲(chǔ)器中的編碼 后文檔。重復(fù)出現(xiàn)的內(nèi)容模型的代碼存儲(chǔ)在表示該內(nèi)容模型的 開始的代碼0 x 0 5之后。包括在該內(nèi)容模型中的屬性值和要素內(nèi) 容的代碼存儲(chǔ)在該內(nèi)容模型的代碼之后。然后,表示該內(nèi)容模 型的結(jié)束的代碼存儲(chǔ)在包括在該內(nèi)容模型中的屬性值和要素內(nèi) 容的代碼集之后。如上所述,使用圖14中所示的編碼表中的代 碼,圖1A的結(jié)構(gòu)化文檔^皮編碼為如圖15至圖17的編碼后文檔所 示。將圖3和圖4與圖15至圖17進(jìn)行比較,顯然,由根據(jù)本實(shí)施 例的結(jié)構(gòu)所產(chǎn)生的編碼后文檔的數(shù)據(jù)大小更小,因此可以以更小的數(shù)據(jù)大小來編碼結(jié)構(gòu)化文檔。這是因?yàn)樵诒緦?shí)施例中,為 重復(fù)出現(xiàn)的內(nèi)容模型分配代碼(第一代碼),也就是說,為重復(fù) 出現(xiàn)的結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)分配代碼,并且^f吏用該代碼來進(jìn) 行編碼。
然后,將說明對(duì)編碼后文檔進(jìn)行解碼以獲得原始的結(jié)構(gòu)化
文檔的處理。圖18是示出用于對(duì)使用#^居本實(shí)施例的方法所編 碼的編碼后文檔進(jìn)行解碼的處理過程的流程圖。
當(dāng)處理開始時(shí)(步驟S401),首先,對(duì)編碼后文檔中所包括 的編碼表進(jìn)行分析并且將其存儲(chǔ)在內(nèi)部存儲(chǔ)器中(步驟S402)。 然后,基于包括在編碼表中的重復(fù)出現(xiàn)的內(nèi)容模型的模式來生 成DOM樹,并且將所生成的DOM樹保存到內(nèi)部存儲(chǔ)器(步驟 S403)。也就是說,基于由編碼表所表示的文檔結(jié)構(gòu)來生成DOM 樹,并且將所生成的DOM樹存儲(chǔ)在存4諸設(shè)備。然后,開始于編 碼后文檔的開始,4吏用編碼表來對(duì)該編碼后文檔進(jìn)行分析和解 碼。
然后,判斷是否分析了整個(gè)編碼后文檔(步驟S404),并且 如果判斷為尚未分析完整個(gè)編碼后文檔(步驟S404中的"否"), 則接著判斷正被分析的代碼是否為重復(fù)出現(xiàn)的內(nèi)容模型的開始 代碼(步驟S405)。如果判斷為分析了整個(gè)編碼后文檔(步驟S404 中的"是"),則解碼處理結(jié)束(步驟S410)。
的內(nèi)容模型的開始代碼(步驟S405中的"否"),則處理進(jìn)入步驟 S407。在步驟S407中,判斷正被分析的代碼是否為重復(fù)出現(xiàn)的 內(nèi)容模型的結(jié)束代碼,并且如果不是結(jié)束代碼(步驟S407中的 "否"),則處理進(jìn)入步驟S408。在步驟S408中,進(jìn)行為DOM的 節(jié)點(diǎn)分配值的處理。因而在步驟S407和S408中,將由代碼所涉 及的值依序分配給內(nèi)容模型的DOM中的屬性值和要素內(nèi)容的節(jié)點(diǎn)并且將其存儲(chǔ)在內(nèi)部存儲(chǔ)器,直到結(jié)束代碼出現(xiàn)。
如果在步驟S407判斷為出現(xiàn)了結(jié)束代碼(步驟S407中的 "是"),則處理進(jìn)入步驟S409。在步驟S409中,基于在步驟S407 至S408中存儲(chǔ)在內(nèi)部存儲(chǔ)器中的DOM樹來生成XML數(shù)據(jù)。通過 從樹的根節(jié)點(diǎn)經(jīng)由子節(jié)點(diǎn)地依序移動(dòng)并對(duì)要素名稱、屬性名稱、 要素內(nèi)容和屬性值進(jìn)行分析,來生成XML數(shù)據(jù)。將所生成的 XML數(shù)據(jù)存儲(chǔ)在內(nèi)部存儲(chǔ)器,并且處理返回到步驟S404。
注意,如果在步驟S405中判斷為正被分析的代碼是重復(fù)出 現(xiàn)的內(nèi)容模型的開始代碼(步驟S405中的"是"),則在步驟S406 中通過參考使用該代碼的編碼表的詞匯來進(jìn)行解碼。然后,處 理返回到步驟S404。
如果在步驟S404中判斷為已經(jīng)分析了整個(gè)編碼后文檔(步 驟S404中的"是"),則處理結(jié)束。
如上所述,利用根據(jù)本實(shí)施例的結(jié)構(gòu),如果文本格式的結(jié) 構(gòu)化文檔中重復(fù)出現(xiàn)相同內(nèi)容模型的XML數(shù)據(jù),則使用模式來 對(duì)該內(nèi)容模型的實(shí)際文檔結(jié)構(gòu)進(jìn)行編碼。然后將包括在該內(nèi)容 模型中的屬性值和要素內(nèi)容添加到該內(nèi)容模型的代碼后面。這 使得能夠減小編碼之后的XML數(shù)據(jù)大小。
其它實(shí)施例
盡管上面已經(jīng)詳細(xì)說明了本發(fā)明的實(shí)施例,例如,本發(fā)明 可實(shí)現(xiàn)為系統(tǒng)、設(shè)備、方法、程序或存儲(chǔ)介質(zhì)。具體地,本發(fā) 明可應(yīng)用于由多個(gè)裝置構(gòu)成的系統(tǒng)或由單個(gè)裝置構(gòu)成的設(shè)備。
注意,還可通過直接或間接地將實(shí)現(xiàn)前述實(shí)施例的功能的 程序提供給系統(tǒng)或設(shè)備,并且利用該系統(tǒng)或設(shè)備的計(jì)算機(jī)讀出 并執(zhí)行所提供的程序代碼來實(shí)現(xiàn)本發(fā)明。
因此,本發(fā)明的技術(shù)范圍還涵蓋安裝在計(jì)算機(jī)上的、用于 通過計(jì)算機(jī)來實(shí)現(xiàn)本發(fā)明的功能性處理的程序。也就是說,本發(fā)明還涵蓋用于實(shí)現(xiàn)本發(fā)明的功能性處理的實(shí)際計(jì)算機(jī)程序。
在這種情況下,假定系統(tǒng)或設(shè)備具有程序的功能,則可以 以諸如目標(biāo)代碼、通過解釋器執(zhí)行的程序或提供給操作系統(tǒng)的 腳本數(shù)據(jù)等任意形式來執(zhí)行該程序。
用于提供程序的存儲(chǔ)介質(zhì)包括,例如,軟盤(floppy,注冊(cè) 商標(biāo))、硬盤、光盤、磁光盤、CD-ROM、 CD-R、 CD-RW、磁 帶、非易失性存4諸器卡、ROM和DVD (DVD-ROM, DVD-R)。
可選地,通過如下方式來提供程序是可想到的使用客戶 端設(shè)備的瀏覽器來連接因特網(wǎng)上的網(wǎng)站,并且從網(wǎng)站將根據(jù)本 發(fā)明的計(jì)算機(jī)程序或包括自動(dòng)安裝功能的壓縮文件下載到諸如 硬盤等記錄介質(zhì)。此外,可通過如下方式來提供程序?qū)?gòu)成 根據(jù)本發(fā)明的程序代碼分割成多個(gè)文件,并且從不同的網(wǎng)站下 載各個(gè)文件。也就是說,本發(fā)明還涵蓋了允許多個(gè)用戶下載用 于通過計(jì)算機(jī)來實(shí)現(xiàn)本發(fā)明的功能性處理的程序文件的萬維網(wǎng) (World Wide Web, WWW)服務(wù)器。
還可想到下面的提供模式。也就是說,首先加密根據(jù)本發(fā) 明的程序,將其存儲(chǔ)在諸如CD-ROM等存儲(chǔ)介質(zhì)上并且分發(fā)給 用戶。然后,允許符合規(guī)定要求的用戶經(jīng)由因特網(wǎng)從網(wǎng)站下載 加密密鑰信息,并且執(zhí)行使用該密鑰信息解密后的程序,并將 其安裝在計(jì)算機(jī)上以實(shí)現(xiàn)根據(jù)本發(fā)明的結(jié)構(gòu)。這種提供模式是 可能的。
除通過執(zhí)行所讀取的程序的計(jì)算沖幾來實(shí)現(xiàn)前述實(shí)施例的功 能之外,還可預(yù)想到實(shí)現(xiàn)這些功能的以下模式。也就是說,運(yùn) 行于計(jì)算機(jī)上的操作系統(tǒng)等基于程序指令進(jìn)行部分或全部的實(shí)
際處理,作為該處理的結(jié)果,實(shí)現(xiàn)了前述實(shí)施例的功能。
此外,也可將從存儲(chǔ)介質(zhì)讀出的程序?qū)懭氲皆O(shè)置在插入在 計(jì)算機(jī)中的功能擴(kuò)展板或連接到計(jì)算機(jī)的功能擴(kuò)展單元中的存儲(chǔ)器,基于該程序的指令來實(shí)現(xiàn)前述實(shí)施例的功能。也就是說, 設(shè)置在功能擴(kuò)展板或功能擴(kuò)展單元中的CPU等進(jìn)行部分或全部 的實(shí)際處理,作為該處理的結(jié)果,實(shí)現(xiàn)了前述實(shí)施例的功能。
本發(fā)明使得能夠提供能以更小的數(shù)據(jù)大小對(duì)結(jié)構(gòu)化文檔進(jìn) 行編碼的技術(shù)。
盡管參考示例性實(shí)施例說明了本發(fā)明,但是應(yīng)該理解,本 發(fā)明不局限于所公開的示例性實(shí)施例。所附權(quán)利要求書的范圍 符合最寬的解釋,以包含所有這樣的修改、等同結(jié)構(gòu)和功能。
本申請(qǐng)要求于2007年02月16日提交的日本專利申請(qǐng) 2007-036808的優(yōu)先^又,在此通過引用將其整體包含于此。
權(quán)利要求
1.一種信息處理設(shè)備,包括讀出單元,用于從存儲(chǔ)單元讀出對(duì)應(yīng)關(guān)系信息,其中所述對(duì)應(yīng)關(guān)系信息包括結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)和用于對(duì)所述文檔結(jié)構(gòu)進(jìn)行編碼的第一代碼;驗(yàn)證單元,用于基于所述對(duì)應(yīng)關(guān)系信息中所包括的所述文檔結(jié)構(gòu),來驗(yàn)證包括在要處理的結(jié)構(gòu)化文檔中的部分的語(yǔ)法是否有效;以及編碼單元,用于針對(duì)被所述驗(yàn)證單元驗(yàn)證為語(yǔ)法有效的部分,使用所述第一代碼來對(duì)所述結(jié)構(gòu)化文檔進(jìn)行編碼。
2. 根據(jù)權(quán)利要求l所述的信息處理設(shè)備,其特征在于, 所述讀出單元還從所述存儲(chǔ)單元讀出用于對(duì)變量進(jìn)行編碼的第二代碼和用于對(duì)被所述驗(yàn)證單元3會(huì)證為語(yǔ)法有效的部分的范圍進(jìn)行編碼的第三代碼,以及針對(duì)被所述驗(yàn)證單元驗(yàn)證為語(yǔ)法有效的部分,所述編碼單 元使用所述第一代碼、所述第二代碼和所述第三代碼來對(duì)所述 結(jié)構(gòu)化文檔進(jìn)行編碼。
3. 根據(jù)權(quán)利要求1或2所述的信息處理設(shè)備,其特征在于, 還包括更新單元,所迷更新單元用于對(duì)表示所述結(jié)構(gòu)化文檔的 所述文檔結(jié)構(gòu)的模式信息進(jìn)行分析,為所述文檔結(jié)構(gòu)分配代碼 作為所述第一代碼,并且通過添加所述文檔結(jié)構(gòu)和該代碼來更 新所述對(duì)應(yīng)關(guān)系信息。
4. 根據(jù)權(quán)利要求3所述的信息處理設(shè)備,其特征在于,基 于DTD、 XML模式和RELAX NG之一來寫所述模式信息。
5. 一種解碼設(shè)備,其通過對(duì)通過根據(jù)權(quán)利要求2所述的信息處理設(shè)備所編碼的編碼后文檔進(jìn)行解碼來生成結(jié)構(gòu)化文檔, 所述解碼設(shè)備包括第二讀出單元,用于從第二存儲(chǔ)單元讀出所述對(duì)應(yīng)關(guān)系信息;存儲(chǔ)控制單元,用于基于由所述對(duì)應(yīng)關(guān)系信息表示的文檔結(jié)構(gòu)來生成DOM樹,并且將所生成的DOM樹存儲(chǔ)在存儲(chǔ)設(shè)備 中;以及解碼單元,用于對(duì)要處理的編碼后文檔進(jìn)行分析和解碼, 其中,針對(duì)由所述第三代碼表示的范圍,所述解碼單元響應(yīng)于 正被分析的所述第一代碼,將由所述第二代碼表示的變量分配 給所述DOM樹的相應(yīng)節(jié)點(diǎn)。
6. —種信息處理設(shè)備的控制方法,所述信息處理設(shè)備通過 對(duì)結(jié)構(gòu)化文檔進(jìn)行編碼來生成編碼后文檔,所述控制方法包括 以下步驟讀出單元,用于從存儲(chǔ)單元讀出對(duì)應(yīng)關(guān)系信息,其中所述 對(duì)應(yīng)關(guān)系信息包括結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)和用于對(duì)所述文檔結(jié) 構(gòu)進(jìn)行編碼的第一代碼;驗(yàn)證單元,用于基于所述對(duì)應(yīng)關(guān)系信息中所包括的所述文 檔結(jié)構(gòu),來驗(yàn)證包括在要處理的結(jié)構(gòu)化文檔中的部分的語(yǔ)法是 否有效;以及 編碼單元,用于針對(duì)在所述驗(yàn)證步驟中^f皮驗(yàn)證為語(yǔ)法有效 的部分,使用所述第一代碼來對(duì)所述結(jié)構(gòu)化文檔進(jìn)行編碼。
7. 根據(jù)權(quán)利要求6所述的控制方法,其特征在于, 在所述讀出步驟中,還從所述存儲(chǔ)單元讀出用于對(duì)變量進(jìn)行編碼的第二代碼和用于對(duì)在所述驗(yàn)證步驟中被驗(yàn)證為語(yǔ)法有 效的部分的范圍進(jìn)行編碼的第三代碼,以及在所述編碼步驟中,針對(duì)在所述-驗(yàn)證步驟中^皮一驗(yàn)證為語(yǔ)法 有效的部分,使用所述第一代碼、所述第二代碼和所述第三代 碼來對(duì)所述結(jié)構(gòu)化文檔進(jìn)行編碼。
8. —種解碼設(shè)備的控制方法,所述解碼設(shè)備通過對(duì)通過根據(jù)權(quán)利要求7所述的信息處理設(shè)備的控制方法所編碼的編碼后文檔進(jìn)行解碼來生成結(jié)構(gòu)化文檔,所述控制方法包括以下步驟第二讀出單元,用于從第二存儲(chǔ)單元讀出所述對(duì)應(yīng)關(guān)系信自、.存儲(chǔ)控制單元,用于基于由所述對(duì)應(yīng)關(guān)系信息表示的文檔結(jié)構(gòu)來生成DOM樹,并且將所生成的DOM樹存儲(chǔ)在存儲(chǔ)設(shè)備 中;以及解碼單元,用于對(duì)要處理的編碼后文檔進(jìn)行分析和解碼, 其中,在所述解碼單元中,針對(duì)由所述第三代碼表示的范圍, 響應(yīng)于正被分析的所述第 一代碼,將由所述第二代碼表示的變 量分配給所述D O M樹的相應(yīng)節(jié)點(diǎn)。
9. 一種計(jì)算機(jī)程序,用于使計(jì)算機(jī)用作根據(jù)權(quán)利要求1至4 中任一項(xiàng)所述的信息處理設(shè)備,或者用作根據(jù)權(quán)利要求5所述的 解碼設(shè)備。
10. —種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),用于存儲(chǔ)根據(jù)權(quán)利要求9 所述的計(jì)算機(jī)程序。
全文摘要
一種信息處理設(shè)備,包括讀出單元,用于從存儲(chǔ)單元讀出對(duì)應(yīng)關(guān)系信息,其中該對(duì)應(yīng)關(guān)系信息包括結(jié)構(gòu)化文檔的文檔結(jié)構(gòu)和用于對(duì)該文檔結(jié)構(gòu)進(jìn)行編碼的第一代碼;驗(yàn)證單元,用于基于該對(duì)應(yīng)關(guān)系信息中所包括的文檔結(jié)構(gòu),來驗(yàn)證包括在要處理的結(jié)構(gòu)化文檔中的部分的語(yǔ)法是否有效;以及編碼單元,用于針對(duì)被所述驗(yàn)證單元驗(yàn)證為語(yǔ)法有效的部分,使用所述第一代碼來對(duì)該結(jié)構(gòu)化文檔進(jìn)行編碼。
文檔編號(hào)G06F17/21GK101617307SQ20088000534
公開日2009年12月30日 申請(qǐng)日期2008年2月5日 優(yōu)先權(quán)日2007年2月16日
發(fā)明者內(nèi)田均 申請(qǐng)人:佳能株式會(huì)社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
隆子县| 营山县| 石狮市| 始兴县| 额敏县| 柳河县| 淳化县| 临沧市| 罗甸县| 赤水市| 南丰县| 富顺县| 余江县| 通辽市| 抚州市| 北票市| 同江市| 乌恰县| 东兰县| 桦川县| 汝阳县| 佛山市| 大关县| 平安县| 洛阳市| 门头沟区| 栖霞市| 蒙自县| 于田县| 宁国市| 云浮市| 彝良县| 中江县| 房产| 太原市| 汝州市| 庄浪县| 高尔夫| 眉山市| 宝坻区| 石棉县|