Mafuta ya XSD

所有的属性均作为简易类型来声明。

什么是属性?

简易元素无法拥有属性。假如某个元素拥有属性,它就会被当作某种复合类型。但是属性本身总是作为简易类型被声明的。

如何声明属性?

定义属性的语法是:


在此处,xxx 指属性名称,yyy 则规定属性的数据类型。XML Schema 拥有很多内建的数据类型。

最常用的类型是:

  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

实例

这是带有属性的 XML 元素:

Smith

这是对应的属性定义:


属性的默认值和固定值

属性可拥有指定的默认值或固定值。

当没有其他的值被规定时,默认值就会自动分配给元素。

在下面的例子中,缺省值是 "EN":


固定值同样会自动分配给元素,并且您无法规定另外的值。

在下面的例子中,固定值是 "EN":


可选的和必需的属性

在缺省的情况下,属性是可选的。如需规定属性为必选,请使用 "use" 属性:


对内容的限定

当 XML 元素或属性拥有被定义的数据类型时,就会向元素或属性的内容添加限定。

Kamaanisha kamaelementi ya XML ni "xs:date", na matokeo yake ni msichana kama "Hello World", elementi halitafutika (kwa sababu) tukio.

通过 XML schema,您也可向您的 XML 元素及属性添加自己的限定。这些限定被称为 facet(编者注:意为(多面体的)面,可译为限定面)。您会在下一节了解到更多有关 facet 的知识。