| « Descifrado el genoma de la abeja común europea | Portada | Un solo mililitro de agua del fondo marino puede contener hasta cientos de miles de millones de bacterias » |
26 octubre 2006
Parseando XML con Java (I)
XML es el acrónimo de eXtensible Markup Language (lenguaje de marcado ampliable o extensible). Es un lenguaje de etiquetas que se basa en documentos de texto plano en los que se utilizan etiquetas para delimitar los elementos de un documento. Es una versión simplificada de SGML, capaz de describir diversos tipos de datos. Su principal propósito es facilitar el intercambio de información. Son muchos los lenguajes basados en XML (por ejemplo, SVG, RDF, MathML, XSIL, ...). XML permite a las aplicaciones parsear el contenido del documento, pudiendo modificar y leer su contenido.
Podemos parsear un documento XML de dos modos: usando SAX o DOM. Podemos distinguir a grandes rasgos el funcionamiento de cada modo de parseo de la siguiente forma:
- DOM: DOM crea un árbol jerárquico en memoria que contiene el todo documento XML, y con él en memoria podemos hacer realizar cualquier tipo de recorrido, movimiento o acción con los elementos que deseemos.
- SAX: SAX significa Simple API for XML. Se usa para realizar un recorrido secuencial de los elementos del documento XML, es decir, vamos tratando la información a la vez que la vamos leyendo.
SAX es menos potente que DOM, pero aún así es más rápido y útil para los casos donde por ejemplo interesa hacer una lectura secuencial o buscar algún fragmento en un documento.
Para mostrar el funcionamiento de un parser de XML, crearemos una pequeña aplicación donde leeremos el contenido de un documento XML usando SAX y lo mostraremos en pantalla. Para escribir el programa usaremos Java, aún así lo podriamos hacer en cualquier otro C++, PHP, Python, ...
Nuestra aplicación parseará el siguiente documento XML de ejemplo, que se trata de una agenda que almacena el nombre y el número de teléfono de cada registro insertado.
< ?xml version="1.0"?>
<agenda>
<entrada id="1">
<nombre> Javier </nombre>
<telefono> 956425981 </telefono>
</entrada>
<entrada id="2">
<nombre> Fran </nombre>
<telefono> 645675431 </telefono>
</entrada>
<entrada id="3">
<nombre> Alfonso </nombre>
<telefono> 660137258 </telefono>
</entrada>
<entrada id="4">
<nombre> Manuel </nombre>
<telefono> 625435431 </telefono>
</entrada>
<entrada id="5">
<nombre> Paco </nombre>
<telefono> 630603804 </telefono>
</entrada>
</agenda>
Para parsear el documento usaremos JAXP y Xerces. JAXP (Java API for XML Processing) es un conjunto de clases que permite a las aplicaciones en Java parsear y transformar documento XML independientemente del modo de procesamiento utilizado. La razón de la existencia de JAXP es facilitar el uso de XML en la plataforma Java, garantizando que una aplicación escrita en Java orientanda hacia un parser con soporte JAXP puede ser migrado a otro sin ningún problema. Xerces es un parseador desarrollado por la fundacion Aparche.org disponible para Java y C++. Para escribir nuestro programa usaremos Xerces.
Mañana continuaremos con la segunda parte Parseando XML con Java (II) donde mostraré la implementación de las clases necesarias y subiré el código de fuente.
Más noticias sobre:
Programación
Tags: java, programación, xml
Comentarios (2)
| Trackback
Comentarios
¡¡¡Buen articulo, justo lo que andaba buscando!!!…
#1 | Escrito por Edgar Javier T. | 31 oct 2006 21:46:44
No es por mal meter, pero también existen otras maneras más potentes, pero también algo más complicadas para el usuario común, como JAXB. De todas formas, enhorabuena por el articulo, muy instructivo, os animo a que hagáis más.
#2 | Bababú | 09 nov 2006 03:18:04
Noticias relacionadas
14 diciembre 2007 | El Test de Turing y el día a día
16 agosto 2007 | El primer servidor integrado en chip
19 julio 2007 | Software para conocer la felicidad de las personas
19 abril 2007 | ¿Qué hace un bioinformático?
31 enero 2007 | Nuevo cemento que reduce la emisión de CO2 y mejora las prestaciones del cemento tradicional






