XSD 简单属性
-
定义和使用
简单元素不能具有属性;如果元素具有属性,则将其视为复杂类型。但是属性本身始终被声明为简单类型。定义属性的语法为:<xs:attribute name="xxx" type="yyy"/>
其中 xxx 是属性的名称,而 yyy 指定属性的数据类型。XML Schema 具有许多内置数据类型。 最常见的类型是:- xs:string
- xs:decimal
- xs:integer
- xs:boolean
- xs:date
- xs:time
这是带有属性的XML元素:<lastname lang="EN">Smith</lastname>
这是相应的属性定义:<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模式,还可以对XML元素和属性添加自己的限制。 这些限制称为构面。 您可以在下一章中阅读有关方面的更多信息。