首頁  >  文章  >  後端開發  >  XML輕鬆學習手冊

XML輕鬆學習手冊

黄舟
黄舟原創
2016-12-23 11:16:262336瀏覽

(一):XML快速入門

  前言
  XML越來越熱,關於XML的基礎教學網路上也隨處可見。可是一大堆的概念和術語往往讓人望而生畏,很多朋友問我:XML到底有什麼用,我們是否需要學習它?我想就我個人學習過程的心得和經驗,寫一篇比較全面的介紹文章。首先有兩點是需要肯定的:
  第一:XML肯定是未來的發展趨勢,不論是網頁設計師還是網頁程式設計師,都應該及時學習和了解,等待只會讓你失去機會;
  第二:新知識肯定會有很多新概念,試著理解和接受,您才可能會提高。不要害怕和逃避,畢竟我們還年輕。
  提綱
  本文共分五大部分。分別是XML快速入門,XML的概念,XML的術語,XML的實現,XML的實例分析。最後附錄介紹了XML的相關資源。作者站在一般網頁設計人員的角度,用平實生動的語言,向您講述XML的方方面面,幫助你撥開XML的神秘面紗,快速步入XML的新領域。
  第一章:XML快速入門
  一. 什麼是XML?
  二. XML是新概念嗎?
  三. 使用XML有什麼好處?
  四. XML很難學嗎?
  五. XML和HTML的區別
  六. XML的嚴格格式
  七. 關於XML的更多

  一. 什麼是XML?

  這往往是第一個問題,也往往在第一個問題上你就會搞不明白,因為大多的教材上這樣回答:
  XML是Extensible Markup Language的簡寫,一種擴展性標識語言。
  這是標準的定義。那什麼是標誌語言,為什麼叫擴展性?已經讓人有些糊塗。我想我們這樣來理解會好一點:
  對HTML你已經非常熟悉了吧,它就是一種標記語言,記得它的全名嗎:"Hypertext Markup Language" 超文本標記語言。明白了?同時,HTML裡面有很多標籤,類似

,等,都是在HTML 4.0裡規範和定義,而XML裡允許你自己創建這樣的標籤,所以叫做可擴充性。
  這裡有幾個容易混淆的概念要提醒大家:
  1.XML並不是標記語言。它只是用來創造標記語言(例如HTML)的元語言。天,又糊塗了!不要緊,你只要知道這一點:XML和HTML是不一樣的,它的用途比HTML廣泛得多,我們將在後面仔細介紹。
  2.XML並不是HTML的替代產品。 XML不是HTML的升級,它只是HTML的補充,為HTML擴充更多功能。我們仍將在較長的時間裡繼續使用HTML。 (但值得注意的是HTML的升級版本XHTML的確正在向適應XML靠攏。)
  3.不能用XML來直接寫網頁。即便是包含了XML數據,依然要轉換成HTML格式才能在瀏覽器上顯示。
  以下就是一段XML範例文件(例1),用來表示本文的資訊:
  
  
  XMLML Start Quicko、>
  ajie@aolhoo.com
  20010115
  

  XML,並不能實現什麼具體應用;
  2.其中類似,<author>的語句就是自己創建的標記(tags),它們和HTML標記不一樣,例如這裡的<title>是文章標題的意思,HTML裡的<title>是頁面標題。 <br><br>  二. XML是新概念嗎? <p>  不是。 XML來自SGML,一種比HTML更早的標誌語言標準。 </p>  關於SGML,我們來簡單了解一下,你只需要有個大致概念就可以。 <p>  SGML全名為"Standard Generalized Markup Language"(通用標識語言標準)。看名稱就知道:它是標誌語言的標準,也就是說所有標誌語言都是依照SGML制定的,當然包括HTML。 SGML的涵蓋範圍很廣,凡是有一定格式的檔案都屬於SGML,例如報告,樂譜等等,HTML是SGML在網路上最常見的檔案格式。因此,人們戲稱SGML是HTML的"媽媽"。 <br>  而XML就是SGML的簡化版,只不過省略了其中複雜和不常用的部分。 (哦,明白了!是HTML第二個"mother",難怪比HTML功能強大呢。),和SGML一樣,XML也可以應用在金融,科研等各個領域,我們這裡講的,只是XML在web方面的運用而已。 <br>  到這裡,你應該有點明白了:XML是用來建立定義類似HTML的標記語言,然後再用這個標記語言來顯示訊息。 <br><br>  三. 使用XML有什麼好處? </p> <p>  有了HTML,為什麼還需要用XML? <br>  因為現在網路應用越來越廣泛,僅靠HTML單一文件類型來處理千變萬化的文檔和資料已經力不從心,而且HTML本身語法十分不嚴密,嚴重影響網路資訊傳送和共享。 (想想瀏覽器相容的問題傷透多少設計師的腦細胞啊。)人們早已經開始探討用什麼方法來滿足網路上各種應用的需要。使用SGML是可以的,但SGML太龐大,程式設計複雜,於是最終選擇了"減肥"的SGML---XML作為下一代web運用的資料傳輸和互動的工具。 <br>  使用XML有什麼好處?來看w3c組織(XML標準制定者)的說明:<br>  XML使得在網路上使用SGML語言更加"簡單和直接": 簡化了定義檔案類型的過程,簡化了程式設計和處理SGML檔案的過程,簡化了在Web上的傳送和共用。 <br>  1.XML可以廣泛的運用於web的任何地方; <br>  2.XML可以滿足網絡應用的需求;<br>  3.使用XML將使編程更加簡單;<br>  4.XML[ML]便於學習和創建代碼將清晰和便於閱讀理解;<br>  還是抽象了些。讓我們在後面的實例教學中慢慢體會XML的強大優勢吧! <br>  四. XML很難學嗎? <br>  如果你有興趣學習XML,不禁會問:XML難嗎?學習XML需要什麼樣的基礎? <br>  XML非常簡單,學習容易。如果你熟悉HTML,你會發現它的文件和HTML非常相似,看同樣的範例文件(例1):<br>  <?xml version="1.0"?><br>  <myfile><br>  <title>XML Quick Start title><br>  <author>ajie</author><br>  <email>ajie@aolhoo.com</email><br>  <date>20010115</date><br>  <date>20010115</date><br>  〔1〜. ?>是一個XML聲明,表示文件遵循的是XML的1.0 版的規範。 <br>  第二行定義了文件裡面的第一個元素(element),也稱為根元素: <myfile>。這個就類似HTML裡的開頭標記。注意,這個名稱是自己隨便定義的。 <br>  再下面定義了四個子元素:title,author,email,和date。分別說明文章的標題,作者,信箱和日期。當然,你可以用中文來定義這些標籤,看起來更方便理解:<br>  <?xml version="1.0" encoding="GB2312"?><br>  <br>  XML117 月輕鬆學習手冊 ajie作者><br>  ajie@aolhoo.com信箱><br>  20010115日期><br>  文章><br>  這就是XML的文檔,任何就是XML的文檔寫出這樣簡單的XML文件。 <br>  另外,學習XML還必須掌握一種頁面腳本語言,常見的就是javascript和VB script。因為XML資料是使用script實現HTML中呼叫和互動的。我們來看一個最簡單的例子(例2):<br>  1.將下面程式碼存為myfile.htm<br>  <br>  <br>  <script language="Script" for="window" event="onload"> <br/>  var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");<br/>  xmlDoc.async="false";<br/>  xmlDoc.load("myfile.xml");<br/>  xmlDoc.load("myfile.xml"); = nodes .item(0).text;<br/>  author.innerText = nodes.item(1).text;<br/>  email.innerText = nodes.item(2).text;<br/>  date.innerText = nodes.item(3). <br/>  </script><br>  <title>在HTML中呼叫XML資料
  
  
   、〜、) title">

  作者:
  

   信箱      panid 信箱="email">

  日期:
  

  🀜  .將下面程式碼儲存為myfile.xml
  
  
  XML輕鬆學習手冊
ajie
  ajie@aolhoo.com
  20010115
  
🀎   下一個以上目錄版本瀏覽器打開,可以看到效果。點這裡看實例。
  學習並掌握一種script,你將真正發揮XML無比強大的功能。

  五. XML和HTML的區別

  XML和HTML都來自於SGML,它們都含有標記,有著相似的語法,HTML和XML的最大區別在於:HTML是一個定型的標記語言,它用固有的標記來描述,顯示網頁內容。例如

表示首行標題,有固定的尺寸。相對的,XML則沒有固定的標記,XML無法描述網頁具體的外觀,內容,它只是描述內容的資料形式和結構。

  這是一個質的區別:網頁將資料和顯示混在一起,而XML則將資料和顯示分開來。
  我們看上面的例子,在myfile.htm中,我們只關心頁面的顯示方式,我們可以設計不同的介面,用不同的方式來排版頁面,但資料是儲存在myfile.xml中,不需要任何改變。
  (如果你是程式設計師,你會驚訝的發現,這與模組化物件導向程式設計的想法極為相似!其實網頁何嘗不是一種程式?) 
  正是這種區別使得XML在網路應用程式和資訊分享上方便,高效,可擴充。所以我們相信,XML做為一種先進的資料處理方法,將使網路跨越到一個新的境界。

  六. XML的嚴格格式

  吸取HTML鬆散格式帶來的經驗教訓,XML一開始就堅持實行"良好的格式"。

  我們先看HTML的一些語句,這些語句在HTML中隨處可見:
  1.

sample
  2.sample
  2.sample
  3.


  4.samplar
  另外,XML標記必須遵循下面的命名規則:
  1.名字中可以包含字母、數字以及其它字母;
  2.名字不能以數字或"_" (底線) 開頭;
  3.名字不能以字母xml (或XML 或Xml ..) 開頭;
  4.名字中不能包含空格。
  在XML文件中任何的差錯,都會得到同一個結果:網頁不能被顯示。各瀏覽器開發人員已經達成協議,對XML實行嚴格而挑剔的解析,任何細小的錯誤都會被回報。你可以將上面的myfile.xml修改一下,例如將改為,然後用IE5直接開啟myfile.xml,會得到一個出錯訊息頁面:
  
  
  XML輕鬆學習手冊
  ajie
   mail>ajie@aolhoo.com >  

  七. 關於XML的更多


  好了,到現在你已經知道:
  1.什麼是XML;
 。〜,HTHT7]]差異; .XML的簡單應用。
  恭喜你!你已經不再對XML一無所知,並且已經走在了網路技術的前端。整個學習過程好像並不很難哦:) 
  如果你對XML有更多的興趣,希望進一步了解XML的詳細資料和其它的實際運用技術,歡迎繼續瀏覽我們的下一章:XML的概念。

第二章XML概念
  導言
  經過第一章的快速入門學習,你已經知道了XML是一種能夠讓你自己創造標識的語言,它可以將數據與格式從網頁中分開,它可以儲存數據且共享資料的特性使得XML無所不能。如果你希望深入學習XML,系統掌握XML的來龍去脈,那我們首先還是要回到XML概念的問題。 XML(Extensible Markup Language),一種擴展性標識語言。 "擴展性""標識""語言"。每一個字都明確的點明了XML的重要特徵和功能。讓我們來仔細分析:
  一. 擴展性
  二. 標識
  三. 語言
  四.結構化
『 五. M 資料。性---使用XML,你可以為你的文件建立自己的標記(tags)。

  XML的第一個字是"擴充性",這正是XML強大的功能和彈性的原因。

  在HTML裡,有許多固定的標記,我們必須記住然後使用它們,你不能使用HTML規範裡沒有的標記。而在XML中,你能建立任何你需要的標記。你可以充分發揮你的想像力,給你的文件起一些好記的標記名稱。例如,你的文件包含一些遊戲的攻略,你可以建立一個名為的標記,然後在下再依照遊戲類別建立,等標記。只要清晰,易於理解你可以建立任何數量的標記。

  一開始你也許會不適應,因為我們在學習HTML時,有固定的標記可以直接學習和使用;(很多人包括我自己都是邊分析別人的代碼和標識,邊建立自己的網頁),而XML卻沒有任何標記可以學,也很少有文件的標記是一模一樣的。我們怎麼辦?呵呵,沒有就自己創建呀。一旦你真正開始寫XML文檔,你會發現隨心所欲的創造新標記也是一份有趣的事。你可以建立有自己特色的標記,甚至建立自己的HTML語言。

  擴展性使你有更多的選擇和強大的能力,但同時也產生一個問題就是你必須學會規劃。你自己要理解自己的文檔,知道它由哪幾部分組成,相互之間的關係和如何識別它們。

  關於建立標識還需要說明一點,標識是描述資料的類型或特性,例如寬,年齡,姓名等,而不是資料的內容,例如:, ,,這些都是無用的標記。如果你學過資料庫,你可以這樣理解,標識就是一種字段名。

  二.標識---使用XML你可以辨識文檔中的元素。

  XML的第二個字是"標識",這表明了XML的目的是標識文件中的元素。

  不論你是HTML,還是XML,標識的本質在於便於理解,如果沒有標識,你的文檔在計算機看來只是一個很長的字符串,每個字看起來都一樣,沒有重點之分。

  透過標識,你的文件便於閱讀和理解,你可以劃分段落,列明標題。 XML中,你更可以利用其擴充性來為文件建立更合適的標識。

  不過,有一點要提醒大家注意:標識只是用來識別訊息,它本身並不傳達訊息。例如這樣的HTML代碼:

  frist step 
  這裡表示粗體,只用來說明是用粗體來顯示"frist step"字符,本身並不包含任何實際的訊息,在頁面上你看不到,真正傳達訊息的是"frist step "。

  三.語言---使用XML你要遵循特定的語法來標識你的文件。

  XML第三個字是"語言"。這顯示了作為一種語言XML必須遵循一定的規則。雖然XML的擴展性允許你創建新標識,但它仍然必須遵循特定的結構,語法和明確的定義。

  在電腦領域,語言常常表示一種"程式語言",用來程式實作一些功能和應用,但不是所有的"語言"都是用來程式設計的,XML就只是一種用來定義標識和描述訊息的語言。

  以下我們來深入了解一下XML應用的其本原理,可能會很枯燥,但是對於整體的理解很重要,你可以先快速過一遍,心裡有一個模糊的概念,具體精髓則需要在實踐中慢慢領會。

  四.結構化---XML促使文件結構化,所有的資訊依某種關係排列。

  "結構化"聽起來太抽象了,我們這樣理解,結構化就是為你的文檔建立一個框架,就像寫文章先寫一個提綱。結構化使你的文件看起來不會雜亂無章,每一部分都緊密聯繫,形成一個整體。
  結構化有兩個原則:
  1.每一部分(每一個元素)都和其他元素有關聯。關聯的級數就形成了結構。
  2.標識本身的含義與它所描述的資訊相分離。
  我們來看一個簡單的範例幫助理解:
  
  
   
    什麼是XML
      什麼是XML
    使用XML的好處
   
  、   㜀性的概念]para    標識
   
  

  這是本文的XML描述文檔,可以看到標識分三級關聯,非常清楚:  〜 〜 〜 〜 〜 〜 〜 〜 〜、〜、〜 〜、〜 㜀〜 〜〜〜、〜、〜〜〜、〜〜都〜〜〜 㜀㜀〜〜都〜〜〜 㜀㜀〜、]     .. .
    
   
  
  上面這樣的文檔結構,我們又稱之為"文檔樹",主幹是父元素,如分支元素,和"如

  五.Meta資料(Metadata)---專業的XML使用者會使用meta資料來運作。

  在HTML中我們知道可以使用meta標識來定義網頁的關鍵字,簡介等,這些標識不會顯示在網頁中,但可以被搜尋引擎搜尋到,並影響搜尋結果的排列順序。
  XML對這一原理進行了深化和擴展,用XML,你可以描述你的信息在哪裡,你可以通過meta來驗證信息,執行搜索,強制顯示,或者處理其他的數據。
  以下是一些XML metadata在實際應用中的用途:

  1.可以驗證數位簽名,使線上商務的提交動作(submission)有效。

  2.可以被方便的建立索引和進行更有效搜尋。

  3.可以在不同語言之間傳輸資料。

  W3C組織正在研究一種名為RDF(Resource Description Framework)的metadata處理方法,可以自動交換信息,W3C宣稱,使用RDF配合數字簽名,將使網絡中存在"真實可信"的電子商務。

  六.顯示

  單獨用XML不能顯示頁面,我們使用格式化技術,例如CSS或XSL,才能顯示XML標記建立的文件。
  我們在前面第一章講到XML是將資料和格式分開的。 XML文件本身不知道如何來顯示,必須有輔助文件來幫助實現。 (XML取消了所有標識,包括font,color,p等風格樣式定義標識,因此XML全部是採用類似DHTML中CSS的方法來定義文檔風格樣式。),XML中用來設定顯示風格樣式的文件類型有:
  1.XSL 

  XSL全名為Extensible Stylesheet Language(可擴充樣式語言), 是將來設計XML文件顯示樣式的主要檔案類型。它本身也是基於XML語言的。使用XSL,你可以靈活的設定文件顯示樣式,文件將自動適應任何瀏覽器和PDA(掌上電腦)。

  XSL也可以將XML轉換為HTML,那樣,舊的瀏覽器也可以瀏覽XML文件了。

  2.CSS 

  CSS大家很熟悉了,全名是Cascading Style Sheets(層疊樣式表),是目前用來在瀏覽器上顯示XML文檔的主要方法。
  3.Behaviors 
  Behaviors現在還沒有成為標準。它是微軟的IE瀏覽器特有的功能,用它可以為XML標識設定一些有趣動作。有興趣可以點這裡看一個例子

  七.DOM

  DOM全名為document object model(文檔物件模型),DOM是用來做什麼的呢?假設把你的文件看成一個單獨的對象,DOM就是如何用HTML或XML對這個對象進行操作和控制的標準。
  物件導向的思想方法已經非常流行了,在程式語言(例如java,js)中,都運用物件導向的程式設計思想。在XML中,就是要將網頁也當作一個物件來操作和控制,我們可以建立自己的物件和模板。與對象進行交流,如何命令對象,就要用到API。 API全名為Application Programming Interface,它是存取和操作物件的規則。而DOM就是詳細描述HTML/XML文件物件規則的API。它規定了HTML/XML文件物件的命名協定,程序模型,溝通規則等。在XML文件中,我們可以將每一個識別元素看成一個物件---它有自己的名稱和屬性。
  XML創建了標識,而DOM的作用就是告訴script如何在瀏覽器視窗中操作和顯示這些標識
  上面我們已經簡要的講述了一些XML的基本原理,我們來看看它們之間的關聯以及它們是如何運作的,先看這裡一張圖:

XML輕鬆學習手冊

1.XML描述資料型態。例如:"King lear"是標題元素;
  2.CSS儲存並控制元素的顯示樣式。例如:標題將以18pt字體顯示
  3.script腳本控制元素如何動作。例如:當一個title元素"out of stock",將會以紅色顯示。
  4.DOM則為腳本和物件的交流提供一個公共平台,並將結果顯示在瀏覽器視窗中。
  如果任何一個部分發生錯誤,都不會得到正確結果。
  好了,看到這裡,我們已經對XML是如何運作的有一個整體的大致的概念。透過這一章的學習,我們可能感覺到XML似乎更偏向資料處理,更方便程式設計師學習。實際情況也是這樣的,XML設計的目的就是用來方便的共享和互動資料的。下一章,我們將系統的了解關於XML的各種術語。歡迎您繼續瀏覽。

第三章 XML的術語
  提綱:
  導言
  一.XML文檔的有關術語
  二.DTD的有關術語🀜導言由於XML本身也是一個嶄新的技術,正在不斷發展和變化,各組織和各大網絡公司(微軟,IBM,SUN等)都在不斷推出自己的見解和標準,因此新概念漫天飛就不足為奇了。而國內又缺乏權威的機構或組織來對這些術語正式定名,你所看見的有關XML的中文教材大部分是靠作者本身的理解翻譯過來的,有些是正確的,有些是錯誤的,更加妨礙了我們對這些概念的理解與學習。
  你下面將要看到的關於XML術語的解釋,也是作者本身的理解和翻譯。阿捷是以W3C組織發布的XML1.0標準規範和相關的正式說明文件為根據來講述。可以確保這些理解是基本正確的,至少不是錯誤的。你如果想進一步閱讀和了解,我在本文的最後部分列明了相關資源的出處和鏈接,你可以直接訪問。好,我們轉入正題:

  一.XML文檔的相關術語

  什麼是XML文檔?知道HTML原程式碼檔案吧,XML文件就是用XML識別寫的XML原程式碼檔案。 XML文檔也是ASCII的純文字文件,你可以用Notepad來建立和修改。 XML文件的後綴名為.XML,例如myfile.xml。用IE5.0以上瀏覽器也可以直接開啟.xml文件,但你看到的就是"XML原始碼",而不會顯示頁面內容。你可以將下面程式碼儲存為myfile.xml試試:
  
  
  XMLhor>


  ajie@aolhoo.com
  20010115
  
  XMLML
  
  XMLML
  
  XMLML.2535號一個關於文檔類型的定義;
  3. 用XML標識創建的內容。
  舉例說明:
  
  
  
  ajie
  
  ......
  
 
  其中第一行就是一個XML文檔的聲明,第二行說明這個文件是用filelist.dtd來定義文檔類型的,第三行以下就是內容主體部分。
  我們來了解XML文檔中有關的術語:
  1.Element(元素):
  元素在HTML我們已經有所了解,它是組成HTML文檔的最小單位,在XML中也一樣。一個元素由一個識別來定義,包括開始和結束標識以及其中的內容,就像這樣:ajie 
  唯一不同的就是:在HTML中,標識是固定的,而在XML中,標識需要你自己創建。
  2.Tag(標識) 
  標識是用來定義元素的。在XML中,標識必須成對出現,將資料包圍在中間。標識的名稱和元素的名稱是一樣的。例如這樣一個元素:
  ajie 
  其中就是標識。
  3.Attribute(屬性): 
  什麼是屬性?看這段HTML程式碼:word。其中color就是font的屬性之一。
  屬性是對識別進一步的描述和說明,一個標識可以有多個屬性,例如font的屬性還有size。 XML中的屬性與HTML中的屬性是一樣的,每個屬性都有它自己的名字和數值,屬性是標識的一部分。舉例:
  ajie
  XML中屬性也是自己定義的,我們建議你盡量不使用屬性,而將屬性改成子元素,例如上面的程式碼可以改成這樣:
  ajie
  female
  

  原因是屬性不易擴充和被程式操作。
  4.Declaration(聲明) 
  在所有XML文件的第一行都有一個XML宣告。這個聲明表示這個文檔是一個XML文檔,它遵循的是哪個XML版本的規格。一個XML的宣告語句像這樣:
   
  5.DTD(文件類型定義) 
  DTD是用來定義XML文件中元素,屬性以及元素之間關係的關係。
  透過DTD檔案可以偵測XML文件的結構是否正確。但建立XML文件並不一定需要DTD檔。關於DTD檔案的詳細說明我們將在下面單獨列項。
  6.Well-formed XML(良好格式的XML)
  一個遵守XML語法規則,並遵守XML規範的文檔稱之為"良好格式"。如果你所有的識別都嚴格遵守XML規範,那麼你的XML文件就不一定需要DTD檔來定義它。
  良好格式的文件必須以XML宣告開始,例如:
  
  其中你必須說明文件遵守的XML版本,目前是1.0;其次說明文件是"獨立的",它不需要DTD文件來驗證其中的標識是否有效;第三,要說明文件所使用的語言編碼。預設的是UTF-8,如果使用中文,你需要設定為GB2312。
  良好格式的XML文檔必須有一個根元素,就是緊接著聲明後面建立的第一個元素,其它元素都是這個根元素的子元素,屬於根元素一組。
  良好格式的XML文件的內容書寫時必須遵守XML語法。 (有關XML語法我們將在下一章仔細講解)
  7.Valid XML(有效的XML)
  一個遵守XML語法規則,並遵守相應DTD文件規範的XML文檔稱為有效的XML文檔。注意我們比較"Well-formed XML"和"Valid XML",它們最大的差異在於一個完全遵守XML規範,一個則有自己的"檔案類型定義(DTD)"。
  將XML文件和它的DTD檔案進行比較分析,看是否符合DTD規則的過程叫validation(確認)。這樣的過程通常我們是透過一個名為parser的軟體來處理的。
  有效的XML文件也必須以一個XML聲明開始,例如:
  
  和上面例子不同的,在standalone(獨立)屬性中,這裡設定的是"no",因為它必須和對應的DTD一起使用,DTD檔案的定義方法如下:
  PUBLIC "dtd-name"> 
  其中:
"!DOCTYPE"是指你要定義一個DOCTYPE;
  "type-of-doc"是文檔類型的名稱,由你自己定義,通常與DTD檔名相同;
  "SYSTEM/PUBLIC"這兩個參數只用其一。 SYSTEM是指文件所使用的私有DTD檔案的網址,而PUBLIC則指文件呼叫一個公用的DTD檔案的網址。
  "dtd-name" 就是DTD檔案的網址和名稱。所有DTD檔案的後綴名為".dtd"。
  我們還是用上面的例子,應該寫成這樣:
  
   .DTD的有關術語

  什麼是DTD,我們上面已經簡略提到。 DTD是一種保證XML文件格式正確的有效方法,可以比較XML文件和DTD文件來看文件是否符合規範,元素和標籤使用是否正確。一個DTD文件包含:元素的定義規則,元素間關係的定義規則,元素可使用的屬性,可使用的實體或符號規則。
  DTD檔案也是一個ASCII的文字文件,後綴名為.dtd。例如:myfile.dtd。
  為什麼要用DTD檔呢?我的理解是它滿足了網路共享和資料交互,使用DTD最大的好處在於DTD檔案的共享。 (就是上文DTD說明語句中的PUBLIC屬性)。例如,兩個相同行業不同地區的人使用同一個DTD文件來作為文檔創建規範,那麼他們的資料就很容易交換和共享。網路上有其他人想補充數據,也只需要根據公用的DTD規範來建立文檔,就立刻可以加入。
  目前,已經有數量眾多的寫好的DTD檔案可以利用。針對不同的產業和應用,這些DTD檔案已經建立了通用的元素和標籤規則。你不需要自己重新創建,只要在他們的基礎上加入你需要的新標誌。
  當然,如果你願意,你可以創造自己的DTD,它可能和你的文件配合的更加完美。建立自己的DTD也是很簡單的一件事,一般只要定義4-5個元素就可以了。
  呼叫DTD檔案的方法有兩種:
  1.直接包含在XML文檔內的DTD
  你只要在DOCTYPE聲明中插入一些特別的說明就可以了,象這樣:
 你只要在DOCTYPE聲明中插入一些特別的說明就可以了,象這樣:
  我們有一個X 我們有一個X xml version="1.0" encoding="GB2312"?>
  
  XML輕鬆學習手冊
 file ajie🀜『插入下面程式碼就可以:
  
  
  
  🀜  〦〦〜
  2 .呼叫獨立的DTD檔案
  將DTD文檔存為.dtd的文件,然後在DOCTYPE聲明行中調用,例如,將下面的程式碼存為myfile.dtd
  
  
  
  
  然後在XML文件中調用,在第一行後插入:
  們可以看到沒有TD.文件和HTML中js的呼叫是差不多的,關於DTD文件具體如何寫,我們將在下一章和XML文件的語法一起介紹。
  以下我們來了解DTD有關的術語:
  1.Schema(規劃) 
  schema是資料規則的描述。 schema做兩件事:
  a.它定義元素資料型別與元素之間的關係;
  b.它定義元素所能包含的內容型別。
  DTD就是關於XML文檔的一個schema。
  2.Document Tree(文檔樹) 
  "文檔樹"在前面第二章我們已經提到過,它是文檔元素分級結構的形象表示。一個文檔結構樹包含根元素,根元素是最頂級的元素,(就是緊接著XML聲明語句後的第一個元素)。看範例:
  
   
  
  ...
 㟎  ...
 㟎  
  上面的例子分三級結構排列成"樹"狀,其中的就是根元素。在XML和DTD檔案中,第一個定義的都是根元素。
  3.Parent Element(父元素)/Child Element(子元素)
  父元素是指包含有其它元素的元素,被包含的元素稱為它的子元素。看上面的"結構樹",其中是父元素,,<author>是它的子元素,而<myfile>又是<filelist>的子元素。象<title>這樣沒有包含任何子元素的最後一級元素我們也稱之為"頁元素"。 <br>  4.Parser(解析軟體) <br>  Parser是一種檢查XML文件是否遵循DTD規範的工具軟體。 <br>  XML的parser發展為兩類:一種是"非確認類paeser",只檢測文檔是否遵守XML語法規則,是否用元素標識建立了文檔樹。另一種是"確認類paeser",它不但檢測文檔語法,結構樹,而且比較解析你使用的元素標識是否遵守了相應DTD文件的規範。 <br>  Parser能獨立使用,也可以成為編輯軟體或瀏覽器的一部分。在後面的相關資源清單裡,我列出了目前比較流行的一些parsers。 <br>  好了,透過第三章的學習,我們已經了解了一些XML和DTD的基本術語,但是我們還不知道怎樣來寫這些文件,需要遵循什麼樣的語法,在下一章,將重點介紹有關撰寫XML和DTD文檔的語法。請繼續瀏覽,謝謝!

第四章XML語法
  提綱:
  一.XML語法規則
  二.元素的語法
  三〔的語法🀜 二 〜〜〟〜〜〜.
  七.DTD的語法

  透過前面三章的學習,我們已經對什麼是XML,它的實現原理以及相關的術語有所了解。接下來我們就開始學習XML的語法規範,動手寫自己的XML文件。

  一.XML語法規則

  XML的文檔和HTML的原始程式碼類似,也是用識別來識別內容。建立XML文件必須遵守下列重要規則:

  規則1:必須有XML聲明語句

  這一點我們在上一章學習時已經提到過。聲明是XML文件的第一句,其格式如下:

   
  聲明的作用是告訴瀏覽器或者其它處理程序:這個文檔是XML文檔。聲明語句中的version表示文件遵守的XML規範的版本;standalone表示文件是否附帶DTD文件,如果有,參數為no;encoding表示文件所使用的語言編碼,預設為UTF-8。
  規則2:是否有DTD文件
  如果文檔是一個"有效的XML文檔"(見上一章),那麼文檔一定要有相應DTD文件,並且嚴格遵守DTD文件製定的規範。 DTD文件的聲明語句緊跟在XML聲明語句後面,格式如下:
  PUBLIC "dtd-name"> 
  其中:
  "!DOCTYPE"是指你要定義一個DOCTYPE;
  "type-of-doc"是文檔類型的名稱,由你自己定義,通常於DTD檔名相同;
  "SYSTEM/PUBLIC"這兩個參數只用其一。 SYSTEM是指文件所使用的私有DTD檔案的網址,而PUBLIC則指文件呼叫一個公用的DTD檔案的網址。
  "dtd-name" 就是DTD檔案的網址和名稱。所有DTD檔案的後綴名為".dtd"。
  我們還是用上面的例子,應該寫成這樣:
  
  " :注意你的大小寫
  在XML文件中,大小寫是有差別的。

是不同的標識。注意在寫入元素時,前後標識大小寫要保持一樣。例如:ajie,寫成ajie是錯誤的。
  你最好養成一種習慣,或者全部大寫,或者全部小寫,或者大寫第一個字母。這樣可以減少因為大小寫不符合所產生的文件錯誤。
  規則4:給屬性值加引號
  在HTML程式碼裡面,屬性值可以加引號,也可以不加。例如:wordword都可以被瀏覽器正確解釋。
  但是在XML中則規定,所有屬性值必須加引號(可以是單引號,也可以是雙引號),否則將被視為錯誤。
  規則5:所有的標識必須有對應的結束標識
  在HTML中,標識可能不是成對出現的,例如
。而在XML中規定,所有標識必須成對出現,有一個開始標識,就必須有一個結束標識。否則將被視為錯誤。
  規則6:所有的空標識也必須關閉
  空標識就是標識對之間沒有內容的標識。如
,XML輕鬆學習手冊等標識。在XML中,規定所有的標識必須有結束標識,針對這樣的空標識,XML中處理的方法是在原標識最後加/,就可以了。例如:
  
應寫成
;
  應寫成;
  XML輕鬆學習手冊應寫為XML輕鬆學習手冊

  二.元素的語法

  元素由一對標識以及其中的內容組成。就像這樣:ajie。元素的名稱和識別的名稱是一樣的。標識可以用屬性來進一步描述。
  在XML中,沒有任何保留字,所以你可以隨心所欲的用任何詞語來作為元素名稱。但也必須遵守下列規範:
  1.名稱中可以包含字母、數字以及其它字母;
  2.名稱不能以數字或"_" (下劃線)開頭;
  3.名稱不能以字母xml(或XML 或Xml)開頭;
  3.名稱不能以字母xml(或XML 或Xml ..)開頭
  4.名稱中不能包含空格
  5.名稱中間不能包含":"(冒號) 
  為了使元素更容易閱讀理解和操作,我們還有一些建議:
  1.名稱中不要使用" ."。因為在很多程式語言中,"."是作為物件的屬性,例如:font.color。同樣的原因"-"也最好不要用,必須使用的,以"_"代替;
  2.名稱盡量簡短。
  3.名稱的大小寫盡量採用相同標準。
  4.名稱可以使用非英文字符,例如用中文。但是有些軟體可能不支援。 (IE5目前是支援中文元素的。) 

  另外,補充一點關於屬性的說明。在HTML中,屬性可以用來定義元素的顯示格式,例如:word將把word顯示為紅色。而在XML中,屬性只是對標識的描述,與元素內容的顯示無關。例如同樣一句:word,並不會將word顯示為紅色。 (那麼,有網友會問:如何在XML中將文字顯示為紅色呢?這就需要使用CSS或者XSL,我們在下面詳細講述。)

  三.註釋的語法


  註釋是為了便於閱讀和理解註釋是為了方便,在XML文件中新增的附加信息,將不會被程式解釋或則瀏覽器顯示。
  註解的語法如下:
   
  可以看到,它和HTML中的註解語法是一樣的,非常容易。養成良好的註解習慣將使你的文件更加便於維護,共享,看起來也更專業。

  四.CDATA的語法


  CDATA全稱character data,翻譯為字元資料。我們在寫XML文件時,有時需要顯示字母,數字和其它的符號本身,例如"   
  例如:
  ajie

]]>〜  〟〟〟〠內容將是"ajie"

  五.Namespaces的語法

  Namespaces翻譯為名字空間。名字空間有什麼作用呢?當我們在一個XML文件中使用他人的或多個DTD文件,就會出現這樣的矛盾:因為XML中標識都是自己創建的,在不同的DTD文件中,標識名可能相同但表示的含義不同,這就可能引起數據混亂。
  例如在一個文件

sample
  3.
  4.samplar
  在XML文件中,上述幾種語句的語法都是錯誤的。因為:
  1.所有的標記都必須要有一個對應的結束標記;
  2.所有的XML標記都必須合理嵌套;
  3.所有XML標記都區分大小寫;
  4.所有標記的屬性必須必須標記所有標記的屬性;用""括起來;
  所以上列語句在XML中正確的寫法是
  1.

sample


  2.sample
  2.sample
  3.
sample
wood table
中表示桌子,
  而在另一個文件
namelist
中表示表格。如果我需要同時處理這兩個文檔,就會發生名字衝突。
  了解決這個問題,我們引進了namespaces這個概念​​。 namespaces透過為識別名稱加一個網址(URL)定位的方法來區分這些名稱相同的識別。
  Namespaces同樣需要在XML文件的開頭部分聲明,聲明的語法如下:
  
  其中yourname是由你定義的namespaces的名稱,URL就是名字空間的網址。
  假設上面的"桌子
"文件來自http://www.zhuozi.com,我們就可以宣告為
   
  的識別中使用定義好的名字空間:
  
wood table

  這樣就將這兩個區分開來。注意的是:設定URL並不是說這個標識真的要到那個網址去讀取,只是作為一種區別的標誌而已。

  六.entity的文法

  entity翻譯為"實體"。它的作用類似word中的"宏",也可以理解為DW中的摸板,你可以預先定義一個entity,然後在一個文檔中多次調用,或者在多個文檔中調用同一個entity。
  entity可以包含字符,文字等等,使用entity的好處在於:1.它可以減少差錯,文檔中多個相同的部分只需要輸入一遍就可以了。 2.它提高維護效率。例如你有40個文件都包含copyright的entity,如果需要修改這個copyright,不需要所有的文件都修改,只要改原先定義的entity語句就可以了。
  XML定義了兩種類型的entity。一種是我們在這裡說的普通entity,在XML文件中使用;另一種是參數entity,在DTD文件中使用。
  entity的定義語法為:
  
    ]🀎
    ]
  >
  如果我的版權信息內容和他人共享一個XML文件,也可以使用外部調用的方法,語法這樣:
。. SYSTEM "http://www.sample.com/copyright.xml"> 
  ]
  >
  定義好的entity在文件中的引用語法為:&entity-name;
  例如,在文件中定義的版權,以及上面定義時寫作的資訊,如,上面定義時寫的版權, :©right;
  完整的例子如下,你可以copy下來存為copyright.xml觀看實例:
  
  
  ]>
  
  XML
  ajie
  ajie@aolhoo.com
  20010115
  ©right;
  


  七.DTD的語法

  DTD是"XMLMLM.DTD的語法

  DTD是"XMLML"的文件,我們透過相互標識和DTD 。如何建立一個DTD檔呢?讓我們一起來學習:

  1.設定元素

  元素是XML文件的基本組成部分。你要在DTD中定義一個元素,然後在XML文件中使用。元素的定義語法為: 

  說明:
  "   聲明中的後面是一個元素;元素的名稱;
  "(#PCDATA, DEFINITION)*>"則是該元素的使用規則。規則定義了元素可以包含的內容以及相互的關係。下面的表格摘要列出了元素的規則:
  2.元素規則表:

包含文字和其它子元素MYFILE元素必須包含文字和TITLE子元素. )>MYFILE元素必須依序包含TITILE,AUTHOR,EMAIL三個子元素或EMAIL子元素name只能使用一次MYFILE元素必須包含TITLE子元素,而且只能使用一次。 name? 使用一次或不使用MYFILE元素必須包含TITLE子元素,而且只能使用一次;可以包含或不包含AUTHOR和EMAIL子元素,但是如果使用,只能一次。 name+使用至少一次或多次MYFILE元素必須包含TITLE子元素,而且使用至少一次;接下來可以跟隨AUTHOR不跟;最後必須包含EMAIL子元素,而且只能使用一次。 name*使用一次,多次,或完全不使用MYFILE元素可以包含一個,多個或不包含TITLE子元素MYFILE元素必須包含一些內容,內容或者是一個註釋;也或者是多個組,組裡包含:一個,多個或者沒有TITLE子元素,接著是一個或沒有AUTHOR子元素,再接著是一個必須的EMAIL子元素。

 另外,我們也可以為元素定義屬性,因為我們不建議使用屬性,在這裡就不詳細展開了。
  最後,我們來總結一些前四章學習的內容,寫一個包含DTD,XML,以及Script的簡單實例,便於讀者理解:
  1.將下面文件存為myfile.dtd
  
  
  
  2.然後建立XMLmyfile.xml:
  
  
  
  XML輕鬆學習手冊
  〜  〜>ajie 建立、〜〜〜. html
  
  
  
  在HTML中呼叫XML資料
  
  
   、〜、) title">

  作者:
  

  🀜  
  🀜 〜
  🀜 〕 IE5.0以上瀏覽器開啟myfile.html就可以看到效果了。
  好了,到今天第四章結束,我們對XML已經有了一些基本的了解。第五章我將為大家解釋一個XMl實際應用的成功例子,展現XML的強大功能。讓我們一起來看下一章:XML實例分析。

第五章:XML實例解析
  提綱:
  一:實例效果

  二:實例解析

  1.定義新識別。
  2.建立XML文件。
  3.建立對應的HTML檔。
  XML在不同領域有著廣泛的應用,例如在科技領域的MathML,無線通訊應用的WML,在網路圖象方面的SVG等等,我們這裡專注於XML在web上的應用。 XML在web上應用主要是利用其強大的資料操作能力。一般用XML配合javascript和asp等伺服器端程序,可以實現網路上幾乎所有的應用需求。
  考慮講解方便,我們在下面介紹一個簡單的實例,不包含伺服器端程式。目的在於讓您對XML的資料操作能力有一個感性的認識。
  好,我們首先[ 點擊這裡]來看實例的效果。 (請用IE5.0以上版本瀏覽器開啟) 
  這是一個簡單的CD唱片資料擷取功能。你透過點擊"上一張","下一張"可以看到單張CD的相關資訊。這樣的效果我們原來用兩種方法可以實現:
  1.利用DHTML,將資料隱藏在不同的層中,透過滑鼠事件依序顯示;
  2.利用後台程式(如ASP,CGI,PHP,JSP等) ,調用伺服器端的資料。
  但是在這個實例中,我們開啟頁面原始程式碼可以看到,其中沒有用DHTML的DIV,也沒有表單的action,它完全是用XML來實現的。下面我們來分析它的製作過程:

  第一步:定義新標誌。

  根據實際的CD數據,首先新建一個名為的標識;其次建立它相關的數據標識,分別是:CD名稱,演唱者<artist>,出版年代<year>,國家<country>,發行公司<company>和價格<price>;最後還要建立一個名為目錄<catalog>的標誌。為什麼要再建立一個<catalog>識別呢?因為在XML文件中規定,必須且只能有一個根元素(標識),我們有多個CD數據,這些數據是並列的關係,所以需要為這些並列的元素建立一個根元素。 <br>  以上元素的定義與關係都完全符合XML標準,不需要特別的DTD檔來定義,所以可以省略DTD定義。如果我們想要使用DTD來定義,上述過程可以表示為:<br>  <br>  <br>    總標題PCDATA)><br>  <br>  <br>  <br>!  PCDATA)><br>  這段程式碼表示:元素CATALOG包含多個CD子元素,而子元素CD又依序包含Title, Artist, Year, Country, Company, Price 六個子元素,它們的內容都定義為文字(字元,數字,文本)。 (註:具體的文法說明可以看上一章關於DTD的介紹)<br></catalog></catalog></price></company></country></year></artist>

  第二步:建立XML文件。

  

  
  
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque
  Empire Burlesque。 UNTRY><br> <company>Columbia</company><br>  <price>10.90</price><br>  <year>1985</year><br>  
ARTIST> Bonnie Tylor
  UK
  CBS Records
  9.90🀜＀、  㟜 48]
  Greatest Hits
  Dolly Parton
  USAICE 〜 〜 1982
  
  
  Still got the blues
  Gary More
  UK
  Virgin Eros Ramazzotti
  EU
  BMG
  9.90
  1997
  

  

  上面程式碼首先用聲明語句表明這是一個XML文檔,它的格式遵守XML 1.0標準規範。然後是文件內容,結構樹非常清楚:
  
  
  ...... 
  

  
  

  
  〟〜〜 >
  一共定義了5組數據。我們將上面的程式碼存為cd.xml文件,以備呼叫。

  第三步:建立對應的HTML檔。

  1.導入XML資料。
  我們知道,目前流行的瀏覽器中,暫時只有微軟的IE5.0以上版本瀏覽器支援XML。 IE是透過在HTML中的object物件來支援插入XML,並透過js的XMLDocument.load()方法來匯入資料。我們看代碼:
    CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39" ID="xmld">一個名為xmldso。然後在head區用js引入xml資料:
  
  2.捆綁資料。
  接著將用標識來將XML資料綁定在表格中。其中ID,DATASRC,DTATFLD都是的屬性。代碼如下:
  

Symbol 意義 舉例
#PCDATA 包含字元或文字資料 ATA, element-name

,
| 使用"|"表示或




設定組,可以巢狀 元素MYFILE包含一個或更多的文字或TITLE子元素。

   tr>
  
  
  
  
  
  
Title:
Artist:
Year:
Country :
Company:
Price:

  3.動作操作。
  最後,提供資料瀏覽按鈕:
  
  
  並利用js來完成兩個滑鼠點選功能:movenext()和moveprevious()。在head區加入以下程式碼:
  
  好,我們先看HTML文件的全部原程式碼:
  
  
  


   Artist:
Year:
   Country:
   Company: td>
   Price:
  
  


  
  
  

🎀  〜  〜〜 〜〜〜 〜 程式碼存為cd.htm文件,第二步的cd.xml文件放在一起。打開cd.htm文件,你就看見和上面實例一樣的效果了。
  好,到今天為止,我們已經學習了關於XML的不少知識,我們來總結一下前面五個章節,分別是XML快速入門,XML的概念原理,XML的術語,XML的語法和本章的實例解析。到這裡,教程部分就結束了。在寫作過程中,阿捷盡力將有關XML概念講得通俗易懂,盡量把自己的理解告訴給大家,但因為本人學習XML時間也不長,對整個XML的技術把握還不夠系統化和深入,所以難免有疏漏的地方,請大家指正和諒解,謝謝!
  在教程最後,附帶一章"XML的相關資源",提供了許多非常好的學習網站和資源連接,推薦您保存下來。請繼續瀏覽:XML的相關資源。

第六章:XML相關資源
  一. XML的大本營  二. XML指南

  三. XML常見問題
  四. XML〜〜〜、〜〜〜〜〜. . XML parser 
  八. Schema編輯軟體
  九. 國內XML資源

  一. XML的大本營

  XML是由國際3C(Wide Webs3C(Fide Webed)制定國際組織的標準開發。關於XML最權威,最新的消息都來自W3C。網址是:http://w3c.org/XML/ 
  另外一個名為OASIS的前著名的SGML研究組織也一起推動XML的發展,網址是:http://www.oasis-open.org/

  二. XML指南

  http://www.w3.org/TR/REC-xml 

  W3C關於XML規範的詳細,完整的說明。不用多說,絕對權威。
  http://www.xml.com/axml/testaxml.htm 

  這是Tim Bary寫的XML規範說明書,非常的詳細和嚴密,是學習XML規範的好幫手。

  Peter Flynn的XML FAQ 

  http://www.ucc.ie/xml/ 

     http://www.ucc.ie/xml/ 
  維持大量詳細的資料,
  Lisa Rein’s finetuning XML FAQs 
  http://www.finetuning.com/faq.html 

  這個FAQ列表有側重點,主要包含XSLT FAQ,XPath FAQ和IE5中的XSL FAQ。

  Dave Pawson’s XSL FAQ 

  http://www.dpawson.co.uk/xsl/idx.html 

  提供最好的關於XSL方面的FAQ,創建於1999年。
  jGuru's Extensible Markup Language (XML) FAQ 
  http://www.jguru.com/jguru/faq/faqpage.jsp?name=XML 
  這個普通問題清單是一個普通問題,從典型的老問題,從這個普通問題。的到非常細節的XML問題都可以在這裡找到。
  Ronald Bourret’s XML Namespaces FAQ 
  http://www.informatik.tu-darmstadt.de/DVS1/staff/bourret/xml/NamespacesFAQ.htm 
   初建立的摘要。

  四. XML主題網站

  http://www.xml.com/ 
    http://www.xml.com/ 
  一個以XML為主題的內容豐富的網站
  http://www.xml-zone.com/ 
  另一個比較知名的XML網站,提供XML的新聞和資訊。
  http://www.xmlinfo.com/ 
  網站創建者James Tauber’s是W3C組織XML發展組的成員之一,他的網站提供了大量的連結和範例。
  http://www.simonstl.com/ 
  網站創作者Simon St. Laurent也是XML發展組的成員。他是W3C中XML初級入門教學的作者,他的網站主要提供有關XML的發展資訊。
  http://msdn.microsoft.com/xml/c-frame.htm#/xml/default.asp 
  微軟的MSDN關於XML的主題網站。微軟在推動XML應用程式方面不遺餘力。
  http://www.xmlsoftware.com/ 
  是XML info的姊妹網站,內容包括XML/DTD/XSL編輯軟體,XML API軟體等。
  http://xmlhack.com/ 
  1999年9月建立的大型XML新聞網站,同時提供XML人才資訊。
  http://xml.apache.org/ 
  Apache軟體基金會(ASF),提供了大量open source的XML和XSL的工具軟體。
  http://www.biztalk.org/ 

  BizTalk是微軟發起的以XML商業應用為目標的組織。 BizTalk不是一個標準組織。

  五. XML的編輯軟體


  目前XML文件的編輯軟體依然很少。雖然我們可以手動編寫,但是如果有一個好的軟體(類似用DW/FP編寫HTML),可以減少差錯和提高效率。下面是現有的一些編輯軟體。
  http://www.macromedia.com/software/dreamweaver/ 
  Macromedia最新的Dreamweaver 4.0已經支援XML文件的撰寫。推薦使用。
  http://www.microsoft.com/xml/notepad/intro.asp 
  微軟在這方面向來不會落後,它推出的XML Notepad是一個非常小巧靈活的XML文件編輯器。推薦使用。
  http://www.adobe.com/prodindex/framemaker/prodinfosgml.html 
  Adobe公司的Framemaker plus是目前較好的XML編輯軟體。
  http://www.arbortext.com/ 
  Arbortext公司是專注於開發XML遊戲的公司。
  http://www.inso.com/ 
  Inso,好像是用來處理大型SGML或XML文件的軟體。
  http://www.softquad.com/ 

  Softquad 是HTML和SGML軟體的開發商,對XML自然不會放過。

  六. 支援XML的瀏覽器


  http://www.microsoft.com/windows/ie/ 
  IE 5.X是目前流行瀏覽器唯一支援XML的,它可以在微軟的網站免費下載到。
  http://developer.netscape.com/software/communicator/ngl/index.html?cp=dev09fg01 

  Gecko是另一個支援XML的瀏覽器,但目前只是測試版。

  七. XML parser


  Parser是一個檢查XML文檔語法是否符合DTD定義,並進行解析的軟體。
  線上的parser 
  http://validator.w3.org/ 
  W3C組織提供的一個線上paeser。可以根據你線上提交的XML文件URL,進行驗證和解吸。
  http://www.stg.brown.edu/service/xmlvalid/ 
  一個Brown大學科技小組提供的parser,非常方便和容易理解。 。
  可下載的Parser 
  有很多可以下載到本機上運行的parser,下面列出一些主要的:
  http://www.jclark.com/xml/expat.html 
   、領域是在SG的元老,他寫的parser被廣泛的運用。
  http://www.alphaworks.ibm.com/tech/xml 
  一個以Java語言寫的Parser,來自IBM。
  http://www.microsoft.com/xml/parser/cparser.asp 
  微軟的XML Parser,用C++寫成。
  http://www.stud.ifi.uio.no/~larsga/download/python/xml/xmlproc.html 
  用Python寫的parser。
  http://www.jeremie.com/Dev/XML/ 
  用Javascript寫的parser,只用來檢查文法,不進行解吸析。
  http://w3c.org/RDF/Implementations/SiRPAC/ 

  來自W3C組織的SiRPAC,全名為Simple RDF Parser and Compiler。

  八. Schema編輯軟體🎜

  Schema我們前面介紹過,DTD就是一種Schema,我們可以手工寫DTD,但現在已經有一些Schema編輯軟體來幫助我們更方便的建立DTD。
  http://www.extensibility.com/ 
  Extensibility這個軟體稱為XML權威。可以以圖形化方式建立和編輯schema,包括DTD檔。
  九. 國內XML資源
  http://www.xml.net.cn/ 
  XML中國論壇是一個非贏利的學術網站。由北京大學計算機科學與技術研究所創辦,北大方正集團公司提供贊助。
  http://www.xml.org.cn:8188 
  中國XML聯盟將建立為國內第一個開放性網路標準組織,提供XML技術認證、諮詢與交流。由上海易方公司贊助。
  http://www.xml.com.cn/ 
  chinaasp.com的子站,提供XML文章和技術交流等。
  http://www.egroups.com/group/china_xml_list/info.html 
  中國XML郵件群組包括中文XML資源, XML的最新資料,同行的交流空間。由非營利組織中國XML聯盟負責維護。
  http://weblab.crema.unimi.it/xmlzh/XML_FAQ.htm 
  一個XML FAQ郵件列表的中文翻譯,可惜是1998年10月的。
  -------------- 全文完-----------

 以上就是XML輕鬆學習手冊的內容,更多相關內容請關注PHP中文網(www .php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn