Saltar al contenido principal

Tipos de datos

Los tipos de datos son los diferentes valores que puede tomar el atributo type de un elemento XSD. Este atributo representa el tipo de dato que tendrá un elemento o atributo en el documento XML.

Supongamos que tenemos un elemento en un XML Schema como el siguiente:

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

La línea anterior está definiendo que en el documento XML a validar debe haber un elemento <numero> y que solo puede tener como contenido un número entero positivo. Es decir, el siguiente XML sería válido:

<numero>20</numero>

Todos los tipos de datos, cuando se utilizan en un elemento del XML Schema, deben ir junto con el prefijo del espacio de nombres. En nuestro caso, utilizamos xs:.

Clasificación de tipos de datos

El estándar de XML Schema divide los tipos de datos en dos grandes grupos:

  • Primitivos: no se definen a partir de otros tipos de datos.
  • Derivados: se definen a partir de otros tipos de datos.

En el siguiente diagrama creado por la W3C, se puede observar la jerarquía entre los diferentes tipos. Podemos apreciar que todos los tipos derivados son creados (derivados) a partir de dos tipos primitivos: string o decimal.

Tipos de datos personalizados

Tenemos dos posibilidades a la hora de definir un tipo de dato para un elemento o atributo:

  • Utilizar un tipo de dato predefinido, es decir, proporcionado por el estándar de XML Schema.
  • Utilizar un tipo de dato personalizado, es decir, definido por el programador o programadora. Este tipo de datos se deben definir previamente y se crean a partir de uno predefinido (de los que se muestran en el diagrama).

En los siguientes apartados se estudiarán algunos de valores del primer grupo, es decir, valores definidos en el estándar que puede tomar el atributo type de los elementos XSD.