中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      IBM XML認證知識點:解析器

      時間:2024-06-18 05:01:31 IBM認證 我要投稿
      • 相關(guān)推薦

      IBM XML認證知識點:解析器

        一個 XML(XML培訓(xùn) 編程語言培訓(xùn) ) Parser(解析器)是一段可以讀入一個文檔并分析其結(jié)構(gòu)的代碼。下面YJBYS小編為大家整理了關(guān)于IBM XML認證知識點,希望對你有所幫助。

      IBM XML認證知識點:解析器

        Parser基礎(chǔ)

        一個 XML Parser(解析器)是一段可以讀入一個文檔并分析其結(jié)構(gòu)的代碼。

        在本章節(jié),我們將討論如何使用一個 XML 解析器來讀入一個 XML 文檔。我們也將討論不同類型的解析器以及您在何時使用它們。

        如何使用一個解析器

        通常而言,使用一個解析器需要如下步驟:

        創(chuàng)建一個解析器對象

        將您的 XML 文檔傳遞給解析器

        處理結(jié)果

        構(gòu)建一個 XML 應(yīng)用顯然遠遠超出這些,但通常一個 XML 的應(yīng)用將包含這些流程。

        解析器種類

        有不同的方法來劃分解析器種類:

        驗證或非驗證解析器

        支持 Document Object Model (DOM) 的解析器

        支持 Simple API for XML (SAX) 的解析器

        特定語言編寫的解析器 (Java, C++, Perl 等)

        接下來我們將討論這幾種解析器的各自特點.

        驗證或非驗證解析器

        如我們在前面所提及的,XML 文檔如果使用一個 DTD 并符合 DTD 中的規(guī)則將被稱為有效文檔(valid document)。符合基本標記規(guī)則的 XML 文檔被稱為格式正確文檔(well-formed document)。

        XML 規(guī)范要求所有的解析器當(dāng)其發(fā)現(xiàn)一個文檔不是格式正確時要報錯。

        驗證(Validation)則是另一個問題了。驗證解析器(Validating parser)在解析 XML 文檔同時進行驗證。非驗證解析器(Non-validating parser) 忽略所有的驗證錯誤。

        換而言之,如果一個 XML 文檔是格式正確的時,一個非驗證解析器并不關(guān)注文檔是否符合其對應(yīng) DTD 所指定的規(guī)則(如果有的話)。

        為何使用非驗證解析器?

        速度和效率。要一個 XML 解析器處理 DTD 并確保每個 XML 的元素符合在 DTD 中的規(guī)則需要相當(dāng)大的開銷。如果您確定一個 XML 文檔是有效的(可能來自一個數(shù)據(jù)源),那就沒有必要再次驗證它了。

        同樣,有時您所需要的只是從一個文檔中找出 XML 的標記。一旦您有了這些標記,您可以將數(shù)據(jù)從中提取出然后加以處理。如果這就是您所需要的,一個非驗證解析器就是正確的選擇。

        Document Object Model (DOM)

        文檔對象模型(Document Object Model)是 World Wide Web Consortium(W3C) 的正式推薦。它定義了一個接口使得程序可以存取和更新 XML 文檔的風(fēng)格、結(jié)構(gòu)和內(nèi)容。支持 DOM 的 XML 解析器實現(xiàn)該接口。

        該規(guī)范的第一版,DOM Level 1,可從 http://www.w3.org/TR/REC-DOM-Level-1 獲得。

        當(dāng)您用一個 DOM 解析器來解析一個 XML 文檔時,您將獲得一個包含文檔中所有元素的樹結(jié)構(gòu)。DOM 提供了不同的功能來檢查文檔的內(nèi)容和結(jié)構(gòu)。

        Simple API for XML (SAX)

        SAX API 是另一種處理 XML 文檔內(nèi)容的方法。一個既成事實的標準,它由 David Megginson 和 XML-Dev 郵件列表其它成員所開發(fā)。

        要查看完整的 SAX 標準,參見 www.megginson.com/SAX/。要參加 XML-Dev 郵件列表,發(fā)送郵件到 majordomo@ic.ac.uk 其中包含: subscribe xml-dev。

        當(dāng)您使用 SAX 解析器來解析 XML 文檔時,解析器在文檔的不同處將產(chǎn)生事件。由您來決定對每個事件如何處理。

        SAX 解析器會在以下情況下產(chǎn)生事件:在文檔開始和結(jié)束時,在一個元素開始和結(jié)束時,或者它在一個元素中找到字符時,以及其它若干點。您可編寫 Java 代碼來處理每個事件,以及如何處理從解析器獲得的信息。

        何時使用 SAX?何時使用 DOM?

        為了確定哪種接口適合您,您需要理解所有接口的設(shè)計要點,而且需要理解應(yīng)用程序用您將要處理的 XML 文檔來做什么?紤]下面的問題將有助于您找到正確的方法。

        要用 Java 編寫應(yīng)用程序嗎?

        JAXP 使用 DOM、SAX 和 JDOM;如果您用 Java 編寫代碼,那么您應(yīng)使用 JAXP 將您的代碼與各種解析器實現(xiàn)的細節(jié)隔離。

        應(yīng)用程序?qū)⑷绾尾渴?

        如果您的應(yīng)用程序?qū)⒁鳛?Java applet 部署,那么您會希望使要下載的代碼數(shù)量最小,別忘了 SAX 解析器比 DOM 解析器小。還要知道使用 JDOM 時,除了 SAX 或 DOM 解析器之外還要求編寫少量的代碼。

        一旦解析了 XML 文檔,還需要多次訪問那些數(shù)據(jù)嗎?

        如果您需要回過頭來訪問 XML 文件的已解析版本,DOM 可能是正確的選擇。而 SAX 事件被觸發(fā)時,如果您以后需要它,則由您(開發(fā)人員)自己決定以某種方式保存它。如果您需要訪問不曾保存的事件,則必須再次解析該文件。而 DOM 自動保存所有的數(shù)據(jù)。

        只需要 XML 源文件的少量內(nèi)容嗎?

        如果您只需要 XML 源文件的少量內(nèi)容,那么 SAX 可能是正確的選擇。SAX 不會為源文件中的每個東西創(chuàng)建對象;您要確定什么是重要的。使用 SAX,您要檢查每個事件以了解它是否與您的需要有關(guān),然后相應(yīng)地處理它。更妙的是,一旦找到您正在尋找的東西,您的代碼就會拋出一個異常來完全停止 SAX 解析器。

        您正在一臺內(nèi)存很少的機器上工作嗎?

        若是的話,不管您可能考慮到的其它因素是什么,SAX 是您的最佳選擇。

        要知道還存在用于其它語言的 XML API;尤其是 Perl 和 Python 社區(qū)有極佳的 XML 工具。


      【IBM XML認證知識點:解析器】相關(guān)文章:

      IBM XML認證知識點:Dtd09-01

      關(guān)于IBM XML認證考試的要點09-07

      XML認證考試知識點:Parser08-21

      ibm認證考試知識點08-05

      IBM認證的分類和獲得IBM認證的好處10-18

      IBM認證考試認證體系06-27

      IBM認證的優(yōu)勢08-20

      IBM認證優(yōu)勢07-28

      IBM認證項目07-03

      IBM認證簡介07-24

      主站蜘蛛池模板: 蜜桃视频在线观看网站免费| 婷婷开心五月综合基地| 美女裸体无遮挡免费视频国产| 久久久99精品视频| 国产三级三级三级看三级日本 | 日本一区二区三区观看视频| 亚洲一区二区高清在线| 萨嘎县| 成年男人裸j照无遮挡无码| 人妖另类综合视频网站| 亚洲乱码精品中文字幕| 亚洲免费视频网站在线| 日本一区二区不卡超清在线播放| 国产精品一区二区三区色| 亚洲精品中文字幕观看| WWW拍拍拍| 国产精品久久国产三级 | 久久久精品国产精品久久 | 久久精品国产精品亚洲婷婷| 九龙坡区| 峨边| 张家川| 一区二区三区中文字幕有码| 国产精品反差婊在线观看| 亚洲国产精品第一区二区三区| 亚洲VR永久无码一区| av狼人婷婷久久亚洲综合| 高台县| 德昌县| 竹山县| 林口县| 萍乡市| 昆山市| av一区二区精品在线| 亚洲精品中文有码字幕| 衡阳市| 和顺县| 亚洲日本在线中文字幕| 亚洲AV无码一区二区三区精神| av亚洲在线一区二区| 人人妻人人澡av|