具有序列和属性的全局 ComplexType
此示例显示了 complexType 的简单全局定义。该定义被认为是全局的,因为它是 xs:schema 的子代。全局定义的类型可以在架构中的其他位置使用。
这是声明全局 xs:complexType 的最常见形式,它使用 xs:sequence,xs:choice 或 xs:all 定义子元素,并且还可以选择具有属性。
注意:因为它是全局定义的,所以它必须在模式集中具有唯一的名称。
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid Studio 2017 (https://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="PersonType">
<xs:sequence>
<xs:element name="Forename" type="xs:string" />
<xs:element name="Surname" type="xs:string" />
</xs:sequence>
<xs:attribute name="Gender">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="male" />
<xs:enumeration value="female" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:schema>