XSD簡介


XML Schema Definition,通常簡稱為XSD,是一種精確描述XML語言的方法。 XSD根據相應XML語言的語法規則檢查XML文件的結構和詞彙的有效性。

XML文件可以定義為 -

  • 格式良好 - 如果XML文件遵循所有常規XML規則,例如標記必須正確巢狀,則必須平衡開啟和關閉標記,空標記必須以/>結尾,那麼將其稱為格式良好。

  • 有效 - XML文件在不僅格式良好時被認為是有效的,但它也符合可用的XSD,它指定了它使用的標籤,這些標籤可以包含哪些屬性,以及哪些標籤可以出現在其他標籤中,以及其他標籤和屬性。

下圖顯示了如何使用XSD構建XML文件 -

下面是一個簡單的XSD程式碼 -

<?xml version = "1.0"?>

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
   targetNamespace = "https://www.tw511.com" 
   xmlns = "https://www.tw511.com"
   elementFormDefault = "qualified">

   <xs:element name = 'class'>
      <xs:complexType>
         <xs:sequence>
            <xs:element name = 'student' type = 'StudentType' minOccurs = '0' 
               maxOccurs = 'unbounded' />
         </xs:sequence>
      </xs:complexType>
   </xs:element>

   <xs:complexType name = "StudentType">
      <xs:sequence>
         <xs:element name = "firstname" type = "xs:string"/>
         <xs:element name = "lastname" type = "xs:string"/>
         <xs:element name = "nickname" type = "xs:string"/>
         <xs:element name = "marks" type = "xs:positiveInteger"/>
      </xs:sequence>
      <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
   </xs:complexType>

</xs:schema>

功能特徵

以下是XSD的一些流行功能特徵列表 -

  • XSD可以擴充套件以供將來新增。
  • XSD比DTD更豐富,更強大。
  • XSD是用XML編寫的。
  • XSD支援資料型別。
  • XSD支援名稱空間。
  • XSD是W3C的推薦。