欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

学习xsd 2

程序员文章站 2022-07-14 21:13:53
...
复杂类型是指定义元素中包含属性或者子元素的类型
1、只包含子元素的复杂类型
<xsd:element name="person">定义一个元素
   <xsd:complexType>它的类型是复杂类型
       <xsd:sequence>它包含以下两个简单类型的元素
          <xsd:element name="firstname" type="xsd:string"/>
          <xsd:element name="lastname" type="xsd:string"/>
       </xsd:sequence>
   </xsd:complexType>
</xsd:element>
2、只包含属性的复杂类型
<xsd:element name="person" type="prod"/>定义一个元素,它的类型是prod
<xsd:complexType name="prod">定义一个复杂类型,名字是prod
   <xsd:attribute name="prodid" type="xsd:positiveInteger">为它定义一个属性,类型是int
</xsd:complexType>
3、定义一个只包含内容和属性的复杂类型
<xsd:element name="" type="content"/>
<xsd:complexType name="content">
   <xsd:simpleContent>表示这个类型的元素下边不包含元素,只包含内容
      <xsd:extension base="xsd:integer">类型为integer的扩展
        <xsd:attribute name="country" type="xsd:string"/>有自己的属性country
      </xsd:extension>
   </xsd:simpleContent>
</xsd:complexType>
4、包含内容、属性和元素的复杂类型(以下这种将类型定义放在元素里的形式称为:匿名类型,只适合于此元素)
<xs:element name="letter">

<xs:complexType mixed="true">

    <xs:sequence>

      <xs:element name="name" type="xs:string"/>

      <xs:element name="orderid" type="xs:positiveInteger"/>

      <xs:element name="shipdate" type="xs:date"/>

    </xs:sequence>

</xs:complexType>

</xs:element>
相关标签: xml xsd