Tutorial XML

INICIO XML Introducción XML XML Cómo utilizar Árbol XML Sintaxis XML Elementos XML Atributos XML Espacios de nombres XML Pantalla XML Solicitud Http XML Analizador XML DOM XML XPath XML XML XSLT XQuery XML Enlace X XML Validador XML DTD XML Esquema XML Servidor XML Ejemplos XML Cuestionario XML Certificado XML

XML-AJAX

AJAX Introducción AJAX XMLHttp Solicitud AJAX Respuesta AJAX Archivo XML AJAX AJAXPHP Ajax ASP Base de datos AJAX Aplicaciones AJAX Ejemplos de AJAX

DOM XML

DOM Introducción Nodos DOM Acceso DOM Información del nodo DOM Lista de nodos DOM Atravesando DOM Navegación DOM DOM obtener valores Nodos de cambio de DOM Eliminar nodos DOM Nodos de reemplazo de DOM DOM Crear nodos Agregar nodos DOM Nodos de clonación de DOM Ejemplos de DOM

Tutorial XPath

Introducción a XPath Nodos XPath Sintaxis XPath Ejes XPath Operadores XPath Ejemplos de XPath

Tutorial XSLT

XSLT Introducción Idiomas XSL Transformación XSLT XSLT <plantilla> XSLT <valor-de> XSLT <para-cada> XSLT <ordenar> XSLT <si> XSLT <elegir> Aplicar XSLT XSLT en el cliente XSLT en el servidor XSLT Editar XML Ejemplos de XSLT

Tutorial de XQuery

Introducción a XQuery Ejemplo de XQuery XQuery FLWOR XQuery HTML Términos de XQuery Sintaxis XQuery XQuery Agregar Seleccionar XQuery Funciones XQuery

DTD XML

Introducción a DTD Bloques de construcción DTD Elementos DTD Atributos DTD Elementos DTD vs Attr Entidades DTD Ejemplos de DTD

Esquema XSD

XSD Introducción XSD Cómo XSD <esquema> Elementos XSD Atributos XSD Restricciones XSD

Complejo XSD

Elementos XSD XSD vacío Solo elementos XSD Solo texto XSD XSD mixto Indicadores XSD XSD <cualquiera> XSD <cualquieratributo> Sustitución XSD Ejemplo XSD

Datos XSD

Cadena XSD Fecha XSD XSD Numérico Miscelánea XSD Referencia XSD

Servicios web

Servicios XML XML WSDL JABÓN XML XML RDF RSS XML

Referencias

Tipos de nodos DOM Nodo DOM Lista de nodos DOM DOM NamedNodeMap Documento DOM Elemento DOM Atributo DOM Texto DOM DOM CDATA Comentario DOM DOM XMLHttpSolicitud Analizador DOM Elementos XSLT Funciones XSLT/XPath

Atributos XSD


Todos los atributos se declaran como tipos simples.


¿Qué es un atributo?

Los elementos simples no pueden tener atributos. Si un elemento tiene atributos, se considera que es de tipo complejo. Pero el atributo en sí siempre se declara como un tipo simple.


¿Cómo definir un atributo?

La sintaxis para definir un atributo es:

<xs:attribute name="xxx" type="yyy"/>

donde xxx es el nombre del atributo y yyy especifica el tipo de datos del atributo.

XML Schema tiene muchos tipos de datos integrados. Los tipos más comunes son:

  • xs:cadena
  • xs: decimal
  • xs:entero
  • xs: booleano
  • xs:fecha
  • xs:tiempo

Ejemplo

Aquí hay un elemento XML con un atributo:

<lastname lang="EN">Smith</lastname>

Y aquí está la definición de atributo correspondiente:

<xs:attribute name="lang" type="xs:string"/>

Valores predeterminados y fijos para atributos

Los atributos pueden tener un valor predeterminado O un valor fijo especificado.

Un valor predeterminado se asigna automáticamente al atributo cuando no se especifica ningún otro valor.

En el siguiente ejemplo, el valor predeterminado es "EN":

<xs:attribute name="lang" type="xs:string" default="EN"/>

También se asigna automáticamente un valor fijo al atributo y no puede especificar otro valor.

En el siguiente ejemplo, el valor fijo es "EN":

<xs:attribute name="lang" type="xs:string" fixed="EN"/>


Atributos opcionales y obligatorios

Los atributos son opcionales por defecto. Para especificar que el atributo es obligatorio, utilice el atributo "use":

<xs:attribute name="lang" type="xs:string" use="required"/>

Restricciones sobre el contenido

Cuando un elemento o atributo XML tiene definido un tipo de datos, impone restricciones al contenido del elemento o atributo.

Si un elemento XML es del tipo "xs:date" y contiene una cadena como "Hello World", el elemento no se validará.

Con esquemas XML, también puede agregar sus propias restricciones a sus elementos y atributos XML. Estas restricciones se denominan facetas. Puede leer más sobre las facetas en el siguiente capítulo.