XML Schema complexContent 元素

  • 定义和使用

    complexContent 元素对仅包含混合内容或元素的复杂类型定义扩展或限制。
    父元素:complexType
  • 语法

    <complexContent
    id=ID
    mixed=true|false
    any attributes
    >
    
    (annotation?,(restriction|extension))
    
    </complexContent>
    (? 符号声明该元素可以在 complexContent 元素内出现零次或一次)
  • 参数

    属性 描述
    id 可选的。 指定元素的唯一ID
    mixed 可选的。指定是否允许在该 complexType 元素的子元素之间出现字符数据。 默认为 false
    any attributes 可选的。 用非模式命名空间指定任何其他属性
  • 示例

    以下示例具有一个复杂类型 “fullpersoninfo”,该类型通过从继承的类型扩展三个附加元素(地址,城市和国家/地区)而派生自另一个复杂类型 “personinfo”:
    <xs:element name="employee" type="fullpersoninfo"/>
    <xs:complexType name="personinfo">
      <xs:sequence>
        <xs:element name="firstname" type="xs:string"/>
        <xs:element name="lastname" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
    
    <xs:complexType name="fullpersoninfo">
      <xs:complexContent>
        <xs:extension base="personinfo">
          <xs:sequence>
            <xs:element name="address" type="xs:string"/>
            <xs:element name="city" type="xs:string"/>
            <xs:element name="country" type="xs:string"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    在上面的示例中,“employee” 元素必须依次包含以下元素:“firstname”,“lastname”,“address”,“city” 和 “country”。