標籤:style http color 使用 io strong ar for 檔案
今天學習了XSD相關的知識,為了以後尋找的方便,寫一些筆記。
一.什麼是XSD?
1.XSD全稱:XML Schema Definition.XML Schema 的作用是定義 XML 文檔的合法構建模組,類似 DTD。XML Schema:
- 定義可出現在文檔中的元素
- 定義可出現在文檔中的屬性
- 定義哪個元素是子項目
- 定義子項目的次序
- 定義子項目的數目
- 定義元素是否為空白,或者是否可包含文本
- 定義元素和屬性的資料類型
- 定義元素和屬性的預設值以及固定值
XML Schema 在 2001 年 5 月 2 日成為 W3C 標準。被認為是DTD的繼任者,因為:
- XML Schema 可針對未來的需求進行擴充
- XML Schema 更完善,功能更強大
- XML Schema 基於 XML 編寫
- XML Schema 支援資料類型
- XML Schema 支援命名空間
二.為何要使用XSD?
1.XML Schema 比 DTD 更強大。
2.XML Schema 支援資料類型XML Schema 最重要的能力之一就是對資料類型的支援。
通過對資料類型的支援:
- 可更容易地描述允許的文檔內容
- 可更容易地驗證資料的正確性
- 可更容易地與來自資料庫的資料一併工作
- 可更容易地定義資料約束(data facets)
- 可更容易地定義資料模型(或稱資料格式)
- 可更容易地在不同的資料類型間轉換資料
3.XML Schema 使用 XML 文法 另一個關於 XML Schema 的重要特性是,它們由 XML 編寫。
由 XML 編寫 XML Schema 有很多好處:
- 不必學習新的語言
- 可使用 XML 編輯器來編輯 Schema 檔案
- 可使用 XML 解析器來解析 Schema 檔案
- 可通過 XML DOM 來處理 Schema
- 可通過 XSLT 來轉換 Schema
4.可擴充 因為使用xml編寫,具有可擴充性。
5.保護資料通訊
當資料從發送方被發送到接受方時,其要點是雙方應有關於內容的相同的“期望值”。通過 XML Schema,發送方可以用一種接受方能夠明白的方式來描述資料。因為規定了其結構和資料類型。
三.如何使用XSD?
1.XML 文檔可對 DTD 或 XML Schema 進行引用。
一個簡單的 XML 文檔:
請看這個名為 "note.xml" 的 XML 文檔:
<?xml version="1.0"?><note><to>George</to><from>John</from><heading>Reminder</heading><body>Don‘t forget the meeting!</body></note>
下面這個例子是一個名為 "note.xsd" 的 XML Schema 檔案,它定義了上面那個 XML 文檔的元素:
<?xml version="1.0"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"targetNamespace="http://www.w3school.com.cn"xmlns="http://www.w3school.com.cn"elementFormDefault="qualified"> <xs:element name="note"> <xs:complexType> <xs:sequence><xs:element name="to" type="xs:string"/><xs:element name="from" type="xs:string"/><xs:element name="heading" type="xs:string"/><xs:element name="body" type="xs:string"/> </xs:sequence> </xs:complexType></xs:element> </xs:schema>
note 元素是一個複合類型,因為它包含其他的子項目。其他元素 (to, from, heading, body) 是簡易類型,因為它們沒有包含其他元素。
對 XML Schema 的引用
此檔案包含對 XML Schema 的引用:
<?xml version="1.0"?><notexmlns="http://www.w3school.com.cn"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.w3school.com.cn note.xsd"> <to>George</to><from>John</from><heading>Reminder</heading><body>Don‘t forget the meeting!</body></note>
XSD文檔編輯相關的知識:參考資源:http://www.w3school.com.cn/schema/schema_complex_elements.asp
XSD(XML Schema Definition)學習筆記