Diccionario Informático Ampliado

XML

En los orígenes existía un lenguaje orientado a documentos y conocido como SGML y otro, el HTML dimámico, que no solamente aportaba la parte de código a esos documentos para hacerlos útiles en Internet, sino que además aceptaba hojas de estilo, pequeños módulos de otros lenguajes o “scripts” y el modelo de objetos DOM.
El consorcio W3, no contento con lo que existía, comenzó a buscar un lenguaje de marcas, e IBM. Microsoft, Sun System, Hewllet Packard y Novell dieron a luz a finales del 97 a XML, y con él la facilidad de representar información en las redes.


¿Qué es XML?
Proviene su nombre de “Extensible Markup Language” y en sus inicios estaban las mayores empresas informáticas implicadas. La primera versión, la 1.0, apareció a finales de 1.997 y hoy es el lenguaje que cuenta con mayor introducción en aplicaciones de Internet. Pero no hay que imaginarlo como un lenguaje de programación, no lo es en absoluto, sólo sirve para representar datos, y por lo tanto precisa de los que sí son de programación para funcionar.
Tengo la seguridad de que con esta explicación ni el que la ha escrito se ha enterado. Veamos un ejemplo. Esto es un documento XML:

<?xml version="1.0"?>
<Libros>
<Libro><Titulo>Juicio universal</Titulo><Tema>Filosofía</Tema><Autor>Giovanni Papini</Autor><Editorial>Planeta</Editorial></Libro>
<Libro><Titulo>El crimen del padre Amaro</Titulo><Tema>Novela</Tema><Autor>José María Eça Queiroz</Autor><Editorial>Alianza Editorial</Editorial></Libro>
<Libro><Titulo>Programacion con Delphi 5</Titulo><Tema>Informatica</Tema><Autor>Francisco Charte Ojeda</Autor><Editorial>Anaya Multimedia</Editorial></Libro>
</Libros>

Estoy relativamente convencido, de que cualquiera que lo vea y no se fije, dirá que es HTML, y no... pero con un "no" suave, sin rotundidad, por que ambos han caminado de la mano, de tal forma que hace un par de años, el consorcio W3 publicó el XHTML, donde se adopta la sintaxis de XML, introduciendo modificaciones en las etiquetas, atributos, etc.
Uno de los factores importantes es la jerarquía de los “elementos”, entendiendo como tal cada sección de un documento.

Como se puede ver, hay un elemento “Libros” que es el “Raiz” del documento. Este tiene que ser único, pues es la base de la estructura, y debe llamarse igual que el documento que lo contiene. Este punto, como un perfecto anidamiento, es esencial para que pueda ser interpretado. Si al fichero anterior le quitase la última línea, rompiendo así la estructura lógica, y quisiera leerlo con el navegador (en este caso utilizo Netscape 6.0) provocaría un error, con el literal:

Error de análisis XML. No se encontró el elemento
Location: File: /GrupoAlbor/Sintesis/Numero10/libros.xml
Line number 6, Column 1: ^

También es obligatoria la primera línea que vemos, es decir, declarar el documento como que es XML. Tras ésta, que se denomina “Prólogo” y que puede tener también una declaración de tipo de documento, en la forma

<!DOCTYPE Libros (estructura, sintaxis, referencias al DTD)>

esta el cuerpo del documento, lo que se denomina “Instancia”.
La Definición de Tipo de Documento (DTD)
Con la declaración de la versión de XML y con la no obligatoria “DOCTYPE”, se forma lo que se conoce como declaración del tipo de documento, que no tiene nada que ver con la definición del mismo o DTD.
La DTD contiene reglas que debe de cumplir el documento. Así el fichero “Libros.xml” podía llevar incorporado una declaración de sus elementos, que sería algo como:

<!DOCTYPE Libros [
		<!ELEMENT Libros(Libro,Titulo,Tema,Autor,Editorial)>
		<!ELEMENT Titulo (#PCDATA)>
		<!ELEMENT  Tema (#PCDATA)>
		<!ELEMENT Autor (#PCDATA)>
		<!ELEMENT Editorial (#PCDATA)>
]>


Y a continuación incorporaría el resto del fichero. Esto si se tratase de una DTD interna. Pero no tiene por qué ser así, podemos tenerla como modelo para distintos documentos con igual estructura, y referirnos a ella en la sección DOCTYPE, con poner el nombre de qué se trate y tras la palabra SYSTEM la ruta donde se busca:

<!DOCTYPE elnombre SYSTEM “c:\xml\fichero.dtd”>

Y además hay otras que son públicas, donde habría que incluir un identificador del organismo al que pertenecen, el nombre del propierario antecedido por PUBLIC, a continuación la palabra DTD seguido de la descripción del texto y tras dos barras “//” el idioma ES, EN o el que sea.
Así podemos llamar a las primeras “internas” del documento, a las segundas “privadas” y a las terceras “públicas”.
En cuanto a qué se puede declarar en una DTD, cuatro cosas fundamentales:

- Elementos. Con la palabra ELEMENT.
- Listas de Atributos. Con la palabra ATTLIST.
- Entidades. Con la palabra ENTITY.
- Notaciones. Con la palabra NOTATION.

José Luis Freire
  El Rinconcito Informático: 25/06/2000 - (c) 2000 - 2008  | Creación y mantenimiento : José Luis Freire   | Se pretende poder utilizar cualquier navegador. Recomendado 1024x768