XSD我的数据类型

XSD我的数据类型,xsd,Xsd,我想问一下.XSD文档。我找不到有关创建自己类型的任何信息,例如: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:complexType name="Client"> <xs:sequence> <xs:element name="FirstName" type="string

我想问一下.XSD文档。我找不到有关创建自己类型的任何信息,例如:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:complexType name="Client">
        <xs:sequence>
            <xs:element name="FirstName" type="string"/>
            <xs:element name="SecondName" type="string"/>
    </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Contact">
        <xs:sequence>
            <xs:element name="contacts" type="Client"  minOccurs="1"/>
        </xs:sequence>
    </xs:complexType>   
</xsd:schema>


我想知道,这是定义我自己类型联系人的正确方法吗?

有几点不太正确

  • 关闭模式标记上的xsd:namespace别名应仅为xs:

  • 基本字符串类型需要有限定的类型,即xs:string

  • 从样式的角度来看,ComplexTypes应该是结束类型

  • 如果要使用模式(可能是通过联系人),则需要声明根元素



基本上,XML模式在没有工具的情况下是很复杂的。我会认真考虑找一个好的模式设计师,我建议。

看起来不错-我唯一要改变的是交换
联系人
联系人
元素名称,因为您的复杂类型是联系人列表,而您的
客户
类型的元素是单个联系人。非常感谢这是我第一次使用它,所以我不确定。
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid XML Studio 2012 Developer Edition (Trial) 10.0.1.3941 (http://www.liquid-technologies.com)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:complexType name="ClientType">
        <xs:sequence>
            <xs:element name="FirstName" type="xs:string" />
            <xs:element name="SecondName" type="xs:string" />
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ContactType">
        <xs:sequence>
            <xs:element name="contacts" type="ClientType" minOccurs="1" />
        </xs:sequence>
    </xs:complexType>
    <xs:element name="Client" type="ClientType" />
</xs:schema>