1. 程式人生 > >瞭解XML文件,一篇足以

瞭解XML文件,一篇足以

1xml用途:用來傳輸和儲存資料。因為xml不能像HTML一樣描述頁面的排版及表現形式,只用於描述資料和其結構,因此在軟體開發中只要涉及資料的儲存,傳輸都可以考慮使用XML。

2 xml歷史:為了將SGML的豐富功能與HTML的易用性結合到WEB應用中,同時簡化SGML和HTML的複雜性,而設計的一種可擴充套件標記性語言(ExtensibleMarkup Language,xml)。

它以一種開發的、自我描述的方式定義了資料結構。

3 xml與HTML對比:HTML各種標記是已經規定好的,XML文件的規定是使用者自己規定的(需符合XML規範),這就是為什麼XML具有可擴充套件性。

HTML格式:<html>   <head>  <!--頭部--> </head>  <body> <!--內容部分--> </body>  </html> 

XML格式:<可擴充套件標記語言><題目>學習XML</題目><內容>你好,XML</內容></可擴充套件標記語言>

4 xml語法:

4.1 所有XML元素都必須有關閉標籤

<p>this is a paragraph</p>

4.2 XML標籤對大小寫敏感。

<Message> 這是錯誤的 </message>

<message>這是正確的 </message>

4.3 xml必須被巢狀

如在HTML中:<b><i>This text is bold and italic</b></i>

XML中必須被正確巢狀:<b><i>This text is bold and itatic </i> </b>

4.4 XML中必須有且只有一個根元素。

如:

<root>

       <child>

       <subchild>…….</subchild>

       </child>

</root>

4.4 XML的屬性值必須加引號。

<note date = “18/11/2018”>

       <to> George</to>

       <from> john </from>

       </note>

4.5 實體引用

       xml中一些字元擁有特定的意義,比如你將” < ”放在xml元素中,會發生錯誤,這是因為解析器會把他當作新元素開始。

<message> if salary < 1000  then </message><!--這是錯誤的,在內容中不能有”<”-->

<message> if salary &lt 1000  then </message><!—這是正確的,用實體引用替代”<”-->

4.6 xml註釋

<!—This is a comment –>

5 xmlDTD

       通過DTD可以很容易判斷要驗證的XML是否符合我們所定義的規範(元素之間的關係,屬性取值是否正確)。但是DTD不能驗證元素的內容,得通過---schema

6 xml 結構

6.1 xml 第一行  <?xml 版本資訊[編碼資訊][文件獨立性資訊]?>

<?xmlversion="1.0" encoding="gb2312"standalone="no"?>

<!DOCTYPEstudent SYSTEM "test.dtd">

<!--這是XML文件-->

<student>

         <name>張三</name>

         <age>24</age>

</student>

   版本說明前後都有問號,文件編碼宣告,比如utf-8,獨立文件宣告,如果不依賴於外部文件,可standalone="yes"來宣告這個文件是獨立的。

7 文件型別宣告(第2行)

         xml通過DTD來規範xml文件。文件型別宣告有兩種方式,一種是宣告DTD(Document Type Definition)在外部檔案中,另一種直接在XML文件中給出DTD。

8 元素

在XML中元素由開始標籤,元素內容和結束標籤構成。每一個元素都有一個用名字標誌的型別,同時它可以有一個屬性說明集,每個屬性有一個名字和一個值。