Publicidad

sábado, 8 de noviembre de 2008

PARSER

Parsers XML Versión: 1.0,

1. Introducción: Parser con validación y sin validación

Un parser o procesador o analizador sintáctico lee el documento XML y verifica que es XML bien formado , algunos también comprueban que el código XML sea válido.
El parser o procesador de XML es la herramienta principal de cualquier aplicación XML. Mediante el parser no solamente podemos comprobar si nuestros documentos son bien formados o válidos, sino que también podemos incorporarlos a nuestras aplicaciones, de manera que estas puedan manipular y trabajar con documentos XML.
Podemos dividir los parsers XML en dos grupos principales:

sin validación: el parser no valida el documento utilizando un DTD, sino que sólo chequea que el documento esté bien formado de acuerdo a las reglas de sintaxis de XML (sólo hay una etiqueta raíz, las etiquetas están cerradas, etc).

con validación: además de comprobar que el documento está bien formado según las reglas anteriores, comprueba el documento utilizando un DTD (ya sea interno o externo).

En el caso de utilizar un DTD, es preferible utilizar un parser con validación.

2. Parsers XML
Normalmente no nos tendremos que preocupar de buscar un parser concreto para comprobar la validez de nuestros documentos XML, ya que los desarrolladores de las aplicaciones que utilizaremos como navegadores o visualizadores o transformadores de esos documentos en el documento final que el usuario ve, incluirán sus propios parsers. Un ejemplo de esto es el caso del Microsoft Internet Explorer 5 (o superior), que utiliza el parser de MS (incluido en la librería MSXML.DLL); o el caso de Mozilla, que internamente utiliza el parser EXPAT (escrito en C).
A continuación teneis un parser sin validación escrito en JavaScript. Presenta el árbol del documento a comprobar.

EJEMPLO:


titulo

un parrafo
segundo parrafo
tercer parrafo





Ejercicio: tomando el programa anterior, ampliarlo de forma que se lleve a cabo un chequeo de errores para evitar que se definan elementos fuera de su sitio, esto es, una sección no puede estar definida dentro de un párrafo (por ejemplo).
Ejemplo:



Joaquín Sabina
SABINA Y CIA Nos sobran los motivos
MP3
Varios CD5

-->
3. Modelo de Objeto Documento (DOM)
Para extraer la información que contiene un documento XML, se podría escribir código para analizar el contenido del archivo XML, pues no deja de ser un archivo de texto, tal y como lo podríamos hacer con HTML. Sin embargo, esta solución no es muy aconsejable y desaprovecharía una de las ventajas de XML: el ser una forma estructurada de representar datos.
La mejor forma de recuperar información de archivos XML es utilizar un parser de XML, que sea compatible con el modelo de objeto de documento (DOM) de XML. DOM define un conjunto estándar de comandos que los parsers devuelven para facilitar el acceso al contenido de los documentos XML desde sus programas. Un analizador de XML compatible con DOM toma los datos de un documento XML y los expone mediante un conjunto de objetos que se pueden programar.
DOM para XML es un modelo de objetos estándar (propuesto por el W3C) que muestra el contenido de un documento XML. La Especificación del Modelo de Objeto de documento (DOM) del W3C define actualmente lo que debería mostrar un DOM como propiedades, métodos y eventos.

No hay comentarios: