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

語(yǔ)法分析擴(kuò)展標(biāo)記語(yǔ)言文件的裝置和方法

文檔序號(hào):6559536閱讀:195來(lái)源:國(guó)知局
專利名稱:語(yǔ)法分析擴(kuò)展標(biāo)記語(yǔ)言文件的裝置和方法
技術(shù)領(lǐng)域
本申請(qǐng)要求2002年6月26日在韓國(guó)知識(shí)產(chǎn)權(quán)局提交的韓國(guó)專利申請(qǐng)第2002-36066號(hào)的優(yōu)先權(quán),在此整體引入其公開(kāi)內(nèi)容作為參考。
本發(fā)明涉及一種用于利用描述XML文件的語(yǔ)法的模式(schema)/文件類型定義(DTD)數(shù)據(jù)結(jié)構(gòu)來(lái)驗(yàn)證公知的標(biāo)準(zhǔn)電子文件擴(kuò)展標(biāo)記語(yǔ)言(XML)文件的有效性的裝置和方法,特別涉及一種用于解決不能支持在嵌入器件中利用一般的模式/DTD數(shù)據(jù)結(jié)構(gòu)來(lái)驗(yàn)證XML文件有效性的語(yǔ)法分析器的問(wèn)題的裝置和方法,所述嵌入器件由于其規(guī)格的限制而具有較低性能的處理器和小存儲(chǔ)器。
背景技術(shù)
在現(xiàn)有技術(shù)中,具有驗(yàn)證器的XML語(yǔ)法分析器用于在使用XML文件的XML應(yīng)用程序中驗(yàn)證使用外部實(shí)體所寫(xiě)的XML文件的有效性。驗(yàn)證器從外部源讀取模式/DTD,產(chǎn)生關(guān)于利用模式/DTD定義的語(yǔ)法的數(shù)據(jù)的結(jié)構(gòu),并且利用定義的語(yǔ)法來(lái)查看在XML文件中的差錯(cuò)。但是,運(yùn)行在諸如個(gè)人數(shù)字助理(PDA)或便攜電話等的嵌入器件中的XML應(yīng)用程序在檢驗(yàn)XML文件的有效性上具有限制。多數(shù)嵌入系統(tǒng)支持一個(gè)不支持檢驗(yàn)XML文件的有效性的XML語(yǔ)法分析器,或其一部分被擴(kuò)展來(lái)驗(yàn)證僅僅有限的模式或DTD的語(yǔ)法以便減少由于使用模式或DTD來(lái)驗(yàn)證XML文件的處理而導(dǎo)致的負(fù)荷的XML語(yǔ)法分析器。由于這點(diǎn),實(shí)現(xiàn)了一種特殊的驗(yàn)證語(yǔ)法分析器來(lái)僅僅感知對(duì)每個(gè)系統(tǒng)必要的模式/DTD。因此,該特殊的驗(yàn)證語(yǔ)法分析器不能用于其他系統(tǒng)中。
而且,如果公布了用做在XML文件中的外部實(shí)體的模式/DTD的模式/DTD公布者實(shí)現(xiàn)了新語(yǔ)法,則使用現(xiàn)有的模式/DTD并且沒(méi)有差錯(cuò)的XML文件不再有效。因此,利用已公布為外部實(shí)體的模式/DTD的XML文件必須重新被構(gòu)成,其中在模式或DTD的語(yǔ)法中有改變。

發(fā)明內(nèi)容
本發(fā)明提供了一種用于當(dāng)使用XML文件的XML應(yīng)用程序運(yùn)行在嵌入器件中的時(shí)候檢驗(yàn)XML文件的有效性的裝置和方法,所述XML文件被用于描述關(guān)于嵌入器件的信息或商務(wù)文件的標(biāo)準(zhǔn),所述嵌入器件具有較低性能的處理器和小存儲(chǔ)器。
按照本發(fā)明的一個(gè)方面,提供了一種利用外部XML驗(yàn)證器的XML語(yǔ)法分析器。XML語(yǔ)法分析器包括XML接收器、外部XML驗(yàn)證器調(diào)用器和DOM/SAX樹(shù)產(chǎn)生器。XML接收器從XML應(yīng)用程序接收XML文件。外部XML驗(yàn)證器調(diào)用器請(qǐng)求外部XML驗(yàn)證器檢驗(yàn)XML文件的有效性并且接收對(duì)該請(qǐng)求的回答。如果外部XML驗(yàn)證器調(diào)用器接收指示XML文件有效的回答,則DOM/SAX樹(shù)產(chǎn)生器從XML文件產(chǎn)生DOM/SAX樹(shù)并且向XML應(yīng)用程序發(fā)送DOM/SAX樹(shù)。
按照本發(fā)明的另一個(gè)方面,也提供了一種外部XML驗(yàn)證器,用于在XML語(yǔ)法分析器中檢驗(yàn)XML文件的有效性。外部XML驗(yàn)證器包括模式/DTD接收器、XML驗(yàn)證器和XML有效性結(jié)果發(fā)送器。模式/DTD接收器被請(qǐng)求從XML語(yǔ)法分析器檢驗(yàn)XML文件的有效性,并且從模式/DTD數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式或DTD。XML驗(yàn)證器將XML文件應(yīng)用到所接收的模式或DTD以檢驗(yàn)XML文件的有效性。XML有效性結(jié)果發(fā)送器向XML語(yǔ)法分析器發(fā)送XML文件的有效性結(jié)果。


通過(guò)參照附圖詳細(xì)說(shuō)明本發(fā)明的示范實(shí)施例,本發(fā)明的上述特點(diǎn)和優(yōu)點(diǎn)將會(huì)變得更加清楚,其中圖1是圖解傳統(tǒng)的XML語(yǔ)法分析器的配置的視圖;圖2是圖解按照本發(fā)明的一個(gè)實(shí)施例的使用外部XML驗(yàn)證器的XML語(yǔ)法分析器的配置的視圖;
圖3是解釋按照本發(fā)明的一個(gè)實(shí)施例的通過(guò)使用外部XML驗(yàn)證器來(lái)語(yǔ)法分析XML文件的方法的流程圖;圖4是解釋按照本發(fā)明的一個(gè)實(shí)施例的通過(guò)使用外部XML驗(yàn)證器來(lái)檢驗(yàn)XML文件的有效性的方法的流程圖;圖5是解釋按照本發(fā)明的一個(gè)實(shí)施例的通過(guò)使用一種利用外部XML驗(yàn)證器來(lái)檢驗(yàn)XML文件的有效性的方法來(lái)語(yǔ)法分析XML文件的方法的流程圖。
具體實(shí)施例方式
以下,參照附圖來(lái)詳細(xì)說(shuō)明本發(fā)明的優(yōu)選實(shí)施例。
圖1示出了傳統(tǒng)的XML語(yǔ)法分析器的配置。參見(jiàn)圖1,器件11包括XML語(yǔ)法分析器111、XML應(yīng)用程序112和其他元件(中央處理器(CPU)、存儲(chǔ)器等)。器件12包括模式/DTD數(shù)據(jù)庫(kù)12和在器件11中的其他元件。XML語(yǔ)法分析器111包括XML接收器1111、模式/DTD接收器1112、XML驗(yàn)證器1113和文件對(duì)象模型(DOM)/XML的簡(jiǎn)單API(Application ProgrammingInterface應(yīng)用編程接口)(SAX)樹(shù)產(chǎn)生器114。包括在器件11和器件12中的其他元件與本發(fā)明無(wú)關(guān),因此在圖1中不示出。
XML應(yīng)用程序112一般指的是用戶可以使用多個(gè)工具對(duì)XML文件處理的空間。XML接收器1111從XML應(yīng)用程序112接收XML文件。模式/DTD接收器1112從器件12的模式/DTD數(shù)據(jù)庫(kù)121接收模式/DTD數(shù)據(jù)。DTD是采用文件實(shí)例(DI)形式的規(guī)范,定義了文件的規(guī)則,即寫(xiě)DI的規(guī)則。作為XML文件的實(shí)體的XML文件的DI對(duì)應(yīng)于在DTD中定義的規(guī)則下由用戶所寫(xiě)的文本。與編程語(yǔ)言的元素相比,DTD是語(yǔ)言的定義。因此,DTD需要定義XML文件的結(jié)構(gòu),而且必須按照DTD的定義來(lái)寫(xiě)DI以驗(yàn)證XML文件。DTD由元素、屬性列表(ATTLIST)和實(shí)體組成。元素定義包括最高元素的多個(gè)元素的屬性,即多個(gè)屬性。實(shí)體與在編程語(yǔ)言中使用的宏很類似。實(shí)體按照定義和參考類型被分類成一般實(shí)體和參數(shù)實(shí)體。一般實(shí)體在DTD中被定義并且在DI中被引用。參數(shù)實(shí)體在DTD中被定義和被引用。除了這些之外,DTD包括一個(gè)標(biāo)記區(qū)和處理指令。所述標(biāo)記區(qū)被用于處理用于特殊目的的文件的標(biāo)記部分,并且利用外部程序來(lái)在文件中處理所述處理指令。為了語(yǔ)法分析具有上述結(jié)構(gòu)的DTD,需要查看DTD的語(yǔ)法,并且需要利用關(guān)于文件結(jié)構(gòu)的信息來(lái)建立DI文件的規(guī)則。在利用巴克斯-諾爾形式(BNF)產(chǎn)生在這個(gè)處理中建立的文件的結(jié)構(gòu)并且將該文件結(jié)構(gòu)輸入到語(yǔ)法分析產(chǎn)生器的情況下,則可能出現(xiàn)語(yǔ)法的差錯(cuò)和模糊。因此,需要以樹(shù)的形式來(lái)查看DI文件的規(guī)則以便排除語(yǔ)法的差錯(cuò)和模糊。XML模式一般指的是一個(gè)文件,它定義XML文件的結(jié)構(gòu)和內(nèi)容。DTD是一種模式,具有很多問(wèn)題。DTD利用擴(kuò)展的巴克斯-諾爾形式(EBNF)以復(fù)雜和不熟悉的語(yǔ)言來(lái)描述XML文件的結(jié)構(gòu)和內(nèi)容。但是,XML模式利用XML描述XML文件的結(jié)構(gòu)和內(nèi)容。而且,XML模式一般可以重新使用DTD不能表述的多種類型的數(shù)據(jù)和元素。換句話說(shuō),作為DTD的一種大擴(kuò)展模型的XML模式可以詳細(xì)地定義XML文件可以包含的元素的類型、元素之間的關(guān)系和每個(gè)元素可以獲得的一種類型。
如果由在器件11中運(yùn)行的XML應(yīng)用程序112處理的XML文件遵守在器件12的模式/DTD數(shù)據(jù)庫(kù)121中存儲(chǔ)的模式/DTD中定義的語(yǔ)法,則模式/DTD接收器1112利用如下所示的在器件11的XML文件的示例中使用的方法經(jīng)由有線或無(wú)線通信網(wǎng)絡(luò)(一般稱為網(wǎng)絡(luò))從器件12接收模式/DTD文件。
器件11的XML文件的示例<?xml version=”1.0”?>
<Invoice xnlns=”http//www.invoice.org”xmlnsxsi=”http//www.w3.org/2000/10/XMLSchema-instance”xsischemaLocation=”http//www.invoice.org/Invoice.xsd”>
<PaymentDue Currency=”USD”>199.00</PaymentDue>
</Invoice>
“xsischemaLocation=”http//www.invoice.org/Invoice.xsd”是關(guān)于包括模式/DTD數(shù)據(jù)庫(kù)121的器件12的統(tǒng)一資源定位符(URL)的信息。換句話說(shuō),在器件11中的XML語(yǔ)法分析器111利用標(biāo)簽<schemaLocation>找到關(guān)于模式/DTD數(shù)據(jù)庫(kù)121的位置的信息。
檢驗(yàn)在XML文件中的差錯(cuò)的XML驗(yàn)證器1113分析在模式/DTD中定義的、用于配置XML文件的協(xié)議,并且建立模式/DTD語(yǔ)法結(jié)構(gòu)。接著,XML驗(yàn)證器1113將XML文件應(yīng)用到模式/DTD語(yǔ)法結(jié)構(gòu)以驗(yàn)證在XML文件中的差錯(cuò)。
如果確定XML文件沒(méi)有差錯(cuò),則DOM/SAX樹(shù)產(chǎn)生器1114產(chǎn)生DOM/SAX樹(shù),并且向XML應(yīng)用程序112發(fā)送DOM/SAX樹(shù)。DOM表示以樹(shù)結(jié)構(gòu)分析和存儲(chǔ)被語(yǔ)法分析的數(shù)據(jù)的模型,并且允許訪問(wèn)特定的元素。DOM使用XML文件的最高元素作為根節(jié)點(diǎn)以便以分層樹(shù)結(jié)構(gòu)來(lái)分析XML文件。因?yàn)镈OM以樹(shù)結(jié)構(gòu)表示數(shù)據(jù),因此DOM能夠自由訪問(wèn)特定的節(jié)點(diǎn)。因此,DOM也被稱為隨機(jī)訪問(wèn)協(xié)議。SAX類似于DOM并且與DOM互補(bǔ)。在DOM中,如上所述,所有的XML文件被語(yǔ)法分析并且被轉(zhuǎn)換為具有樹(shù)結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)。這個(gè)方法很靈活和有效,但是使用許多系統(tǒng)資源。具體上,即使當(dāng)要求XML文件的特定字段值的時(shí)候,也需要整體地語(yǔ)法分析XML文件,這可能是一個(gè)沉重的負(fù)擔(dān)。SAX看來(lái)可解決這個(gè)問(wèn)題。SAX不以樹(shù)結(jié)構(gòu)來(lái)向存儲(chǔ)器上載全部XML文件。但是,SAX依序語(yǔ)法分析元素,將語(yǔ)法分析的元素傳送到所述存儲(chǔ)器,并且省略以樹(shù)結(jié)構(gòu)來(lái)構(gòu)成元素。DOM被稱為隨機(jī)訪問(wèn)協(xié)議,而SAX被稱為串行訪問(wèn)協(xié)議。SAX也被稱為事件驅(qū)動(dòng)協(xié)議,通過(guò)這個(gè)協(xié)議XML處理器在SAX語(yǔ)法分析器中注冊(cè)自己,并且SAX語(yǔ)法分析器通過(guò)回調(diào)函數(shù)來(lái)將新發(fā)現(xiàn)的XML標(biāo)簽通知XML處理器。
圖2示出了按照本發(fā)明的一個(gè)實(shí)施例的使用外部XML驗(yàn)證器的XML語(yǔ)法分析器的配置。參見(jiàn)圖2,器件21包括使用外部XML驗(yàn)證器的XML語(yǔ)法分析器21、XML應(yīng)用程序212和其他元件(CPU、存儲(chǔ)器等)。器件22包括模式/DTD數(shù)據(jù)庫(kù)121和其他包括在器件21中的元件。作為外部XML驗(yàn)證器的器件23包括模式/DTD接收器233、XML驗(yàn)證器232和XML有效性結(jié)果發(fā)送器231。XML語(yǔ)法分析器211包括XML接收器2111、外部XML驗(yàn)證器調(diào)用器2112和DOM/SAX樹(shù)產(chǎn)生器2113。
XML接收器2111從XML應(yīng)用程序212接收XML文件。
外部XML驗(yàn)證器調(diào)用器2112請(qǐng)求XML驗(yàn)證器23檢驗(yàn)XML文件的有效性,并且接收對(duì)請(qǐng)求的對(duì)答。在此,外部XML驗(yàn)證器調(diào)用器2112從所接收的XML文件找到外部XML驗(yàn)證器23的位置。換句話說(shuō),外部XML驗(yàn)證器調(diào)用器2112通過(guò)使用在如下所示的器件21的XML文件的示例中使用的方法經(jīng)由有線或無(wú)線網(wǎng)絡(luò)來(lái)調(diào)用外部XML驗(yàn)證器23。
器件21的XML文件的示例<?xml version=”1.0”?>
<Invoice xmlns=”http//www.invoice.org”xmlnsxsi=”http//www.w3.org/2000/10/XMLSchema-instance”xsischemaLocation=”http//www.invoice.org/Invoice.xsd”
xsivalidatorLocation=”http//www.samsung.com/DeviceAnalyzer”>
<PaymentDue Currency=”USD”>199.00</PaymentDue>
</Invoice>
“xsivalidatorLocation=”http//www.samsung.com/DeviceAnalyzer”是關(guān)于外部XML驗(yàn)證器23的統(tǒng)一資源定位符(URL)的信息。換句話說(shuō),在器件21中的XML語(yǔ)法分析器211利用標(biāo)簽<validatorLocation>找到外部XML驗(yàn)證器23的位置。
當(dāng)外部XML驗(yàn)證器調(diào)用器2112請(qǐng)求外部XML驗(yàn)證器23檢驗(yàn)XML文件的有效性的時(shí)候,外部XML驗(yàn)證器調(diào)用器2112經(jīng)由有線或無(wú)線網(wǎng)絡(luò)以URL向外部XML驗(yàn)證器23發(fā)送具有XML語(yǔ)法分析器211的器件21的操作系統(tǒng)(OS)的一個(gè)版本和XML文件。
如果外部XML驗(yàn)證器調(diào)用器2112從外部XML驗(yàn)證器23接收指示XML文件有效的一個(gè)回答,則DOM/SAX樹(shù)產(chǎn)生器2113從XML文件產(chǎn)生一個(gè)DOM/SAX樹(shù),并且將這個(gè)DOM/SAX樹(shù)發(fā)送到XML應(yīng)用程序212。如果外部XML驗(yàn)證器調(diào)用器2112從外部XML驗(yàn)證器23接收指示XML文件無(wú)效的一個(gè)回答,則XML驗(yàn)證器調(diào)用器2112向XML應(yīng)用程序212發(fā)送差錯(cuò)消息。
如果模式/DTD接收器233從XML語(yǔ)法分析器211接收檢驗(yàn)XML文件的有效性的請(qǐng)求,則模式/DTD接收器233經(jīng)由有線或無(wú)線網(wǎng)絡(luò)從模式/DTD數(shù)據(jù)庫(kù)221接收對(duì)應(yīng)于XML文件的模式/DTD。換句話說(shuō),在模式/DTD接收器233接收具有XML語(yǔ)法分析器211的器件21的OS的版本和XML文件并且隨后從XML語(yǔ)法分析器211接收檢驗(yàn)XML文件的有效性的請(qǐng)求之后,當(dāng)OS要求外部XML驗(yàn)證器23的時(shí)候,模式/DTD接收器233從模式/DTD數(shù)據(jù)庫(kù)221接收對(duì)應(yīng)于XML文件的模式/DTD。但是,如果具有XML語(yǔ)法分析器211的器件21不是諸如PDA或便攜電話等的、具有較低性能的處理器和小存儲(chǔ)器的嵌入器件,則因?yàn)槠骷?1包括用于檢驗(yàn)XML文件的有效性的裝置,因此器件21不要求外部XML驗(yàn)證器23。為了從模式/DTD數(shù)據(jù)庫(kù)221接收對(duì)應(yīng)于XML文件的模式/DTD,模式/DTD接收器233應(yīng)當(dāng)從XML文件找到模式/DTD數(shù)據(jù)庫(kù)221的位置,即模式/DTD221的URL。關(guān)于此如下模式/DTD接收器233以在器件21的XML文件的示例中所述URL“xsischemaLocation=http//www.invoice.org/Invoice.xsd”從模式/DTD數(shù)據(jù)庫(kù)221接收模式/DTD。換句話說(shuō),外部XML驗(yàn)證器23從器件21接收XML文件,接收在標(biāo)簽<schemaLocation>中的對(duì)應(yīng)模式/DTD,并且檢驗(yàn)XML文件的有效性。
XML驗(yàn)證器232將XML文件應(yīng)用到所接收的模式/DTD以檢驗(yàn)XML文件的有效性。換句話說(shuō),XML驗(yàn)證器232分析在模式/DTD中定義的、用于配置XML文件的協(xié)議,并且產(chǎn)生模式/DTD語(yǔ)法結(jié)構(gòu)。接著,XML驗(yàn)證器232將XML文件應(yīng)用到模式/DTD語(yǔ)法結(jié)構(gòu)以驗(yàn)證在XML文件中的差錯(cuò)。在此,可以通過(guò)改變或修改模式/DTD的版本而驗(yàn)證所有可能的XML文件。
XML有效性結(jié)果發(fā)送器231經(jīng)由有線或無(wú)線網(wǎng)絡(luò)向XML語(yǔ)法分析器211發(fā)送XML文件的有效性結(jié)果。按照有效性結(jié)果,可以出現(xiàn)三種情況。在第一種情況下,器件12不是具有較低性能的處理器和小存儲(chǔ)器的嵌入器件,并且創(chuàng)建和發(fā)送“NONE(無(wú))”消息。在第二種情況下,XML文件不具有差錯(cuò),并且創(chuàng)建和發(fā)送一個(gè)“OK(好)”消息。在第三種情況下,XML具有差錯(cuò),并且產(chǎn)生和發(fā)送包括“差錯(cuò)+行號(hào)+理由”的消息。在創(chuàng)建和向器件21發(fā)送“OK”消息的情況下,一個(gè)DOM/SAX樹(shù)被創(chuàng)建和發(fā)送到XML應(yīng)用程序212。在產(chǎn)生并且向器件21發(fā)送“NONE”消息或消息“差錯(cuò)+行號(hào)+理由”的情況下,“NON”消息或消息“差錯(cuò)+行號(hào)+理由”本身被經(jīng)由有線或無(wú)線網(wǎng)絡(luò)發(fā)送到XML應(yīng)用程序212。
圖3是解釋按照本發(fā)明的一個(gè)實(shí)施例的用于通過(guò)使用外部XML驗(yàn)證器來(lái)語(yǔ)法分析XML文件的方法的流程圖。
在步驟31中,從XML應(yīng)用程序接收XML文件。在步驟32,外部XML驗(yàn)證器接收檢驗(yàn)XML文件的有效性的請(qǐng)求并且響應(yīng)所述請(qǐng)求。如果在步驟33確定XML文件有效,則在步驟34,DOM/SAX樹(shù)從XML文件被產(chǎn)生并且被經(jīng)由有線或無(wú)線網(wǎng)絡(luò)發(fā)送到XML應(yīng)用程序。如果在步驟33確定XML文件無(wú)效,則在步驟35,經(jīng)由有線或無(wú)線網(wǎng)絡(luò)向XML應(yīng)用程序發(fā)送差錯(cuò)消息。對(duì)于檢驗(yàn)XML文件的有效性的請(qǐng)求,外部XML驗(yàn)證器的位置應(yīng)當(dāng)從所接收的XML文件找到并且隨后被請(qǐng)求檢驗(yàn)XML文件的有效性。而且,當(dāng)請(qǐng)求檢驗(yàn)XML文件的有效性的時(shí)候,用于執(zhí)行XML語(yǔ)法分析方法的器件的OS的一個(gè)版本和XML文件被發(fā)送到外部XML驗(yàn)證器。
圖4是解釋按照本發(fā)明的一個(gè)實(shí)施例的通過(guò)使用外部XML驗(yàn)證器來(lái)檢驗(yàn)XML文件的有效性的方法的流程圖。
在步驟41中,如果利用外部XML驗(yàn)證器從XML語(yǔ)法分析器接收到檢驗(yàn)XML文件的有效性的請(qǐng)求,則經(jīng)由有線或無(wú)線網(wǎng)絡(luò)從模式/DTD數(shù)據(jù)庫(kù)接收到對(duì)應(yīng)于XML文件的模式/DTD。在步驟42,XML文件被應(yīng)用到模式/DTD并且XML文件的有效性被檢驗(yàn)。在步驟43,經(jīng)由有線或無(wú)線網(wǎng)絡(luò)利用外部XML驗(yàn)證器向XML語(yǔ)法分析器發(fā)送XML文件的有效性結(jié)果。在此,在接收到用于執(zhí)行XML語(yǔ)法分析方法的器件的OS的版本和XML文件和檢驗(yàn)XML文件的有效性的請(qǐng)求之后,僅僅當(dāng)OS要求外部XML驗(yàn)證器的時(shí)候,從模式/DTD數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式/DTD。如果接收到檢驗(yàn)XML文件的有效性的請(qǐng)求,則模式/DTD數(shù)據(jù)庫(kù)的位置應(yīng)當(dāng)從XML文件找到以便從模式/DTD數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式/DTD。
圖5是解釋用于檢驗(yàn)XML文件的有效性的方法和用于通過(guò)使用該有效性方法來(lái)語(yǔ)法分析XML文件的方法的流程圖。
在步驟51,接收到XML文件,并且請(qǐng)求對(duì)XML文件的有效性的檢驗(yàn)。在步驟52,接收到對(duì)應(yīng)于XML文件的模式/DTD,XML文件被應(yīng)用到模式/DTD以檢驗(yàn)XML文件的有效性,并且發(fā)送XML文件的有效性結(jié)果。如果在步驟53確定XML文件有效,則在步驟54,DOM/SAX樹(shù)被從XML文件創(chuàng)建并且被發(fā)送。如果在步驟53確定XML文件無(wú)效,則在步驟55發(fā)送差錯(cuò)消息。
如上所述,按照本發(fā)明,當(dāng)調(diào)用外部XML驗(yàn)證器的時(shí)候,可以最小化具有較低性能和小存儲(chǔ)器的嵌入器件(如PDA或便攜電話等)的資源的使用。因此,可以調(diào)用外部XML驗(yàn)證器來(lái)向XML應(yīng)用程序發(fā)送準(zhǔn)確的XML文件而無(wú)需擴(kuò)展現(xiàn)有的語(yǔ)法分析器。而且,外部XML驗(yàn)證器可以同時(shí)檢驗(yàn)之前的模式/DTD和之后的模式/DTD以糾正在XML文件中由于模式/DTD的版本導(dǎo)致的差錯(cuò)(在XML文件中由于外部模式/DTD的改變而導(dǎo)致的差錯(cuò))。
本發(fā)明的上述實(shí)施例可以被寫(xiě)為可以在計(jì)算機(jī)中執(zhí)行的程序,并且可以利用計(jì)算機(jī)可讀記錄介質(zhì)在通用的數(shù)字計(jì)算機(jī)中實(shí)現(xiàn)。計(jì)算機(jī)可讀記錄介質(zhì)包括磁存儲(chǔ)介質(zhì)(如ROM、軟盤、硬盤等)、光學(xué)讀出器(如CD-ROM和DVD等)、載波(如通過(guò)因特網(wǎng)的發(fā)送)。
雖然已經(jīng)參照本發(fā)明的示范實(shí)施例具體示出和說(shuō)明了本發(fā)明,本領(lǐng)域的技術(shù)人員會(huì)明白,在不脫離所附的權(quán)利要求所限定的本發(fā)明的精神和范圍的情況下,可以進(jìn)行形式和細(xì)節(jié)上的各種改變。
權(quán)利要求
1.一種外部XML驗(yàn)證器,用于在XML語(yǔ)法分析器中檢驗(yàn)XML文件的有效性,所述外部XML驗(yàn)證器包括模式/文件類型定義接收器,被請(qǐng)求從XML語(yǔ)法分析器檢驗(yàn)XML文件的有效性,并且從模式/文件類型定義數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式或文件類型定義;XML驗(yàn)證器,將XML文件應(yīng)用到所接收的模式或文件類型定義以檢驗(yàn)XML文件的有效性;XML有效性結(jié)果發(fā)送器,向XML語(yǔ)法分析器發(fā)送XML文件的有效性結(jié)果。
2.按照權(quán)利要求1的外部XML驗(yàn)證器,其中模式/文件類型定義接收器從XML語(yǔ)法分析器接收具有XML語(yǔ)法分析器的器件的操作系統(tǒng)的版本和XML文件,接收檢驗(yàn)XML文件的有效性的請(qǐng)求,并且如果操作系統(tǒng)要求外部XML驗(yàn)證器,則從模式/文件類型定義數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式或文件類型定義。
3.按照權(quán)利要求1的外部XML驗(yàn)證器,其中如果模式/文件類型定義接收器從XML語(yǔ)法分析器接收檢驗(yàn)XML文件的有效性的請(qǐng)求,模式/文件類型定義接收器從XML文件找到模式/文件類型定義數(shù)據(jù)庫(kù)的位置,并且從模式/文件類型定義數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式或文件類型定義。
4.一種用于使用外部XML驗(yàn)證器檢驗(yàn)XML文件的有效性的方法,所述方法包括(a)如果被請(qǐng)求檢驗(yàn)XML文件的有效性,則接收對(duì)應(yīng)于XML文件的模式或文件類型定義;(b)將XML文件應(yīng)用到模式或文件類型定義以檢驗(yàn)XML文件的有效性;(c)發(fā)送XML文件的有效性結(jié)果。
5.按照權(quán)利要求4的方法,其中在步驟(a),接收XML語(yǔ)法分析器的操作系統(tǒng)的版本和XML文件,請(qǐng)求檢驗(yàn)XML文件的有效性,并且如果操作系統(tǒng)要求外部XML驗(yàn)證器,則從模式/文件類型定義數(shù)據(jù)庫(kù)接收模式或文件類型定義。
6.按照權(quán)利要求4的方法,其中在步驟(a),如果請(qǐng)求檢驗(yàn)XML文件的有效性,則從XML文件找到模式/文件類型定義數(shù)據(jù)庫(kù)的位置,并且從模式/文件類型定義數(shù)據(jù)庫(kù)接收對(duì)應(yīng)于XML文件的模式或文件類型定義。
全文摘要
提供一種用于當(dāng)XML應(yīng)用程序運(yùn)行在具有較低性能的處理器和小存儲(chǔ)器的嵌入器件中的時(shí)候檢驗(yàn)XML文件的有效性的裝置和方法,以便防止由于錯(cuò)誤信息而導(dǎo)致的XML應(yīng)用程序中的差錯(cuò)。使用外部XML驗(yàn)證器的XML語(yǔ)法分析器包括XML接收器、外部XML驗(yàn)證器調(diào)用器和DOM/SAX樹(shù)產(chǎn)生器。外部XML驗(yàn)證器包括模式/DTD接收器、XML驗(yàn)證器和XML有效性結(jié)果發(fā)送器。
文檔編號(hào)G06F17/22GK1869974SQ200610091789
公開(kāi)日2006年11月29日 申請(qǐng)日期2003年4月28日 優(yōu)先權(quán)日2002年6月26日
發(fā)明者李在晨, 李京訓(xùn) 申請(qǐng)人:三星電子株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
汾西县| 宁乡县| 治多县| 进贤县| 永城市| 营山县| 宁城县| 卓尼县| 紫金县| 太仆寺旗| 敖汉旗| 拜泉县| 孙吴县| 阿拉善左旗| 万宁市| 延长县| 天峻县| 通山县| 磐安县| 太白县| 常熟市| 彭阳县| 普兰店市| 尼玛县| 肃南| 沙洋县| 泸水县| 祁门县| 武山县| 三门县| 罗平县| 叙永县| 彰武县| 凤山县| 闻喜县| 仪征市| 清流县| 九龙城区| 新源县| 吴忠市| 芦溪县|