Atributos y Tipos de Datos en XML Schema: Elementos Simples y Complejos

Informática3,58 KB

Propiedades de los Elementos en XML Schema

  • maxOccurs y minOccurs: determinan el número máximo y mínimo de veces que el elemento puede aparecer en un documento instancia; obviamente, sólo se aplican a atributos de elementos de tipo real.
  • name: especifica el nombre usado para referenciar un tipo de elemento tanto en el resto del esquema como en un documento instancia.

  • ref: hace referencia a un elemento global ya declarado. Es mutuamente excluyente con name.

    <xsd:element name="Nombre" type="xsd:string"/>
    <xsd:element ref="Nombre"/>
    <xsd:element name="color" type="xsd:string" default="red"/>
    <xsd:element name="color" type="xsd:string" fixed="red"/>

Elementos Complejos y Simples

Estructura de Elementos

Ejemplo de elemento complejo:

<xsd:element name="libro">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element name="titulo" type=""/>
    </xsd:sequence>
    <xsd:attribute name="precio" type=""/>
  </xsd:complexType>
</xsd:element>

Elementos "simples":

<xsd:element name="nombre" type="tipo"/>
<xsd:element name="nombre">
  <xsd:simpleType>infor</xsd:simpleType>
</xsd:simpleType>

Definir Tipos Simples por Lista

Atributos de control para listas:

  • value / length: indica que la lista tendrá un número exacto de valores.
  • minLength: indica que la lista tendrá un número mínimo de valores.
  • maxLength: indica que la lista tendrá un número máximo de valores.
  • enumeration: posibles valores que puede tener la lista.
  • whiteSpace: gestión de los espacios en blanco en cada elemento de la lista.
  • pattern: expresión regular que debe cumplir cada elemento de la lista.

Ejemplos de Listas

<xs:simpleType name="listaDecimales">
  <xs:list itemType="xs:decimal" />
</xs:simpleType>

<xs:simpleType name="listaNotas">
  <xs:restriction base="listaDecimales">
    <xs:minLength value="3" />
    <xs:maxLength value="6" />
  </xs:restriction>
</xs:simpleType>

Restricciones y Enumeraciones

Valores Mínimos y Máximos

  • minExclusive: establece un valor mínimo. El valor debe ser mayor que el establecido por la etiqueta a través del atributo value.
  • maxExclusive: establece un valor máximo. El valor debe ser menor que el establecido por la etiqueta a través del atributo value.

Enumeraciones

Las realiza una etiqueta llamada enumeration que sirve para indicar los posibles valores que puede tomar un componente. Por ejemplo:

<xs:simpleType name="diasSemanaTipo">
  <xs:restriction base="xs:string">
    <xs:whiteSpace value="collapse" />
    <xs:enumeration value="Lunes" />
    <xs:enumeration value="martes" />
  </xs:restriction>
</xs:simpleType>

Validación de Patrones (Ejemplo de DNI)

<xs:simpleType name="dniTipo">
  <xs:restriction base="xs:string">
    <xs:whiteSpace value="collapse" />
    <xs:pattern value="[0-9]{8}[A-Z]" />
  </xs:restriction>
</xs:simpleType>

Descargar

PDF Word HTML