Contenidos: DTD o XML Schema

  • Por
  • XML
Tecnologías XML relacionadas con los contenidos.
Un documento XML puede contener muchos tipos de información. Es decir, pueden haber muchos lenguajes escritos en XML para cualquier colectivo de usuarios. Por ejemplo,
  • Si lo utiliza el colectivo de médicos podría crear un lenguaje en XML específico para almacenar diagnósticos de los pacientes. Este lenguaje se podría llama PacientesML.
  • Si los distribuidores de películas utilizan XML podrán crear sus propios lenguajes para guardar la información de las películas. Este lenguaje se podría llamar PeliculasML.
  • Si estamos escribiendo aplicaciones para móviles podremos utilizar un lenguaje para aplicaciones inalámbricas (Wireless), que se llama WML.
Como vemos, se pueden crear infinitos lenguajes a partir del XML. Para especificar cada uno de los usos de XML, o lo que es lo mismo, para especificar cada uno de los sublenguajes que podemos crear a partir de XML, se utilizan unos lenguajes propios.

Son unos lenguajes que sirven para definir otros lenguajes, es decir, son metalenguajes. Los definen especificando qué etiquetas podemos o debemos encontrarnos en los documentos HTML, en qué orden, dentro de qué otras, además de especificar los atributos que pueden o deben tener cada una de las etiquetas.

Hay dos metalenguajes con los que definir los lenguajes que podemos obtener a partir de XML, el DTD y el XML Schema.

El DTD, Definition Type Document, tiene una sintaxis especial, distinta de la de XML, que es sencilla, aunque un poco rara si nunca hemos visto un documento similar.

Para evitar el DTD, que tiene una sintaxis muy especial, se intentó encontrar una manera de escribir en XML la definición de otro lenguaje XML. Se definió entonces el lenguaje XML Schema y funciona bien, aunque puede llegar a ser un poco más complicado que especificarlo en DTD. Simplemente nos ahorramos de aprender un nuevo lenguaje con su sintaxis particular.

Un detalle importante de señalar a la hora de hablar de los DTD o XML Schema es que estos lenguajes también permiten comprobar la integridad de los datos en cualquier momento. Se calcula que un 70% de las líneas de código que escribe un programador están orientadas a comprobar la integridad de los datos, es decir, comprobar si donde se supone que hay un número efectivamente lo hay, si el número es entero o cualquier otra comprobación. Nuestros metalenguajes de XML nos sirven para tomar un documento XML y comprobar que los datos que él incluye son válidos, comprobando si lo que tenemos en el XML concuerda con lo que tendríamos que tener. Eso lo podemos hacer al leer el documento, si no son validos se saca un mensaje de error y se detiene el proceso del documento. Si son válidos hacemos lo que toque sin tener que preocuparnos por la integridad de los datos.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir