Corsair

          My javaWorld
          數(shù)據(jù)加載中……
          XML精要一

          《XML精要》
          前言
          開始學(xué)XML也有個把星期了,前后看了幾本書關(guān)于XML基礎(chǔ)的書,感覺講的甚是凌亂,有些書甚至干脆直接在網(wǎng)上COPY些資料東抄一點西抄一點最后就出版了(比如《XML語言及應(yīng)用---清華大學(xué)出版社》就干脆直接將網(wǎng)上的《XML初學(xué)進(jìn)階》抄下來,將例子改改就完了)現(xiàn)在中國大學(xué)治學(xué)的態(tài)度可見一斑,直到本周發(fā)現(xiàn)了一個IBM的在線XML教程,該教程將XML所有的知識分解為一個個單獨的講座,每堂課還介紹了所需要的前提知識以及所要用到到參考資料,而且教程將知識講的非常的簡練和精確,但可惜該教程是在2002年左右發(fā)表的了,在網(wǎng)上資源不是很好找而且比較散,所以我決定將我學(xué)的每趟講座的精要和我個人的讀書筆記整理出來形成一個連載,一來鞏固我的學(xué)習(xí),二來也可以供大家參考,取名《XML精要》。言歸正傳,那我就開始嘍!
          //===============================
          第一講《理解XML》精要
          第一部分《XML 文檔基本規(guī)則》:
          定義
          無效文檔:沒有遵守 XML 規(guī)范定義的語法規(guī)則。如果開發(fā)人員已經(jīng)在 DTD 或模式中定義了文檔能夠包含什么,而某個文檔沒有遵守那些規(guī)則,那么這個文檔也是無效的。
          有效文檔:既遵守 XML 語法規(guī)則也遵守在其 DTD 或模式中定義的規(guī)則。
          格式良好的文檔:遵守 XML 語法,但沒有 DTD 或模式。
          //===============================
          語法
          1 XML聲明:xml以聲明作為開始,它向解析器提供了關(guān)于文檔的基本信息。建議使用 XML聲明,但它不是必需的。如果有的話,那么它一定是文檔的第一樣?xùn)|西即只能放在第一行。
          //==========
          2 根元素:XML 文檔有且僅有一個根元素。
          3 XML 元素不能重疊 例如 <b>I <i>really love</b> XML.</i>在xml里是不允許的。
          4 不能省去任何結(jié)束標(biāo)記 所有的標(biāo)簽都要成對的出現(xiàn)。
          5 XML中可以出現(xiàn)空元素。例如下面兩種寫法是相同的
          <img src="../img/c.gif"></img>
          <img src="../img/c.gif" />你可以把“/”寫在“<>”中;
          6 XML 元素是區(qū)分大小寫的,xml語言是大小寫敏感的。
          7 屬性必須有用引號括起的值<img? src=” ../img/c.gif”>
          //===============================
          其他:
          9 注釋:注釋可以出現(xiàn)在文檔的任何位置。格式:<!—這里是注釋-->
          //==========
          10 處理指令:處理指令是為使用一段特殊代碼而設(shè)計的標(biāo)記。在下面的示例中,有一個用于 Cocoon 的處理指令(有時稱為 PI),Cocoon 是來自 Apache 軟件基金會(Apache Software Foundation)的 XML 處理框架。當(dāng) Cocoon處理 XML 文檔時,它會尋找以cocoon-process開頭的處理指令,然后相應(yīng)地處理XML 文檔。
          在該示例中,type屬性告訴 Cocoon:XML 文檔包含一個 SQL 語句。
          <!-- Here's a PI for Cocoon: -->
          <?cocoon-process type="sql"?>
          //==========
          11 實體:下面的示例為文檔定義了一個實體。
          <!-- Here's an entity: -->
          <!ENTITY dw "developerWorks">
          無論 XML 處理器在何處找到字符串dw,它都會用字符串developerWorkds代替該實體。XML 規(guī)范還定義了五個您可以用來替代不同的特殊字符的實體。這些實體是:&lt代表小于符號&gt代表大于符號 &quot代表一個雙引號&apos代表一個單引號(或撇號)&amp代表一個“與”符號。
          //==========
          12 名稱空間
          為了區(qū)別不同XML文檔檔中的同一些標(biāo)簽符號引入名稱空間以示區(qū)別,定義名稱空間的語法如下:要使用名稱空間,您要定義一個名稱空間前綴,然后將它映射至一個特殊字符串。下面介紹如何定義元素的名稱空間前綴:
          <?xml version="1.0"?>
          <customer_summary
          ? xmlns:addr="h...
          <addr:name><title>Mrs.</title> ... </addr:name>
          注意:名稱空間定義中的字符串僅僅是字符串。對,這些字符串看似 URL,其實不是。稱空間唯一的重要性在于其唯一性。所以通常使用URL原因。它只是把那個文本作為字符串使用。這有些令人困惑,但名稱空間就是這樣工作的。

          posted on 2006-10-29 22:54 銀河海盜 閱讀(339) 評論(1)  編輯  收藏 所屬分類: WEB

          評論

          # re: XML精要一 2007-02-08 09:07 ddd

          只有一講?
            回復(fù)  更多評論    
          主站蜘蛛池模板: 宁城县| 龙井市| 荔浦县| 游戏| 城口县| 启东市| 丰顺县| 专栏| 长宁区| 新乡县| 永修县| 钟祥市| 泰安市| 永丰县| 灌南县| 葵青区| 勐海县| 龙岩市| 孝义市| 大姚县| 灌南县| 子长县| 白山市| 蒙山县| 额尔古纳市| 三穗县| 东乌珠穆沁旗| 凤庆县| 通许县| 措美县| 西青区| 淮北市| 保康县| 南部县| 阿拉善盟| 天长市| 辽阳市| 金湖县| 晋中市| 奈曼旗| 三江|