Corsair

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

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

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

          評論

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

          只有一講?
            回復(fù)  更多評論    
          主站蜘蛛池模板: 平远县| 兰州市| 鄂伦春自治旗| 内丘县| 和龙市| 大竹县| 上栗县| 东兴市| 大理市| 新兴县| 五常市| 高尔夫| 尉犁县| 湖北省| 彭州市| 阜新市| 贵港市| 南汇区| 普安县| 定兴县| 平江县| 马关县| 龙游县| 桦南县| 黑龙江省| 庆云县| 盐边县| 彭山县| 秦安县| 甘谷县| 乌鲁木齐市| 康平县| 苏尼特左旗| 西丰县| 乌审旗| 巴青县| 武山县| 汕头市| 垦利县| 武宁县| 三穗县|