Elemento complexContent del esquema XML

Definición y uso

El elemento comprehensiveContent define la extensión o restricción de un tipo complejo (que contiene contenido mixto o solo elementos).

Información del elemento

Número de apariciones Una vez
Elemento padre complexType
Contenido

Opcional. anotación

Obligatorio. Debe haber y solo debe haber uno de los siguientes elementos: restricción (complexContent) o extensión (complexContent).

Gramática

<complexContent
id=ID
mezclado=true|false
cualquier atributos
>
(anotación?,(restricción|extensión))
</complexContent>

(? El símbolo de pregunta indica que el elemento puede aparecer cero o una vez dentro del elemento complexContent.)

Atributo Descripción
id Opcional. Define un ID único para este elemento.
mezclado Opcional. Define si se permite que los datos de caracteres aparezcan entre los subelementos de este elemento complexType. El valor predeterminado es false.
cualquier atributos Opcional. Define cualquier otra propiedad con espacio de nombres no esquemático.

Ejemplo

En el siguiente ejemplo, hay un tipo complejo "fullpersoninfo", que se deriva de otro tipo complejo "personinfo" mediante la extensión de tres elementos adicionales:

<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>

En el ejemplo anterior, el elemento "employee" debe contener en orden los siguientes elementos: "firstname", "lastname", "address", "city" y "country".