所有的屬性均作為簡易類型來聲明。
什麼是屬性?
簡易元素無法擁有屬性。 假如某個元素擁有屬性, 它就會被當作某種複合類型。 但是屬性本身總是作為簡易類型被聲明的。
如何聲明屬性?
定義屬性的語法是
在此處, xxx 指屬性名稱, yyy 則規定屬性的資料類型。 XML Schema 擁有很多內建的資料類型。
最常用的類型是:
xs:string
xs:decimal
xs:integer
xs:boolean
xs:date
xs:time
實例
這是帶有屬性的 XML 元素:
這是對應的屬性定義:
屬性的預設值和固定值
屬性可擁有指定的預設值或固定值。
當沒有其他的值被規定時, 預設值就會自動分配給元素。
在下面的例子中, 缺省值是 "EN":
固定值同樣會自動分配給元素,
在下面的例子中, 固定值是 "EN":
可選的和必需的屬性
在缺省的情況下, 屬性是可選的。 如需規定屬性為必選, 請使用 "use" 屬性:
對內容的限定
當 XML 元素或屬性擁有被定義的資料類型時, 就會向元素或屬性的內容添加限定。
假如 XML 元素的類型是 "xs:date", 而其包含的內容是類似 "Hello World" 的字串, 元素將不會(通過)驗證。
通過 XML schema, 您也可向您的 XML 元素及屬性添加自己的限定。 這些限定被稱為 facet(編者注:意為(多面體的)面, 可譯為限定面)。 您會在下一節瞭解到更多有關 facet 的知識。