所有屬性被聲明為簡單類型。
什麼是屬性?
簡單的元素不能有屬性。 如果一個元素的屬性,它被認為是一個複雜類型。 但是屬性本身總是聲明為簡單的類型。
如何定義屬性?
定義屬性的語法是:
<xs:attribute name="xxx" type="yyy"/>
其中xxx是屬性的名稱,yyy指定屬性的數據類型。
XML模式有很多內置的數據類型。 最常見的類型是:
- XS:字符串
- XS:十進制
- XS:整數
- XS:布爾
- XS:日期
- XS:時間
例
下面是一個屬性的XML元素:
<lastname lang="EN">Smith</lastname>
這裡是corresponding的屬性定義:
<xs:attribute name="lang" type="xs:string"/>
默認值和修正值屬性
屬性可以具有默認值,或指定的固定值。
沒有指定其他值時,默認值就會自動分配給該屬性。
在下面的例子中,默認值為"EN"
<xs:attribute name="lang" type="xs:string" default="EN"/>
固定值也會自動分配給屬性,不能指定另一個值。
在下面的例子中,固定值"EN"
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
可選和必需的屬性
屬性默認都是可選的。 要指定屬性是必需的,使用"use"的屬性:
<xs:attribute name="lang" type="xs:string" use="required"/>
在內容限制
當XML元素或屬性具有定義的數據類型,它把在元件的或屬性的內容的限制。
如果一個XML元素的類型是"xs:date" ,並包含像串"Hello World"該元素不會驗證。
在XML Schema,你也可以添加自己的限制,以你的XML元素和屬性。 這些限制是所謂的方面。 您可以在下一章了解更多關於面。