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元素和属性添加自己的限制。 这些限制称为构面。 您可以在下一章中阅读有关方面的更多信息。